@charset "UTF-8";
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html { font-family: sans-serif; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }
a { background-color: transparent; }
a:active, a:hover { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
dfn { font-style: italic; }
h1 { margin: .67em 0; font-size: 2em; }
mark { color: #000; background: #ff0; }
small { font-size: 60%; }
sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; }
sup { top: -.5em; }
sub { bottom: -.25em; }
img { border: 0; }
svg:not(:root) { overflow: hidden; }
figure { margin: 1em 40px; }
hr { height: 0; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; }
pre { overflow: auto; }
code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; }
button, input, optgroup, select, textarea { margin: 0; font: inherit; color: inherit; }
button { overflow: visible; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { padding: 0; border: 0; }
input { line-height: normal; }
input[type="checkbox"], input[type="radio"] { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; }
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }
input[type="search"] { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; -webkit-appearance: textfield; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
fieldset { padding: .35em .625em .75em; margin: 0 2px; border: 1px solid #c0c0c0; }
legend { padding: 0; border: 0; }
textarea { overflow: auto; }
optgroup { font-weight: bold; }
table { border-spacing: 0; border-collapse: inherit; }
td, th { padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *, *:before, *:after { color: #000 !important; text-shadow: none !important; background: transparent !important; -webkit-box-shadow: none !important; box-shadow: none !important; }
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
  .navbar { display: none; }
  .btn > .caret, .dropup > .btn > .caret { border-top-color: #000 !important; }
  .label { border: 1px solid #000; }
  .table { border-collapse: collapse !important; }
  .table td, .table th { background-color: #fff !important; }
  .table-bordered th, .table-bordered td { border: 1px solid #ddd !important; }
}

/* ================================================== */
/* Common
/* ================================================== */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 10px;
  -webkit-tap-highlight-color: transparent; }

body {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, sans-serif;
  font-size: 16px;
  line-height: 1.42857;
  color: #2d2d2d;
  background: #fff;
}

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

a {
  color: #0000ee;
  text-decoration: underline;
}

a:hover,
a:focus {
  color: #551a8b;
  text-decoration: underline;
}

a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

address {
  margin: 0;
  padding: 0;
  font-style: normal;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

ul li {
  margin: 0;
  padding: 0;
}

iframe {
  border: 0;
}

/* ================================================== */
/* Global
/* ================================================== */
.container {
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  width: 1200px;
}
.container.ranking-detail{
  margin-top: 30px;
}
.container-wide {
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  width: 1260px;
}
.container:before,
.container:after,
.container-wide:before,
.container-wide:after {
  content: " ";
  display: table;
}
.container:after,
.container-wide:after {
  clear: both;
}
.section {
  margin: 0;
  padding: 0;
  width: 100%;
}

/* ================================================== */
/* Helper
/* ================================================== */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right { float: right !important; }
.pull-left { float: left !important; }
.hide { display: none !important; }
.show { display: block !important; }
.invisible { visibility: hidden; }
.inline-block { display: inline-block !important; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden { display: none !important; }
.affix { position: fixed; }
.text-right { text-align: right; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.nomargin { margin: 0 !important; }
.nopadding { padding: 0 !important; }

.spacing-5, .spacing-10, .spacing-15, .spacing-20, .spacing-25, .spacing-30, .spacing-35, .spacing-40, .spacing-45, .spacing-50 {
  margin: 0;
  padding: 0;
  width: 100%;
  clear: both; }

.spacing-5 { height: 5px; }
.spacing-10 { height: 10px; }
.spacing-15 { height: 15px; }
.spacing-20 { height: 20px; }
.spacing-25 { height: 25px; }
.spacing-30 { height: 30px; }
.spacing-35 { height: 35px; }
.spacing-40 { height: 40px; }
.spacing-45 { height: 45px; }
.spacing-50 { height: 50px; }

.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }

.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }

.fs_s { font-size:80%; }
.fs_ss { font-size:70%; }

.required {
  display: inline-block;
  margin: 0 0 0 10px;
  padding: 6px 8px;
  font-size: 14px;
  line-height: 1;
  background-color: #ff0006;
  color: #fff;
  vertical-align: top;
}

/* ================================================== */
/* Icon
/* ================================================== */
.icon {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.icon-arrow:after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 20px;
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  text-indent: -1em;
}
.icon-arrow-s:after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 7px;
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  text-indent: -1em;
}
.icon-traiangle {
  position: relative;
  width: 32px;
  height: 32px;
  border: 2px solid #fe9c51;
  background-color: #fff;
  border-radius: 50%;
}
.icon-traiangle:before {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -7px 0 0 -3px;
  padding: 0;
  border-left: 7px solid #fe9c51;
  border-right: 7px solid transparent;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
}
.icon-traiangle-s {
  position: relative;
  width: 14px;
  height: 14px;
  background-color: #fe9c51;
  border-radius: 50%;
}
.icon-traiangle-s:before {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -4px 0 0 -2px;
  padding: 0;
  border-left: 4px solid #fff;
  border-right: 4px solid transparent;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
}

/* ================================================== */
/* Form
/* ================================================== */
fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}
label {
  display: inline-block;
  margin-bottom: 5px;
  font-weight: bold;
}
button {
  margin: 0;
  padding: 0;
  border: none;
  background: none;
}
.inline-label {
  margin-right: 5px;
  font-weight: normal;
  text-align: right;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  /* IE8-9 */
  line-height: normal;
}

input[type="file"] {
  display: block;
}

select[multiple],
select[size] {
  height: auto;
}

select optgroup {
  font-size: inherit;
  font-style: inherit;
  font-family: inherit;
}

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  height: auto;
}

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.428571429;
  color: #555555;
}
.form-group {
  margin-bottom: 10px;
}
.form-control {
  display: block;
  margin: 0;
  padding: 6px 12px;
  width: 100%;
  height: 37px;
  font-size: 16px;
  line-height: 1.42857;
  border: 1px solid #b0b0b0;
  background-color: #fff;
  color: #000;
}
.form-control:focus {
  border-color: #333;
  outline: 0;
}
.form-control:-moz-placeholder {
  color: #999999;
}

.form-control::-moz-placeholder {
  color: #999999;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #999999;
}

.form-control::-webkit-input-placeholder {
  color: #999999;
}
textarea.form-control {
  height: auto;
  resize: vertical;
}
.radio,
.checkbox {
  display: block;
  min-height: 20px;
  margin-top: 5px;
  margin-bottom: 15px;
  padding-left: 20px;
}

.radio label,
.checkbox label {
  display: inline;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline label,
.checkbox-inline label {
  font-weight: normal;
  cursor: pointer;
}

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  float: left;
  margin-left: -20px;
}

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}

.radio-inline,
.checkbox-inline {
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}

.help-block {
  display: block;
  margin-top: 5px;
  font-size: 14px;
  color: #333;
}

.help-inline {
  display: inline;
  margin-left: 5px;
  font-size: 14px;
  color: #333;
}

/* ================================================== */
/* Table
/* ================================================== */
.table {
  margin: 0;
  padding: 0;
  width: 100%;
	border-top: 1px solid #aaa;
	border-left: 1px solid #aaa;
}
.table tbody tr th,
.table tbody tr td {
  margin: 0;
  padding: 20px 25px;
  text-align: left;
  border-right: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
}
.table-scroll {
  height: 300px;
  overflow-y: auto;
}
.table tbody tr th {
  margin: 0;
  width: 33.3333%;
  font-weight: normal;
  text-align: center;
  background-color: #f2f2f2;
}
.table tbody tr td.icon_value01{
  background: url(../img/tbl_icon_value01.png) no-repeat 20px center;
  background-size: 40px 40px;
  padding-left: 70px;
}
.table tbody tr td.icon_value02{
  background: url(../img/tbl_icon_value02.png) no-repeat 20px center;
  background-size: 40px 40px;
  padding-left: 70px;
}
.table tbody tr td.icon_value03{
  background: url(../img/tbl_icon_value03.png) no-repeat 20px center;
  background-size: 40px 40px;
  padding-left: 70px;
}
.table tbody tr td.icon_value04{
  background: url(../img/tbl_icon_value04.png) no-repeat 20px center;
  background-size: 40px 40px;
  padding-left: 70px;
}
.table dl {
  margin: 0;
  padding: 0;
  width: 100%;
}
.table dt {
  float: left;
  margin: 0;
  padding: 0;
  width: 90px;
}
.table dd {
  margin: 0 0 5px 90px;
  padding: 0;
}

/*------一覧表------*/

/*縦並び*/
.top-ranking-tbl {
  border-top: 3px solid #fe9c51;
  margin-bottom:30px;
}
.top-ranking-tbl thead th{
  text-align: center;
  width: 18%;
  padding: 20px 10px 0;
  box-sizing: border-box;
  border-right:#fe9c51 1px solid;
  font-weight:400;
  background-color: #fff;
}
.top-ranking-tbl thead th:first-child{
  width: 10%;
  background-color: #fe9c51;
  border:none;
}
.top-ranking-tbl tbody th{
  width: 10%;
  padding: 10px 5px;
  font-size: 19px;
  text-align: center;
  color: #FFFFFF;
  box-sizing: border-box;
  background-color: #fe9c51;
  border-bottom:#FFFFFF solid 1px;
  font-weight:400;
}
.top-ranking-tbl tbody td{
  padding: 10px 10px 10px;
  font-size: 16px;
  box-sizing: border-box;
  background-color: #fff;
  border-right:#fe9c51 1px solid;
  border-bottom:#fe9c51 1px solid;
  text-align: center;
  vertical-align: top;
}
.top-ranking-tbl tbody td:last-child,
.top-ranking-tbl thead th:last-child{
  border-right: 3px solid #fe9c51;
}
.top-ranking-tbl tbody tr:last-child td,
.top-ranking-tbl tbody tr:last-child th{
  border-bottom: 3px solid #fe9c51;
}
.top-ranking-tbl tbody td span {
  display:inline-block;
  text-align:left;
  margin:0 auto;
}
.top-ranking-tbl tbody td span.red {
  color: 	#FF0000;
  font-weight: bold;
}
.top-ranking-tbl tbody td b {
  color: 	#FF0000;
  font-weight: bold;
  background: linear-gradient(transparent 50%, #fff47d 0%);
}
.top-ranking-tbl tbody td img{
  margin: 5px auto 5px;
  max-width: 55%;
}
.top-ranking-tbl tbody td .cap-area{
  display: table;
  /*width: 140px;
  height: 150px;*/
}
.top-ranking-tbl tbody td .cap-area img{
  display: table-cell;
  vertical-align: middle;
  width:80%;
  border: 1px solid #ccc;
  box-sizing: border-box;
}
.top-ranking-tbl tbody td .name-area{
  margin-top: 10px;
}
/*
.top-ranking-tbl tbody td .name-area a{
  vertical-align: top;
  font-size:16px;
  font-weight: bold;
  color: #ff71a6;
}
.top-ranking-tbl tbody td .name-area a:hover{
  text-decoration: none;
}
*/

.top-ranking-tbl thead .cap-area p{
  position: relative;
  font-size: 15px;
  padding-top: 5px;
  margin: 0;
}
.top-ranking-tbl thead .cap-area p:before{
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  width: 16px;
  height: 16px;
  text-align: center;
  top: 0;
  left: 44%;
  margin-top: -8px;
  font-size: 14px;
}
.top-ranking-tbl thead .cap-area p.ranking-icon01:before{
  content: "";
  background:url(../img/icons/icon_table01.png) no-repeat;
  background-size: 100%;
}
.top-ranking-tbl thead .cap-area p.ranking-icon02:before{
  content: "";
  background:url(../img/icons/icon_table02.png) no-repeat;
  background-size: 100%;
}
.top-ranking-tbl thead .cap-area p.ranking-icon03:before{
  content: "";
  background:url(../img/icons/icon_table03.png) no-repeat;
  background-size: 100%;
}
.top-ranking-tbl thead .cap-area p.ranking-icon04:before,
.top-ranking-tbl thead .cap-area p.ranking-icon05:before,
.top-ranking-tbl thead .cap-area p.ranking-icon06:before,
.top-ranking-tbl thead .cap-area p.ranking-icon07:before,
.top-ranking-tbl thead .cap-area p.ranking-icon08:before,
.top-ranking-tbl thead .cap-area p.ranking-icon09:before,
.top-ranking-tbl thead .cap-area p.ranking-icon10:before{
  content: "";
  color: #cab2a5;
}

.top-ranking-tbl .middle {
vertical-align:middle;
}
.top-ranking-tbl .btn {
  padding: 10px 14px;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: 0;
  width: 100%;
  border: 2px solid #f74350;
  position: relative;
}
.top-ranking-tbl .btn.btn-third:hover,
.top-ranking-tbl .btn.btn-third:active{
  border: 2px solid #f74350;
  background-color: #fff;
  color: #f74350;
}
.top-ranking-tbl .btn.btn-third:hover:before,
.top-ranking-tbl .btn.btn-third:active:before{
  border-right: 1em solid #f74350;
}
.top-ranking-tbl em{
  font-style: normal;
}

/* ================================================== */
/* Button
/* ================================================== */
.btn {
  display: inline-block;
  margin: 0;
  padding: 10px 20px;
  font-size: 15px;
  line-height: 15px;
  font-weight: normal;
  text-align: center;
  text-decoration: none;
  border-radius: 6px;
  letter-spacing: 2px;
}
.btn:hover,
.btn:focus {
  text-decoration: none;
  color: #fff;
}
.btn .icon {
  margin-top: -2px;
  margin-left: 20px;
  vertical-align: middle;
}
.btn .icon.icon-arrow-s{
  margin-left: 10px;
}
.btn-primary {
  background-color: #0c87dc;
  box-shadow: 0 3px 0 #2072aa;
  color: #fff;
}
.btn-primary.hvr-button:hover {
  box-shadow: 0 0 0 #2072aa;
}
.btn-secondary {
  width: 450px;
  margin: 0 auto;
  background-color: #0c87dc;
  color: #fff;
  box-shadow: 0 3px 0 #2072aa;
  position: relative;
  display: block;
}
.btn-secondary span{
  position: relative;
}
.btn-secondary span:before{
  content: "\f521";
  font-family: "Font Awesome 5 Free";
  position: absolute;
  left: -40px;
  top: 50%;
  margin-top: -0.8em;
  font-weight: 900;
}
.btn-secondary:after{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.5em;
  font-weight: 900;
  font-size: 140%;
}
.btn-secondary:hover,
.btn-secondary:focus {
  color: #fff;
}
.btn-secondary.hvr-button:hover {
  box-shadow: 0 0 0 #2072aa;
}
.btn-third {
  background-color: #f74350;
  box-shadow: 0 3px 0 #a70c18;
  color: #fff;
}
.btn-third:hover {
  box-shadow: 0 0 0 #a70c18;
}
.btn-third.hvr-button:active {
  color: #fff;
}
.btn-third-lg {
  width: 570px !important;
}
.btn-primary-side{
  background-color: #fff;
  border: 1px solid #fe9c51;
  color: #fe9c51;
  border-radius: 0;
  position: relative;
  width: 100%;
  padding: 5px;
}
.btn-primary-side:hover{
  color: #fe9c51;
}
.btn-primary-side:after{
  content:"";
  width: 0;
  height: 0;
  position: absolute;
  bottom: 3px;
  right: 3px;
  border-left: 5px solid transparent;
  border-top: 5px solid transparent;
  border-right: 5px solid #fe9c51;
  border-bottom: 5px solid #fe9c51;
}
.btn-simple {
  background-color: #0c87dc;
  color: #fff;
}
.btn-simple:hover {
  background-color: #05a4a9;
  color: #fff;
}
.btn-sm {
  padding: 5px;
  font-size: 13px;
  line-height: 13px;
}
.btn-sm .icon {
  margin-left: 10px;
}
.btn-lg {
  padding: 20px 30px;
  font-size: 24px;
  line-height: 34px;
}
.hvr-button {
  -webkit-transition: color 0.1s, background-color 0.1s, box-shadow 0.1s -webkit-transform 0.1s;
  transition: color 0.1s, background-color 0.1s, box-shadow 0.1s, transform 0.1s;
}
.hvr-button:hover {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
}

@webkit-keyframes hvr-wobble-horizontal {
  16.65% { -webkit-transform: translateX(8px); transform: translateX(8px); }
  33.3% { -webkit-transform: translateX(-6px); transform: translateX(-6px); }
  49.95% { -webkit-transform: translateX(4px); transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px); transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px); transform: translateX(1px); }
  100% { -webkit-transform: translateX(0); transform: translateX(0); }
}
@keyframes hvr-wobble-horizontal {
  16.65% { -webkit-transform: translateX(8px); transform: translateX(8px); }
  33.3% { -webkit-transform: translateX(-6px); transform: translateX(-6px); }
  49.95% { -webkit-transform: translateX(4px); transform: translateX(4px); }
  66.6% { -webkit-transform: translateX(-2px); transform: translateX(-2px); }
  83.25% { -webkit-transform: translateX(1px); transform: translateX(1px); }
  100% { -webkit-transform: translateX(0); transform: translateX(0); }
}
.hvr-wobble-horizontal .icon {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}
.hvr-wobble-horizontal:hover .icon,
.hvr-wobble-horizontal:focus .icon,
.hvr-wobble-horizontal:active .icon {
  -webkit-animation-name: hvr-wobble-horizontal;
  animation-name: hvr-wobble-horizontal;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/* ================================================== */
/* Layout
/* ================================================== */

#header {
  z-index: 1000;
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  background-color:#fff;
  border-bottom: 6px solid #fe9c51;
  overflow: hidden;
}
#main {
  margin: 0;
  padding: 0 0 30px 0;
  width: 100%;
  background-color: #fff;
}
#main-content {
  margin: 0 auto;
}

/* ================================================== */
/* Header
/* ================================================== */
#header > .line-dashed {
  margin-bottom: 3px;
}
#header > .line-solid {
  background-color: #ffde8e;
  height: 6px;
}

.top-fixed {
  position: fixed !important;
}

.vgap {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  clear: both;
}

/* Navigation */
.navigation{
  padding: 0;
}
.navigation .container{
  width: 1200px;
  display: table;
}
.navigation .brand{
  width: 60%;
  display: table-cell;
  vertical-align: middle;
  margin: 0;
  padding: 10px 0;
  box-sizing: border-box;
}
.navigation .brand a {
  width: 375px;
  text-decoration: none;
  color: #484848;
  padding: 0;
  display: block;
  color: transparent;
}
.navigation .header-menu{
  width: 40%;
  display: table-cell;
  vertical-align: middle;
  margin: 0;
  padding: 0;
}
.navigation .header-menu ul {
  display: table;
  width: 100%;
  list-style: none;
  height: 80px;
}
.navigation .header-menu ul li{
  width: 25%;
  display: table-cell;
  vertical-align: middle;
}
.navigation .header-menu ul:before,
.navigation .header-menu ul:after {
  content: " ";
  display: table;
}
.navigation .header-menu ul:after {
  clear: both;
}
.navigation .header-menu ul li {
  display: table-cell;
  margin: 0;
  padding: 0 10px;
  text-align: center;
  border-right: 1px solid #ccc;
  vertical-align: middle;
}
.navigation .header-menu ul li:first-child {
  border-left: 1px solid #ccc;
}
.navigation .header-menu ul li a {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 13px;
  line-height: 1;
  text-decoration: none;
  color: #333;
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  position: relative;
  padding-top: 30px;
  color: #333;
}
.navigation .header-menu ul li a:before{
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  width: 30px;
  height: 30px;
  text-align: center;
  top: 0;
  left: 50%;
  margin-left: -15px;
  font-size: 24px;
  color: #fe9c51;
  font-weight: 900;
}
.navigation .header-menu ul li.home a:before{
  content: "\f015";
}
.navigation .header-menu ul li.ranking a:before{
  content: "\f521";
}
.navigation .header-menu ul li.hikaku a:before{
  content: "\f005";
}
.navigation .header-menu ul li.report a:before{
  content: "\f02d";
}
.navigation .header-menu ul li.report02 a:before{
  content: "\f0a6";
}
.navigation .header-menu ul li.taiken a:before{
  content: "\f075";
}
.navigation .header-menu ul li a:hover{
  color: #fe9c51;
}

/* ================================================== */
/* Footer
/* ================================================== */

#footer {
  margin: 0;
  padding: 0;
  width: 100%;
  background-color: #ffecf2;
}
#footer-main {
  margin: 0;
  padding: 20px 0 20px;
  font-size: 15px;
  width: 100%;
  background-color: #fff;
  border-top: 5px solid #fe9c51;
}
#footer-main .container{
  width: 1080px;
  margin: 0 auto;
  display: table;
}
#footer-main h3 {
  margin-bottom: 15px;
  font-weight: normal;
  text-align: left;
}
#footer-main h3 a {
  padding: 0.3em 0;
  color: #333;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#footer-main h3 a:before{
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 100%;
  color: #fe9c51;
  display: inline-block;
  vertical-align: middle;
  text-indent: -1em;
  font-weight: 900;
}
#footer-main h3 a:hover {
  border-bottom: 1px solid #fff;
}
#footer-main ul {
  float: left;
  width: 100%;
}
#footer-main ul li {
  float: left;
  margin-bottom: 10px;
  width: 100%;
}
#footer-main ul li a {
  text-decoration: none;
  color: #333;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
#footer-main ul li a:hover {
  text-decoration: underline;
}
#footer-main .block-first {
  vertical-align: top;
  display: table-cell;
  margin: 0;
  padding: 0 15px;
  width: 200px;
  box-sizing: border-box;
}
#footer-main .block-second {
  vertical-align: top;
  display: table-cell;
  margin: 0;
  padding: 0 15px;
  width: 250px;
  box-sizing: border-box;
}
#footer-main .block-third {
  vertical-align: top;
  display: table-cell;
  margin: 0;
  padding: 0 15px;
  width: 630px;
  box-sizing: border-box;
  overflow: hidden;
}
#footer-main .block-third > div {
  float: left;
  width: 50%;
  box-sizing: border-box;
  padding-right: 30px;
}
/* Copyright */
#footer-bottom {
  margin: 0;
  padding: 10px 0;
  text-align: center;
  width: 100%;
  color: #fff;
  font-size: 15px;
  background-color: #fe9c51;
}
#footer-bottom a {
  color: #fff;
  text-decoration: none;
  cursor: text;
}

/* ================================================== */
/* Key visual
/* ================================================== */
#key-visual {
  position: relative;
  margin: 0 auto 30px;
  padding: 0;
  height: 500px; /* Adjust the htight of the key visual */
  background: url(../img/key_visual.png) no-repeat center top;
}
#key-visual:before,
#key-visual:after {
  content: " ";
  display: table;
}
#key-visual:after {
  clear: both;
}
#key-visual h2.nodisplay {
  display: none;
}
#key-visual img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
#ranking-key-visual {
  position: relative;
  padding: 0;
  margin: 0 auto 30px;
  height: 326px; /* Adjust the htight of the key visual */
  background:url(../img/ranking_title.png) no-repeat center top;
}
#ranking-key-visual .ranking_title_more {
  width: 1200px;
  height: 326px;
  margin: 0 auto;
  position: relative;
}
#ranking-key-visual .ranking_title_more a{
  position: absolute;
  bottom: -10px;
  right: -50px;
  display: block;
}
#ranking-key-visual .ranking_title_more a:hover{
  opacity: 0.7;
}
#table-key-visual {
  position: relative;
  width: 100%;
  margin: 0 auto 30px;
  padding: 0;
  height: 326px; /* Adjust the htight of the key visual */
  background: #022876 url(../img/table_title.png) no-repeat center top;
}
#table-key-visual h2.nodisplay {
  display: none;
}
/* ================================================== */
/* Content layout
/* ================================================== */
.content {
  float: left;
  margin: 0;
  padding: 0;
  width: 970px;
}

.sidebar {
  float: right;
  margin: 0;
  padding: 0;
  width: 215px;
}

/* ================================================== */
/* Widget
/* ================================================== */
.widget {
  margin: 0 0 20px;
  padding: 0;
}
.widget:before,
.widget:after {
  content: " ";
  display: table;
}
.widget:after {
  clear: both;
}
.widget.ranking-list{
  padding: 5px;
  background-color: #fff;
}
.widget h3 {
  margin: 0;
  padding: 0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 2px;
}

.widget .sidebar-title a {
  display: block;
  border-top: 3px solid #fe9c51;
  border-bottom: 3px solid #fe9c51;
  text-decoration: none;
  color: #fe9c51;
  padding: 15px 0;
  font-weight: bold;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.widget .sidebar-title a:hover {
  display: block;
  text-decoration: none;
  opacity: 0.7;
}
.widget .line-slash{
  display: none;
}

/* ================================================== */
/* Component
/* ================================================== */

/* Line dashed */
.line-dashed {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 1px;
  clear: both;
  background-image: -moz-linear-gradient(left, #fff, #fff 70%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%);
  background-image: -o-linear-gradient(left, #fff, #fff 70%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%);
  background-image: -webkit-linear-gradient(left, #fff, #fff 70%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%);
  background-image: linear-gradient(to right, #fff, #fff 70%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%);
  background-size: 7px 7px;
}

/* Line slash */
.line-slash {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 4px;
  clear: both;
  background-image: -webkit-linear-gradient(160deg, #7b7b7b 65%, #d3d3d3 35%);
  background-image: -moz-linear-gradient(160deg, #7b7b7b 65%, #d3d3d3 35%);
  background-image: -o-linear-gradient(160deg, #7b7b7b 65%, #d3d3d3 35%);
  background-image: linear-gradient(160deg, #7b7b7b 65%, #d3d3d3 35%);
}

/* Line half */
.line-half {
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 4px;
  background-color: #ffd4e4;
}
.line-half span {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  width: 440px;
  height: 4px;
  background-color: #fe9c51;
}

/* List arrow */
.list-arrow:before,
.list-arrow:after {
  content: " ";
  display: none;
}
.list-arrow:after {
  clear: both;
}

/* Banner ranking */
.banner-ranking {
  margin: 0;
  padding: 0;
}
.banner-ranking a {
  display: block;
  margin: 0;
  background-color: #fff;
}
.banner-ranking a img {
  width: 100%;
}

/* Sidebar item list */
.sidebar-item-list {
  margin: 0;
  padding: 0 5px;
}
.sidebar-item-list dl {
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
}

.sidebar-item-list dt{
  text-align: center;

}
.sidebar-item-list dt .ranking-icon{
  margin: 0;
  padding: 0 5px 0 0;
  width: 75px;
  display: inline-block;
}
.sidebar-item-list dt img {
  width: 50px;
}
.sidebar-item-list dd {
  margin: 0 auto;
  padding: 0;
  text-align: center;
}

.sidebar-item-list dd h4 {
  margin: 5px auto;
  padding: 0;
  font-size: 15px;
  font-weight: bold;
}
.sidebar-item-list dd h4 a{
  color: #333;
  text-decoration: none;
}
.sidebar-item-list dd a img{
    /*border: 2px solid #030303;*/
    width: 80%;
    height: 80%;
    box-sizing: border-box;
    margin: 0 0 10px;
/*    object-fit: cover;
    object-position: 50% 50%;*/
}
.sidebar-item-list dd p {
  margin: 10px 0 10px 0;
  padding: 0;
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  display: none;
}
.sidebar-item-list dd a{
  width: 100%;
}
.sidebar-item-list dd a:hover{
  opacity: 0.5;
}

/* Report box */
.sidebar-report-box {
  margin: 0;
  padding: 0 0 10px 0;
  width: 100%;
  border: 5px solid #fe9c51;
  background-color: #faf8f1;
  border-radius: 6px;
}
.sidebar-report-box h3 {
  position: relative;
  margin: 0 0 20px 0;
  padding: 17px 0;
  width: 100%;
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  color: #784a19;
  background-color: #fff;
  letter-spacing: 0px;
  border-bottom: 2px solid #fe9c51;
}
.sidebar-report-box h3 a {
  text-decoration: none;
  color: #e76a0a;
}
.sidebar-report-box h3 a:hover {
  text-decoration: underline;
}
.sidebar-report-box ul {
  margin: 0 10px;
  padding: 0;
  list-style: none;
}
.sidebar-report-box ul li {
  margin: 0 0 14px 0;
  padding: 0 5px 14px 5px;
  width: 100%;
  border-bottom: 1px dotted #fe9c51;
}
.sidebar-report-box ul li:last-child {
  margin-bottom: 0;
  border: none;
}
.sidebar-report-box ul li .icon {
  float: left;
  margin-top: 2px;
}
.sidebar-report-box ul li a {
  display: block;
  margin: 0 0 0 24px;
  padding: 0;
  font-size: 13px;
  font-weight: normal;
  color: #484848;
  text-decoration: none;
}
.sidebar-report-box ul li a:hover {
  text-decoration: underline;
}
.sidebar-report-box .title-label .title {
  display: block;
  margin-left: 45px;
}
.sidebar-report-box .title-label .label {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  top: 12px;
  left: 10px;
  width: 45px;
  height: 45px;
  font-size: 12px;
  line-height: 47px;
  font-weight: normal;
  background-color: #fe9c51;
  color: #fff;
  border-radius: 50%;
  letter-spacing: 0px;
}

/* Report box imgver */
.sidebar-report-box-imgver {
  margin: 0;
  padding: 0 0 10px 0;
  width: 100%;
  border: 5px solid #fe9c51;
  background-color: #faf8f1;
  border-radius: 6px;
}
.sidebar-report-box-imgver h3 {
  position: relative;
  margin: 0 0 20px 0;
  padding: 17px 0;
  width: 100%;
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  color: #784a19;
  background-color: #fff;
  letter-spacing: 0px;
}
.sidebar-report-box-imgver h3 a {
  text-decoration: none;
  color: #484848;
}
.sidebar-report-box-imgver h3 a:hover {
  text-decoration: underline;
}
.sidebar-report-box-imgver ul {
  margin: 0 10px;
  padding: 0;
  list-style: none;
}
.sidebar-report-box-imgver ul li,
.sidebar-report-box-imgver ul li{
  height: 60px;
  display: table;
}
.sidebar-report-box-imgver ul li img{
  height: auto;
  display: table-cell;
  vertical-align: middle;
}
.sidebar-report-box-imgver ul li span{
  width: 55%;
  display: table-cell;
  padding-left: 10px;
  vertical-align: middle;
}
.sidebar-report-box-imgver ul.side-nav-report01 li:nth-child(1n):before{
  content: "";
  background
}
.sidebar-report-box-imgver ul li {
  margin: 0 0 14px 0;
  padding: 0 5px 14px 5px;
  width: 100%;
  border-bottom: 1px dotted #784a19;
}
.sidebar-report-box-imgver ul li:last-child {
  margin-bottom: 0;
  border: none;
}
.sidebar-report-box-imgver ul li .icon {
  float: left;
  margin-top: 2px;
}
.sidebar-report-box-imgver ul li a {
  display: table;
  margin: 0;
  padding: 0;
  font-size: 13px;
  font-weight: normal;
  color: #484848;
  text-decoration: none;
}
.sidebar-report-box-imgver ul li a:hover {
  text-decoration: underline;
}
.sidebar-report-box-imgver .title-label .title {
  display: block;
  margin-left: 45px;
}
.sidebar-report-box-imgver .title-label .label {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  top: 12px;
  left: 10px;
  width: 45px;
  height: 45px;
  font-size: 12px;
  line-height: 47px;
  font-weight: normal;
  background-color: #f73065;
  color: #fff;
  border-radius: 50%;
  letter-spacing: 0px;
}

/* rating */
/*.rating {
  color: transparent;
  display: inline-block;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  position: relative;
  vertical-align: middle;
}
.rating:before,
.rating:after {
  content: attr(data-star);
  font-size: 16px;
  line-height: 1;
  pointer-events: none;
  text-align: left;
  white-space: nowrap;
}
.rating:before {
  content: attr(data-star-bg);
  display: block;
  color: #fe7200;
  color: rgba(254,114,0,1);
}
.rating:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  overflow: hidden;
  color: #fe7200;
  color: rgba(254,114,0,1);
}*/
.rating{
  color: #ffaa0b;
}
.rating[data-rating="10"]:after { width: 10%; } /* 0.5 */
.rating[data-rating="20"]:after { width: 20%; } /* 1 */
.rating[data-rating="30"]:after { width: 30%; } /* 1.5 */
.rating[data-rating="40"]:after { width: 40%; } /* 2 */
.rating[data-rating="50"]:after { width: 50%; } /* 2.5 */
.rating[data-rating="60"]:after { width: 60%; } /* 3 */
.rating[data-rating="70"]:after { width: 70%; } /* 3.5 */
.rating[data-rating="80"]:after { width: 80%; } /* 4 */
.rating[data-rating="90"]:after { width: 90%; } /* 4.5 */
.rating[data-rating="100"]:after { width: 100%; } /* 5 */

/* ================================================== */
/* Back to top
/* ================================================== */
.back-to-top {
  position: fixed;
  margin: 0;
  padding: 0;
  bottom: 40px;
  right: 40px;
  width: 60px;
  height: 50px;
  background: #484848 url(../img/back_to_top.png) no-repeat 0 0;
  border-radius: 4px;
  z-index: 100;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.5s ease;
  opacity: 0;
}
.back-to-top.active {
  opacity: 1;
}

/* ================================================== */
/* Custom scrollbar
/* ================================================== */

/* basic style */
.mCustomScrollbar{ -ms-touch-action: pinch-zoom; touch-action: pinch-zoom; /* direct pointer events to js */ }
.mCustomScrollbar.mCS_no_scrollbar, .mCustomScrollbar.mCS_touch_action{ -ms-touch-action: auto; touch-action: auto; }
.mCustomScrollBox{ /* contains plugin's markup */
  position: relative;
  overflow: hidden;
  height: 100%;
  max-width: 100%;
  outline: none;
  direction: ltr;
}
.mCSB_container{ /* contains the original content */
  overflow: hidden;
  width: auto;
  height: auto;
}
/* vertical scrollbar */
.mCSB_inside > .mCSB_container{ margin-right: 30px; }
.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{ margin-right: 0; } /* non-visible scrollbar */
.mCS-dir-rtl > .mCSB_inside > .mCSB_container{ /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px;
}
.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden{ margin-left: 0; } /* RTL direction/left-side scrollbar */
.mCSB_scrollTools{ /* contains scrollbar markup (draggable element, dragger rail, buttons etc.) */
  position: absolute;
  width: 16px;
  height: auto;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0;
}
.mCSB_outside + .mCSB_scrollTools{ right: -26px; } /* scrollbar position: outside */
.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools,
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools{ /* RTL direction/left-side scrollbar */
  right: auto;
  left: 0;
}
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools{ left: -26px; } /* RTL direction/left-side scrollbar (scrollbar position: outside) */
.mCSB_scrollTools .mCSB_draggerContainer{ /* contains the draggable element and dragger rail markup */
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto;
}
.mCSB_scrollTools a + .mCSB_draggerContainer{ margin: 20px 0; }
.mCSB_scrollTools .mCSB_draggerRail{
  width: 20px;
  height: 100%;
  margin: 0 auto;
}
.mCSB_scrollTools .mCSB_dragger{ /* the draggable element */
  cursor: pointer;
  width: 100%;
  height: 30px; /* minimum dragger height */
  z-index: 1;
}
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{ /* the dragger element */
  position: relative;
  width: 20px;
  height: 100%;
  margin: 0 auto;
  text-align: center;
}
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar{ width: 12px; /* auto-expanded scrollbar */ }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail{ width: 8px; /* auto-expanded scrollbar */ }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown{
  display: block;
  position: absolute;
  height: 20px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer;
}
.mCSB_scrollTools .mCSB_buttonDown{ bottom: 0; }
/* transitions */
.mCSB_scrollTools,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight{
  -webkit-transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
  -moz-transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
  -o-transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
}

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar, /* auto-expanded scrollbar */
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail{
  -webkit-transition: width .2s ease-out .2s, height .2s ease-out .2s,
  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,
  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s,
  opacity .2s ease-in-out, background-color .2s ease-in-out;
  -moz-transition: width .2s ease-out .2s, height .2s ease-out .2s,
  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,
  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s,
  opacity .2s ease-in-out, background-color .2s ease-in-out;
  -o-transition: width .2s ease-out .2s, height .2s ease-out .2s,
  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,
  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s,
  opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: width .2s ease-out .2s, height .2s ease-out .2s,
  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,
  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s,
  opacity .2s ease-in-out, background-color .2s ease-in-out;
}
/* scrollbar colors, opacity and backgrounds */
	.mCSB_scrollTools{ opacity: 0.75; filter: "alpha(opacity=75)"; -ms-filter: "alpha(opacity=75)"; }

	.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools,
	.mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools{ opacity: 0; filter: "alpha(opacity=0)"; -ms-filter: "alpha(opacity=0)"; }

	.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
	.mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
	.mCustomScrollBox:hover > .mCSB_scrollTools,
	.mCustomScrollBox:hover ~ .mCSB_scrollTools,
	.mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
	.mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools{ opacity: 1; filter: "alpha(opacity=100)"; -ms-filter: "alpha(opacity=100)"; }

	.mCSB_scrollTools .mCSB_draggerRail{
		background-color: #000; background-color: rgba(0,0,0,0.15);
		filter: "alpha(opacity=15)"; -ms-filter: "alpha(opacity=15)";
	}

	.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{
		background-color: #000; background-color: rgba(0,0,0,0.45);
		filter: "alpha(opacity=45)"; -ms-filter: "alpha(opacity=45)";
	}

	.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{
		background-color: #fe9c51;
		filter: "alpha(opacity=55)"; -ms-filter: "alpha(opacity=55)";
	}
	.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
	.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar{
		background-color: #fe9c51;
		filter: "alpha(opacity=70)"; -ms-filter: "alpha(opacity=70)";
	}

	.mCSB_scrollTools .mCSB_buttonUp,
	.mCSB_scrollTools .mCSB_buttonDown,
	.mCSB_scrollTools .mCSB_buttonLeft,
	.mCSB_scrollTools .mCSB_buttonRight{
		background-image: url(mCSB_buttons.png); /* css sprites */
		background-repeat: no-repeat;
		opacity: 0.4; filter: "alpha(opacity=40)"; -ms-filter: "alpha(opacity=40)";
	}

	.mCSB_scrollTools .mCSB_buttonUp{ background-position: 0 0; }
	.mCSB_scrollTools .mCSB_buttonDown{ background-position: 0 -20px; }
	.mCSB_scrollTools .mCSB_buttonLeft{ background-position: 0 -40px; }
	.mCSB_scrollTools .mCSB_buttonRight{ background-position: 0 -56px; }

	.mCSB_scrollTools .mCSB_buttonUp:hover,
	.mCSB_scrollTools .mCSB_buttonDown:hover,
	.mCSB_scrollTools .mCSB_buttonLeft:hover,
	.mCSB_scrollTools .mCSB_buttonRight:hover{ opacity: 0.75; filter: "alpha(opacity=75)"; -ms-filter: "alpha(opacity=75)"; }

	.mCSB_scrollTools .mCSB_buttonUp:active,
	.mCSB_scrollTools .mCSB_buttonDown:active,
	.mCSB_scrollTools .mCSB_buttonLeft:active,
	.mCSB_scrollTools .mCSB_buttonRight:active{ opacity: 0.9; filter: "alpha(opacity=90)"; -ms-filter: "alpha(opacity=90)"; }


/*----------------------------
並び替え条件（絞り込み
----------------------------*/

.sort-box {
    text-align:center;
    margin: 0;
}
.sort-box > p{
  display: block;
  width: 55%;
  text-align: center;
  margin: 0 auto 20px;
  position: relative;
  background: #fff;
  border: 3px solid #fe9c51;
  border-radius: 50px;
  padding: 10px;
  color: #fe9c51;
  font-weight: bold;
}
.sort-box > p:before{
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: transparent;
  border-top-color: #fe9c51;
  border-width: 14px;
  margin-left: -14px;
}
.sort-box > p:after{
  top: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: transparent;
  border-top-color: #fff;
  border-width: 10px;
  margin-left: -10px;
}
body#page .sort-box {
    width: 90%;
    margin: auto;
}
.sort-box div {
    font-size:120%;
    margin: 0;
    padding: 0;
}
.sort-box div.sub {
    text-align: inherit;
    font-size:140%;
    padding: 20px;
    color: #fff;
    letter-spacing: 2px;
    background-color: #fe9c51;
}
.sort-box div:not(.sub):not(.list) {
    text-align: inherit;
    font-size:160%;
    margin-left: -0.5em;
}
.sort-box div.list{
  padding: 30px;
  background-color: #fff;
  border: 2px solid #fe9c51;
}
.sort-box div.list a{
  color: #fe9c51;
  letter-spacing: 2px;
}
body#page .sort-box div:not(.sub):not(.list) {
    font-size:160%;
}
body#page .sort-box div.list {
  font-size:140%;
}
@media screen and (max-width: 400px)  {
  body#page .sort-box div {
      font-size: 4vw;
  }
  body#page .sort-box div:not(.sub):not(.list) {
      font-size:5.3vw;
  }
  .sort-box div.sub , .sort-box div.list{
      text-align: inherit;
      font-size:4.5vw !important;
  }
}
body#page .sort-box div span:before {
    content: "\A";
    white-space: pre;
}

/* ================================================== */
/* Page title
/* ================================================== */
.page-title {
  position: relative;
  margin: 0 auto 20px;
  padding: 30px 0 20px 0;
  width: 100%;
  text-align: center;
  background-color: #f77b84;
}
.page-title h2 {
  margin: 0;
  padding: 0;
  font-size: 24px;
  line-height: 1;
  font-weight: normal;
  color: #fff;
}
.page-title h2.hikaku {
  padding-left: 105px;
}
.page-title h2 strong {
  font-size: 34px;
  line-height: 1;
  font-weight: normal;
  letter-spacing: 3px;
}
.page-title .latest-edition {
  position: absolute;
  margin: 0;
  padding: 0;
  top: 50%;
  left: 10px;
  margin-top: -60px;
  width: 130px;
  height: 120px;
}

/* ================================================== */
/* Section
/* ================================================== */
.section-title {
  margin: 0 0 20px 0;
  padding: 10px;
  text-align: center;
  background-color: #fe9c51;
  color: #fff;
}
.section-title-ttl {
  margin: 0;
  padding: 0;
  font-size: 24px;
}
.section-body {
  margin: 0;
  padding: 0 20px;
}

/* ================================================== */
/* Breadcrumbs
/* ================================================== */
.breadcrumbs {
  margin: 15px 0;
  padding: 0;
}
.breadcrumbs ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.breadcrumbs ul li {
  float: left;
  margin: 0 8px 0 0;
  padding: 0;
  font-size: 12px;
  line-height: 18px;
}
.breadcrumbs ul li a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  color: #fe9c51;
}

/* ================================================== */
/* Top ranking
/* ================================================== */
.top-ranking {
  margin: 30px 0 0 0;
  padding: 0;
  width: 100%;
}
.top-ranking:before,
.top-ranking:after {
  content: " ";
  display: table;
}
.top-ranking:after {
  clear: both;
}
.top-ranking-box {
  float: left;
  position: relative;
  margin: 0 25px 0 0;
  padding: 10px 8px 15px 8px;
  width: 180px;
  height: 470px;
  border: 1px solid #eae4c9;
  background-color: #fbf9ee;
  border-radius: 4px;
}
.top-ranking-box:last-child {
  margin-right: 0;
}
.top-ranking .top-ranking-head {
  margin: 0;
  padding: 0;
  height: 185px;
}
.top-ranking .top-ranking-head .item {
  margin: 0 0 0 40px;
  padding: 10px 0;
  width: 100px;
}
.top-ranking .top-ranking-head h2 {
  margin: 5px 0 25px 0;
  padding: 0;
  font-size: 18px;
  line-height: 1.2;
  text-align: center;
  color: #fe9c51;
}
.top-ranking .top-ranking-head a {
  color: #fe9c51;
  text-decoration: none;
}
.top-ranking .top-ranking-head a:hover {
  text-decoration: underline;
}
.top-ranking .top-ranking-head h2.gap {
  padding-top: 10px;
}
.top-ranking .ranking-icon {
  position: absolute;
  width: 46px;
  height: 42px;
  top: -10px;
  left: 8px;
}
.top-ranking .top-ranking-body {
  margin: 0;
  padding: 0;
  height: 220px;
}
.top-ranking .top-ranking-body .graph {
  margin: 0 -5px;
  padding: 0;
  width: 170px;
}
.top-ranking .top-ranking-body .graph a{
  color: #333;
}
.top-ranking .top-ranking-body h3 {
  margin: 10px 0 5px 0;
  padding: 0;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
}
.top-ranking .top-ranking-body h3.gap {
  padding-top: 10px;
  padding-bottom: 10px;
}
.top-ranking .top-ranking-body .price {
  font-size: 13px;
  text-align: center;
}
.top-ranking .top-ranking-body p {
  margin: 0 0 20px 0;
  padding: 0;
  font-size: 13px;
  text-align: center;
}
.top-ranking-box .btn {
  display: block;
  text-align: center;
}
/*.top-ranking-box .btn.rank01{
  background-color: #f34c4c;
  box-shadow: 0 3px 0 #cb2525;
}
.top-ranking-box .btn.rank02,
.top-ranking-box .btn.rank03{
  background-color: #77bc00;
  box-shadow: 0 3px 0 #568800;
}
.top-ranking-box .btn.rank04,
.top-ranking-box .btn.rank05{
  background-color: #e5bd00;
  box-shadow: 0 3px 0 #a08400;
}*/
.top-ranking-more {
  margin: 20px 0;
  padding: 0;
  text-align: center;
}

/* ================================================== */
/* Ranking
/* ================================================== */
.ranking-page {
  margin: 0;
  padding: 0 0 30px 0;
}
.ranking-page h2 {
  margin: 0;
  padding: 0;
}
.ranking-page-main{
  margin: 0;
  padding: 0;
}
.ranking-box {
  position: relative;
  margin: 0 0 60px 0; /* 装飾がある場合はmargin-topは30px */
  padding: 20px;
  border: 5px solid #f5f5f5;
  background-color: #fff;
}
.ranking-box:last-child {
  margin-bottom: 0;
}
.ranking-inner {
  position: relative;
  margin: 0;
  padding: 0;
}
.ranking-box .ranking-title-area{
  display: table;
  width: 100%;
  padding: 0;
}
.ranking-box .ranking-icon {
  width: 11%;
  height: auto;
  display: table-cell;
  vertical-align: middle;
  margin: 0 8px 0 0;
  padding: 0;
}
.ranking-box .ranking-icon img{
  width: 100%;
}
.ranking-box .ranking-title {
  width: 65%;
  display: table-cell;
  vertical-align: middle;
  margin: 0;
  padding: 0 0 0 15px;
  box-sizing: border-box;
  color: #e76a0a;
}
.ranking-box .ranking-title.wide{
  width: 76%;
}
.ranking-box .ranking-title h2,
.ranking-box .ranking-title-name{
  margin: 8px 0 7px 0;
  padding: 0;
  font-size: 30px;
  line-height: 30px;
  letter-spacing: 2px;
}
.ranking-box .ranking-title-score{
  float: right;
  width: 230px;
  border: 2px solid #bb0000;
  padding: 20px 5px 5px;
  position: relative;
  font-weight: bold;
  text-align: center;
  letter-spacing: 2px;
  margin-top: 10px;
  font-size: 25px;
}
.ranking-box .ranking-title-score p{
  margin: 0;
  line-height: 1;
}
.ranking-box .ranking-title-score span{
  font-size: 40px;
  color: #bb0000;
}
.ranking-box .ranking-title-score:before{
  content: "";
  position: absolute;
  width: 210px;
  height: 25px;
  margin-left: -105px;
  left: 50%;
  top: -13px;
  background: url(../img/score.png) no-repeat center center;
}
.ranking-box .ranking-header {
  margin: 0;
  padding: 15px 0 0 0;
  width: 100%;
  overflow: hidden;
}
.ranking-box .ranking-header h3,
.ranking-header-catch {
  margin: 0 0 25px 0;
  padding: 0;
  font-size: 22px;
}
.ranking-box .ranking-header-left {
  display: table-cell;
  vertical-align: middle;
  margin: 10px 0 0 0;
  padding: 0;
  width: 325px;
}
.ranking-box .ranking-header-right {
  display: table-cell;
  vertical-align: middle;
  margin: 0;
  width: 590px;
  padding-left: 20px;
  box-sizing: border-box;
}
.ranking-box .ranking-header-right table.table th{
  padding: 10px 20px;
  font-size: 15px;
}
.ranking-box .ranking-header-right table.table td{
  padding: 10px 20px;
  font-size: 14px;
}
.ranking-box .ranking-description {
  margin: 0 12px 30px 12px;
  padding: 0;
}
.ranking-box .ranking-description ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.ranking-box .ranking-description{
  margin:0 0 10px 0;
}
.ranking-box .ranking-description ul li{
  margin: 0 0 20px 0;
  padding: 0 0 0 25px;
  font-size: 18px;
  letter-spacing: 1px;
  position: relative;
}
.ranking-box .ranking-description ul li:before{
  content: "\f14a";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
  font-size: 20px;
  color: #f5761a;
}
.ranking-box .ranking-description ul li:last-child{
  margin-bottom:0px;
}
.ranking-box .ranking-description ul li strong {
  margin: 0 0.1em;
  padding: 0;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  color: #fe9c51;
}
.ranking-box .ranking-header-right .ranking-header-catch{
  margin-bottom: 20px;
  font-size: 25px;
  padding-bottom: 10px;
  border-bottom: 4px solid #fe9c51;
  font-weight: normal;
}
/* action */
.ranking-action {
  margin: 0 auto 20px;
  padding: 0 10px;
  text-align: center;
}
.ranking-action .btn {
  margin-right: 18px;
  padding: 20px;
  width: 300px;
  font-size: 20px;
  line-height: 1;
  position: relative;
}
.ranking-action .btn:after{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.5em;
  font-weight: 900;
  font-size: 140%;
}
.ranking-action .btn:last-child {
  margin-right: 0;
}

/* Cobwebchart */
.cobwebchart {
  margin: 0;
  padding: 0;
}
.cobwebchart:before,
.cobwebchart:after {
  content: " ";
  display: table;
}
.cobwebchart:after {
  clear: both;
}
.cobwebchart-left {
  float: left;
  margin: 0 0 0 30px;
  padding: 10px 0 0 0;
}
.cobwebchart-right {
  float: right;
  margin: 0 20px 0 0;
  padding: 0;
  width: 285px;
}
.cobwebchart-right h3 {
  display: inline-block;
  margin: 0 0 15px 0;
  padding: 5px 48px;
  font-size: 16px;
  line-height: 1;
  font-weight: normal;
  color: #917734;
  background-color: #fe9c51;
  border-radius: 6px;
}
.cobwebchart-right .point {
  margin: 0;
  padding: 0;
}
.cobwebchart-right .col1 {
  font-size: 56px;
  line-height: 1;
  font-weight: bold;
  color: #fe9c51;
  letter-spacing: 1px;
}
.cobwebchart-right .col2 {
  margin-left: -8px;
  font-size: 35px;
  line-height: 1;
}
.cobwebchart-right .col3 {
  font-size: 30px;
  line-height: 1;
  color: #3f3f3f;
  letter-spacing: 1px;
}
.cobwebchart-right .col4 {
  margin-left: -5px;
  font-size: 23px;
  line-height: 1;
  color: #3f3f3f;
}
.cobwebchart-right table {
  margin: 10px 0 0 0;
  width: 100%;
}
.cobwebchart-right tbody tr th,
.cobwebchart-right tbody tr td {
  padding: 12px 20px 10px 20px;
  border: 1px solid #ccc6b5;
  text-align: left;
}
.cobwebchart-right tbody tr th {
  width: 160px;
  font-size: 14px;
  line-height: 18px;
  font-weight: normal;
  background-color: #fe9c51;
  color: #625023;
}
.cobwebchart-right tbody tr td {
  font-size: 18px;
  line-height: 18px;
  font-weight: bold;
  text-align: center;
  color: #625023;
}

/* ranking body */
.ranking-body {
  margin: 0 0 30px 0;
}

/* ================================================== */
/* Ranking details faq
/* ================================================== */
.faq-box {
  margin: 50px 0 0 0;
  padding: 0;
}
.faq-box .faq-title {
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 3px solid #ff2943;
  font-weight: normal;
}
.faq-box .faq-title.campaign {
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 3px solid #29a8ff;
  font-weight: normal;
}
.faq-box .faq-title h2 {
  margin: 0;
  padding: 0 0 0 30px;
  font-size: 24px;
  line-height: 24px;
  font-weight: bold;
  letter-spacing: 2px;
  position: relative;
}
.faq-box .faq-title h2:before{
  content: "\f105";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  width: 30px;
  height: 30px;
  text-align: center;
  top: 50%;
  left: 0;
  margin-top: -15px;
  font-size: 30px;
  color: #ff2943;
}
.faq-box .faq-title.campaign h2:before{
  color: #29a8ff;
}
.faq-box .faq-body {
  margin: 0;
  padding: 0;
  font-size: 17px;
  line-height: 1.7;
  overflow: hidden;
}
.faq-box .faq-body .photo {
  margin: 0 30px 20px 30px;
  padding: 0;
  width: 420px;
}
.faq-box .faq-body .photo.pull-right {
  margin-right: 0;
}
.faq-box .faq-body .photo.pull-left {
  margin-left: 0;
}

/* ================================================== */
/* Ranking details speck
/* ================================================== */
.ranking-speck {
  margin: 0;
  padding: 0 35px;
}

/* ================================================== */
/* Ranking details voice
/* ================================================== */
.ranking-voice {
  margin: 0;
  padding: 20px;
  border: 2px solid #fe9c51;
}
.ranking-voice h2 {
  margin: 0 0 15px 0;
  padding: 0 0 10px;
  font-size: 28px;
  line-height: 1;
  font-weight: normal;
  color: #fe9c51;
  border-bottom: 1px solid #fe9c51;
}
.ranking-voice .ranking-voice-inner {
  margin: 30px 0;
  padding: 0;
  height: 550px;
  overflow-y: auto;
}
.ranking-voice .voice-box {
  margin: 0 0 30px 0;
  padding: 0;
  width: 100%;
  border-bottom: 1px solid #ccc;
}
.ranking-voice .voice-box:last-child {
  border: none;
}
.ranking-voice .voice-box h3 {
  margin: 0;
  padding: 0;
}
.ranking-voice .voice-box h3 br{
  display: none;
}
.ranking-voice .voice-box h3 .sex {
  margin-left: 4px;
  margin-right: 4px;
  color: #fe9c51;
}
.ranking-voice .voice-box h3 .point {
  color: #fe7200;
}
.ranking-voice .voice-box p {
  font-size: 14px;
  line-height: 1.6;
}

/* ranking bottom iframe */
.ranking-bottom {
  margin: 30px auto;
  padding: 0;
  width: 970px;
}
.ranking-bottom iframe.table-frame{
  width: 970px;
  height: 1800px;
}

/* ================================================== */
/* Hikaku
/* ================================================== */
#hikaku-main {
  margin: 0;
  padding: 0;
}
#hikaku-main #main-content {
  margin: 0;
}

/* ================================================== */
/* Report
/* ================================================== */
.container.report-detail{
  margin-top: 30px;
}
.content .report {
  margin: 0;
  padding: 0;
  background-color: #fff;
  padding: 30px;
  margin: 0 0 60px 0;
  padding: 20px;
  border: 5px solid #f5f5f5;
  background-color: #fff;
}
.report02-title,
.report-title {
  position: relative;
  margin: 0 0 40px 0;
  padding: 0;
  width: 100%;
  height: 235px;
  background: url(../img/report_title_bg.png) no-repeat 0 0;
  background-size: cover;
  color: #333;
  font-weight: bold;
  letter-spacing: 2px;
}
.report-title-simple {
  margin: 0 0 20px 0;
  padding: 15px 20px;
  width: 100%;
  background: #fe9c51;
  height: auto;
}
.report-title-simple h1{
  color: #fff;
  margin: 0;
  font-size: 26px;
  font-weight: normal;
}
.report-title h2,
.report-title-main {
  position: absolute;
  width: 100%;
  top: 40%;
  transform: translateY(-40%);
  margin-left: 30px;
  padding: 0;
  font-size: 30px;
  line-height: 1.4;
  font-weight: normal;
}
.report-title h2.index,
.report-title-main.index {
  text-align: center;
}
.report02-title h2 {
  font-size: 30px;
  line-height: 1.4;
  font-weight: normal;
  text-align: center;
}
.report-title-num {
  position: relative;
  margin: 0 0 0 30px;
  padding: 0;
}
.report-title [class*=report-title-circle] {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  top: 22px;
  left: 0;
  width: 40px;
  height: 40px;
  font-size: 27px;
  line-height: 44px;
  font-weight: normal;
  text-align: center;
  background-color: #fe9c51;
  color: #fff;
  border-radius: 50%;
}
.report-title .report-title-circle01 {
  left: 0;
}
.report-title .report-title-circle02 {
  left: 40px;
}
.report-title .report-title-strong {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  top: 0;
  left: 80px;
  font-size: 77px;
  line-height: 77px;
  font-weight: normal;
  color: #fe9c51;
}

.report-box {
  margin: 0 0 40px 0;
  padding: 0;
  font-size: 16px;
  line-height: 1.6;
}

.report-box .photo {
  margin: 0 20px 20px 20px;
  padding: 0;
  width: 250px;
  height: 220px;
}
.report-box .photo.pull-left {
  margin-left: 0;
}
.report-box .photo.pull-right {
  margin-right: 0;
}

.report-box ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.report-box ul li {
  margin: 0 0 5px 0;
  padding: 0;
}
.report-box ul li a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  color: #fe9c51;
}
.report-box ul li a:hover {
  text-decoration: underline;
}
.report-box ul li .icon {
  margin-right: 10px;
}

.report-box dl {
  margin: 0;
  padding: 0 0 0 10px;
}
.report-box dl dt {
  margin: 0;
  padding: 0;
  font-weight: bold;
}
.report-box dl dd {
  margin: 0 0 20px 0;
  padding: 0 1em 0 1em;
}
/*読み物メインサイト様 indexリスト*/
.report-box ul.report-link-list{
  overflow:hidden;
  margin-left: 2px;
}
.report-box ul.report-link-list li{
  float: left;
  width: 200px;
  margin:15px 20px;
}
.report-box ul.report-link-list li a{
  text-decoration: none !important;
  color: #333 !important;
  display: block;
}
.report-box ul.report-link-list li a:hover{
  color: #fe9c51 !important;
}
.report-box ul.report-link-list li a:hover img{
  opacity: 0.7;
}
.report-link-list-photo{
  margin-bottom: 10px;
}
.report-link-list-ttl{
  font-size: 15px;
  font-weight: bold;
  display: table;
  height: 50px;
}
.report-link-list-ttl p{
  display: table-cell;
  vertical-align: top;
}
.report-link-list-text{
  font-size: 13px;
  margin-top: 5px;
}
/*読み物メインサイト様 indexTOP3リスト*/
.report-ranking-box{
  border-radius: 10px;
  padding: 30px 20px 20px;
  background-color: #ffecf2;
}
.report-ranking-box-ttl{
  text-align: center;
  margin: 0 0 20px 0;
  font-size: 24px;
  color: #fe9c51;
}
.report-ranking-top3{
  overflow: hidden;
  margin-left: -20px;
}
.report-ranking-top3 li{
  width: 215px;
  height: 280px;
  box-sizing: border-box;
  padding: 20px;
  background-color: #fff;
  border-radius: 10px;
  float: left;
  margin-left: 20px;
  position: relative;
}
.report-ranking-top3 li:before{
  content: "";
  position: absolute;
  left: 10px;
  top: 10px;
  width: 46px;
  height: 42px;
}
.report-ranking-top3 li a{
  text-decoration: none !important;
  color: #000 !important;
  display: block;
}
.report-ranking-top3 li a:hover img{
  opacity: 0.6;
}
.report-ranking-top3 li a:hover{
  color: #fe9c51 !important;
}
.report-ranking-cap{
  text-align: center;
}
.report-ranking-name{
  font-size: 15px;
  font-weight: bold;
  margin: 10px 0 0 0;
  text-decoration: underline;
  text-align: center;
  color: #fe9c51 !important;
}
.report-ranking-catch{
  font-size: 13px;
  margin: 10px 0 0 0;
}

/* circle title */
.circle-title {
  position: relative;
  margin: 0 0 20px 0;
  padding: 0 0 15px 40px;
  font-size: 24px;
  line-height: 28px;
  font-weight: bold;
  border-bottom: 3px solid #fe9c51;
}
.circle-title .circle {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background-color: #fe9c51;
  color: #fff;
  border-radius: 50%;
}
.circle-title .circle:before {
  content: " ";
  position: absolute;
  margin: 0;
  padding: 0;
  top: 6px;
  left: 7px;
  width: 20px;
  height: 20px;
  background-color: rgba(138,138,138,0.25);
  border-radius: 50%;
}
.simple-title {
  color: #fe9c51;
}

/* ================================================== */
/* About
/* ================================================== */
.about-content{
  margin-top: 30px;
}
#company {
  background-color: #fff;
  padding-bottom: 30px;
}
#about {
  background-color: #fff;
  padding-bottom: 30px;
}
#about dt {
  font-weight: bold;
  color: #fe9c51;
}
#inquiry{
  background-color: #fff;
  padding-bottom: 30px;
}
#inquiry h3 {
  color: #fe9c51;
}
/* ================================================== */
/* geinojin comment
/* ================================================== */
.geino{
  padding: 10px 12px 0;
}
.geino dl{
  border: 1px solid #fe9c51;
  padding: 20px 24px;
}
.geino dl dt{
  font-size:16px;
  font-weight: bold;
  color: #fe9c51;
  padding: 0 0 5px;
}
.geino dl dd{
  margin: 0 auto;
  border: 1px solid #f0f0f0;
  border-radius: 6px;
}
.geino dl dd p{
  padding: 0 14px;
  line-height: 1.3;
}
.geino dl dd p:after{
  content: "";
  display: block;
  clear: both;
  height: 0;
  font-size:0;
  visibility:hidden;
}
.geino dl dd p span.by{
  float: right;
  padding: 10px 0 0;
}
/* ================================================== */
/* Google用CSS comment
/* ================================================== */
/*----------------------------
hikaku table
----------------------------*/
#contents-body{
  width:1200px;
  margin:0 auto;
  position:relative;
}
#col2a-2-container{
  padding-top:100px;
}
#key-visual.form-wrapper{
  height:1150px;
}
.form-search-area{
  margin: 0 auto 40px;
  padding: 0;
  width: 970px;
}
.form-search-area:before,
.form-search-area:after {
  content: " ";
  display: table;
}
.form-search-area:after {
  clear: both;
}
.form-bg{
  width:100%;
  padding:16px;
  background-color:#fff;
  margin-bottom:20px;
  border-radius: 0 0 10px 10px;
  border: 2px solid #fe9c51;
}
.form-bg-contents-ttl{
  width:100%;
  background-color: #fe9c51;
  font-size: 24px;
  padding: 15px 0;
  color:#fff;
  border-radius:10px 10px 0 0;
  text-align:center;
  font-weight: normal;
  letter-spacing: 2px;
}
.btn-form {
  background-color: #f77b84;
  box-shadow: 0 3px 0 #d82d39;
  color: #fff;
  width: 440px !important;
  font-size: 26px;
  line-height: 26px;
  padding:15px;
  border-radius: 30px;
  position: relative;
}
.btn-form:after{
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -0.3em;
  font-weight: 900;
  font-size: 140%;
}
.btn-form.hvr-button:hover,
.btn-form.hvr-button:active{
  box-shadow: 0 0 0 #d82d39;
  color: #fff;
}
.check-form-area .t_table,
.form-bg .t_table{
  border-top: 1px solid #ccc;
  width: 100%;
  margin-bottom:10px;
}
.t_table th{
  background-color:#fff1c8;
  width:80px;
  border-bottom: 1px solid #ccc;
  padding: 15px 0;
  font-size:15px;
  font-weight: normal;
  color: #333;
  line-height: 1.8;
}
.t_table td{
  border-bottom: 1px solid #ccc;
  padding: 15px 10px 0 0;
  font-size:14px;
  background-color:#fff;
  font-weight: normal;
}
.t_table ul{
  overflow:hidden;
  list-style:none;
  margin:0;
  padding:0;
}
.t_table ul li{
  display: inline-block;
  margin: 0 0 10px 10px;
}
.t_table td select{
  margin-left: 10px;
}
/*.t_table ul.col5 li{
  float:left;
  width:85px;
  margin:0 0 7px 0;
}
.t_table ul.col4 li{
  float:left;
  width:95px;
  margin:0 0 7px 0;
}
.t_table ul.col3 li{
  float:left;
  width:115px;
  margin:0 0 10px 0;
}
.t_table ul.col3 li.wide{
  width:150px;
}
.t_table ul.col2 li{
  float:left;
  width:170px;
  margin:0 0 10px 0;
}
.t_table ul.col2 li.wide{
  width: 270px;
}*/
.sortIcon{
  display: block;
  white-space: nowrap;
}
/*-------------------------
チェックボックス　ボタン化
--------------------------*/
input[type=radio],
input[type=checkbox] {
  display: inline-block;
  margin-right: 6px;
}
input[type=radio] + label,
input[type=checkbox] + label {
  position: relative;
  display: inline-block;
  margin-right: 12px;
  line-height: 1.5px;
  cursor: pointer;
  font-weight: normal;
}

@media (min-width: 1px) {
  input[type=radio],
  input[type=checkbox] {
    display: none;
    margin: 0;
  }
  input[type=radio] + label,
  input[type=checkbox] + label {
    padding: 0 0 0 24px;
  }
  input[type=radio] + label::before,
  input[type=checkbox] + label::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
  -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    width: 18px;
    height: 18px;
    margin-top: -9px;
    background-color: white;
  }
  input[type=radio] + label::before {
    border: 2px solid #c2ced2;
    border-radius: 30px;
  }
  input[type=checkbox] + label::before {
    border: 2px solid #c2ced2;
  }
  input[type=radio]:checked + label::after,
  input[type=checkbox]:checked + label::after {
    content: "";
    position: absolute;
    top: 50%;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
  }
  input[type=radio]:checked + label::after {
    left: 5px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    background: #19c5ff;
    border-radius: 8px;
  }
  input[type=checkbox]:checked + label::after {
    left: 3px;
    width: 16px;
    height: 8px;
    margin-top: -8px;
    border-left: 3px solid #12b4eb;
    border-bottom: 3px solid #12b4eb;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

.hikakuTable table{
  border-collapse:collapse;
  }
.hikakuTable .textLeft{
  text-align:left;
  }
.hikakuTable p.textCenter{
  text-align:center;
  padding:0px;
  margin:0px;
  }
.hikakuTable table tr th,.hikakuTable table tr td{
  padding:5px;
  border:solid 1px #ccc;
  font-size:85%;
  text-align: center;
  }
.hikakuTable table tr th{
  background:#2996be;
  }
.hikakuTable table tr.attention{
  background:#a4d6ff;
  }

/*----------------------------
check.php
----------------------------*/
table.tablesorter {
background-color: #CDCDCD;
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
}
table.tablesorter th,
table.tablesorter td {
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
font-size: 12px;
padding:5px;
}
table.tablesorter th{
  padding-bottom:10px;
}
table.tablesorter thead tr th{
padding: 4px;
background-color:#fff68e;
}
table.tablesorter thead tr .tablesorter-header {
background-repeat: no-repeat;
background-position: center right;
cursor: pointer;
text-align: center;
vertical-align:bottom;
}
table.tablesorter thead tr .tablesorter-header span.sorter{
  white-space: nowrap;
}
table.tablesorter thead tr .tablesorter-header span.sorter img{
  margin:0 1px;
}
table.tablesorter thead tr .tablesorter-header a{
  color:#ffc000;
  background-color: #fff;
  border-radius: 5px;
  padding: 2px 5px;
  margin:0 2px;
  display:inline-block;
  text-decoration: none;
  *zoom:1;
  *display:block;
}
table.tablesorter thead tr .companyName {
background-color:#ffe2b9;
box-shadow:inset 1px 1px 1px #fff;
}
table.tablesorter tbody th{
  background-color:#fff;
  text-align:center;
  width:162px !important;
}
table.tablesorter#myTable2 tbody th{
  width:162px !important;
}
table.tablesorter tbody td {
color: #3D3D3D;
padding: 4px;
background-color: #FFF;
vertical-align: middle;
}
table.tablesorter tbody tr.odd td {
background-color:#F0F0F6;
vertical-align: middle;
}
table.tablesorter td.textLeft {
background: #fff;
padding:10px;
font-size:13px;
}
.header_menu3,
.data_menu3,
.header_menu4,
.data_menu4,
.header_menu5,
.data_menu5,
.header_menu6,
.data_menu6,
.header_menu7,
.data_menu7,
.header_menu8,
.data_menu8,
.header_menu9,
.data_menu9,
.header_menu10,
.data_menu10{
  width:110px !important;
  text-align: center;
}

/* dataTable
---------------------------------------------------------*/
#dataTable {
margin-bottom: 20px;
}
table.tablesorter td h3{color:#018ec9 !important;margin:0 0 10px;font-size:18px;}
table.tablesorter td ul.check_ul li {
  margin: 0 0 20px 0;
  padding: 0 0 0 25px;
  font-size: 18px;
  letter-spacing: 1px;
  position: relative;
}
table.tablesorter td ul.check_ul li:before{
  content: "\f14a";
  position: absolute;
  font-family: "Font Awesome 5 Free";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  width: 20px;
  height: 20px;
  top: 0;
  left: 0;
  font-size: 20px;
  color: #f5761a;
}
table.tablesorter{
  margin-top:10px;
  }
table tr th.bgbeige,table tr td.bgbeige{
  background:#fff;
  }
table.tablesorter tr th img{
  margin:5px 2px 0 2px;
  }
table.tablesorter tr th > div {
  text-align: center;
}
table.tablesorter tr th > div img{
  margin-bottom: 10px;
}
table.tablesorter tr th > div .cap-more span{
  display: block;
  margin-bottom: 10px;
}
.rank_point{
  margin:5px;
  }

/* amazonボタン、楽天ボタン
---------------------------------------------------------*/
.btnbtm-area {
width: 570px;
padding: 0;
display: flex;
}
.btnbtm-area a {
margin-right: 10px;
color:#FFFFFF;
}
.btnbtm-area .amazon {
background: #df8e07;
box-shadow: 0 3px 0 #a27140;
}
.btnbtm-area .amazon:hover {
background: #df8e07;
box-shadow: 0 0 0 #df8e07;
}
.btnbtm-area .rakuten {
background: #e01b1d;
box-shadow: 0 3px 0 #af1b43;
}
.btnbtm-area .rakuten:hover {
background: #e01b1d;
box-shadow: 0 0 0 #af1b43;
}

/* 体験ページ
---------------------------------------------------------*/
.taiken {
margin-bottom: 60px;
}
.taiken .taiken-head {
margin: 0 0 60px 0;
padding:25px;
border: 1px solid #fe9c51;
background-color: #fff;
}
.taiken .taiken-head h2 {
margin-top:0;
}
.taiken .taiken-head h3 {
margin:0;
padding:0;
}
.taiken .taiken-head p {
margin: 1em 0 0 0;
padding: 0;
text-align: center;
line-height: 1.7;
font-size: 18px;
}
.taiken .ranking-box .ranking-header-left {
width: 370px;
}
.taiken .ranking-box .ranking-header-right {
width: 545px;
}
.taiken .ranking-header-right .capsule {
display:flex;
flex-wrap:wrap;
}
.taiken .ranking-header-right .capsule li {
padding:0 10px;
width:50%;
}
.taiken .ranking-header-right .capsule li p {
font-size: 14px;
}
.taiken .faq-box {
margin-top:30px;
}

/*----------------------------
margin padding 調整
----------------------------*/
.mb0{margin-bottom:0px !important;}
.mb10{margin-bottom:10px !important;}
.mb20{margin-bottom:20px !important;}
.mt0{margin-top:0px !important;}
.mt05{margin-top:5px !important;}
.mt10{margin-top:10px !important;}
.mt20{margin-top:20px !important;}
.mr0{margin-right:0px !important;}
.mr5{margin-right:5px !important;}
.mr10{margin-right:10px !important;}
.mr20{margin-right:20px !important;}
.ml0{margin-left:0px !important;}
.ml5{margin-left:5px !important;}
.ml10{margin-left:10px !important;}
.ml20{margin-left:20px !important;}
.pl05{padding-left:5px !important;}
.pt5{padding-top:5px !important;}
.pt10{padding-top:10px !important;}
.pt15{padding-top:15px !important;}
.pt20{padding-top:20px !important;}
.pt30{padding-top:30px !important;}
.pb5{padding-bottom:5px !important;}
.pb10{padding-bottom:10px !important;}
.pb20{padding-bottom:20px !important;}
.pb30{padding-bottom:30px !important;}
/*----------------------------
font 調整
----------------------------*/
.fs_13{font-size:13px !important;}
.fs_ss{font-size:70%;}
.fs_s{font-size:80%;}
.fs_m{font-size:120%;}
.fs_l{font-size:140%;}
.fs_ll{font-size:160%;}
.fs_lll{font-size:200%;}
.fc_red{color:#F00;}
.fc_blue{color:#057387;}
.fc_black{color:#000;}
.fc_pink{color:#F06;}
.fc_orange{color:#F60;}
.fw_b{font-weight:bold;}
.fc_brown{color:#94671e !important;}
/*----------------------------
その他 調整
----------------------------*/
.clear{clear:both;}
.bg_marker{background-color:#fff372;}
.overf_h{overflow:hidden;}
.ac{text-align:center;}
.align_right{text-align:right;}
.bg_blue{background-color:#CFF;}
.flL{float:left !important;}
.flR{float:right !important;}
.ls{ letter-spacing:0.8 !important;}
.t-indent li{
  text-indent:-1em;
  margin-left:1em;
}

.ovf-h{overflow:hidden !important;}
.bg-marker{background-color: #fffea9;}
.fc-red{color: #FF0004 !important;}
.bold{font-weight: bold !important;}
