@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: 70%; }
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: collapse; }
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: #3d3d3d;
    background: #f2fdff;
    min-width: 1060px;
}

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: 1000px;
    background-color: #fff;
}
.container-wide {
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    width: 1060px;
}
.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%;
}
.top_bg_padding{
    width: 1060px;
    padding: 0px 30px 30px 30px;
}

/* ================================================== */
/* 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; }
.no-pt { padding-top: 0 !important; }
.no-mt { margin-top: 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-home {
    width: 16px;
    height: 14px;
    background: url(../img/icons/icon_home.png) no-repeat 0 0;
}
.icon-home-w {
    width: 16px;
    height: 14px;
    background: url(../img/icons/icon_home_w.png) no-repeat 0 0;
}
.icon-home-b {
    width: 16px;
    height: 14px;
    background: url(../img/icons/icon_home_b.png) no-repeat 0 0;
}
.icon-home-red {
    width: 16px;
    height: 14px;
    background: url(../img/icons/icon_home_red.png) no-repeat 0 0;
}
.icon-home-blue {
    width: 16px;
    height: 14px;
    background: url(../img/icons/icon_home_blue.png) no-repeat 0 0;
}
.icon-crown {
    width: 17px;
    height: 17px;
    background: url(../img/icons/icon_crown.png) no-repeat 0 0;
}
.icon-crown-blue {
    width: 14px;
    height: 13px;
    background: url(../img/icons/icon_crown_blue.png) no-repeat 0 0;
}
.icon-heart {
    width: 12px;
    height: 11px;
    background: url(../img/icons/icon_heart.png) no-repeat 0 0;
}
.icon-heart-blue {
    width: 12px;
    height: 11px;
    background: url(../img/icons/icon_heart_blue.png) no-repeat 0 0;
}
.icon-office {
    width: 17px;
    height: 17px;
    background: url(../img/icons/icon_office.png) no-repeat 0 0;
}
.icon-office-blue {
    width: 17px;
    height: 17px;
    background: url(../img/icons/icon_office_blue.png) no-repeat 0 0;
}
.icon-arrow {
    width: 9px;
    height: 15px;
    background: url(../img/icons/icon_arrow.png) no-repeat 0 0;
}
.icon-arrow-s {
    width: 5px;
    height: 10px;
    background: url(../img/icons/icon_arrow_s.png) no-repeat 0 0;
}
.icon-traiangle {
    position: relative;
    width: 32px;
    height: 32px;
    border: 2px solid #f23064;
    background-color: #fff;
    border-radius: 50%;
}
.icon-traiangle:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: " ";
    margin: -6px 0 0 -3px;
    padding: 0;
    width: 9px;
    height: 11px;
    background: url(../img/icons/icon_traiangle.png) no-repeat 0 0;
}
.icon-traiangle-s {
    position: relative;
    width: 14px;
    height: 14px;
    background-color: #2ab6e4;
    border-radius: 50%;
}
.icon-traiangle-s:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: " ";
    margin: -3px 0 0 -2px;
    padding: 0;
    width: 4px;
    height: 6px;
    background: url(../img/icons/icon_traiangle_s.png) no-repeat 0 0;
}

/* ================================================== */
/* 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%;
}
.table tbody tr th,
.table tbody tr td {
    margin: 0;
    padding: 10px 25px;
    text-align: left;
    border: 1px solid #e5e5e5;
}
.table tbody tr th {
    margin: 0;
    width: 185px;
    font-weight: normal;
    text-align: center;
    background-color: #f2f2f2;
}
.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;
}

/* ================================================== */
/* 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-primary {
    background-color: #41c86a;
    color: #fff;
    box-shadow: 0 3px 0 #37ad5b;
}
.btn-primary-lg {
    width: 570px !important;
}

.btn-secondary {
    background-color: #fa5d08;
    color: #ffffff;
    box-shadow: 0 3px 0 #c74a06;
}
.btn-secondary-lg {
    width: 570px !important;
}
.btn-secondary:hover,
.btn-secondary:focus {
    color: #ffffff;
}
.btn-secondary.hvr-button:hover {
    box-shadow: 0 0 0 #f23064;
}
.btn-secondary.hvr-button:active {
    box-shadow: 0 0 0 #c74a06;
    background-color: #c74a06;
    color: #fff;
}
.btn-third {
    background-color: #60c0a0;
    color: #fff;
    box-shadow: 0 3px 0 #468c75;
}
.btn-third.hvr-button:active {
    background-color: #468c75;
    box-shadow: 0 0 0 #468c75;
    color: #fff;
}
.btn-third-lg {
    width: 570px !important;
}

.btn-simple {
    background-color: #3cbfc3;
    color: #fff;
}
.btn-simple:hover {
    background-color: #05a4a9;
    color: #fff;
}
.btn-sm {
    padding: 8px 10px;
    font-size: 11px;
    line-height: 11px;
}
.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 {
    box-shadow: 0 0 0 #05a4a9;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
}
.hvr-button:active {
    background-color: #37ad5b;
    box-shadow: 0 0 0 #37ad5b;
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    transition-duration: 0.1s;
}

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

.shiny_btn a {
    position: relative;
}
.shiny_btn a:before {
    display: block;
    position: absolute;
    left: -30%;
    top: -20%;
    content: "";
    width: 30px;
    height: 130px;
    transform: rotate(15deg);
    -webkit-transform: rotate(15deg);
    -moz-transform: rotate(15deg);
    background-image: linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
    background-image: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));
    background-image: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, #ffffff, rgba(255,255,255,1),rgba(255,255,255,0) 100%);
    animation: shiny 3s infinite linear;
    -webkit-animation: shiny 3s infinite linear;
    -moz-animation: shiny 3s infinite linear;
}
@keyframes shiny {
    0% {
        left: -10%;
    }
    20% {
        left: 110%;
    }
    100% {
        left: 110%;
    }
}
@-webkit-keyframes shiny {
    0% {
        left: -10%;
    }
    20% {
        left: 110%;
    }
    100% {
        left: 110%;
    }
}

/* ================================================== */
/* Layout
/* ================================================== */
#header {
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(0,0,0,0.25);
}

#main {
    margin: 0;
    padding: 0 0 30px 0;
    width: 100%;
    /*background: url(../img/bg.png) no-repeat center top;*/
}
#main-content {
    margin: 0 auto;
    padding: 30px;
    width: 1060px;
    background-color: #fff;
}

#footer {
    margin: 0;
    padding: 0;
    width: 100%;
    background-color: #ffffff;
}
#footer-main {
    margin: 0;
    padding: 0;
    width: 100%;
    /*border-top: 3px solid #7ecef4;*/
}
#footer-bottom {
    margin: 0;
    padding: 0;
    width: 100%;
    background-color: #7ecef4;
}

/* ================================================== */
/* Header
/* ================================================== */
#header {
    color: #3d3d3d;
    z-index: 1000;
}

#header > .line-dashed {
    margin-bottom: 6px;
}

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

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

.default .header-main {
    display: block;
}

.header-main {
    margin: 0;
    padding: 5px 0 5px 0;
    width: 100%;
    background-color: rgba(255,255,255,0.7);
}
.header-left {
    float: left;
}
.header-right {
    float: right;
    width: 450px;
}

/* Header main */
.header-main .brand {
    margin: 0;
    padding: 0;
    font-size: 30px;
    font-weight: bold;
}
.header-main .brand a {
    text-decoration: none;
    color: #3d3d3d;
}
.header-main .brand a span {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 22px;
}
.header-main .brand a strong {
    margin-right: 0.5em;
    color: #c64545;
}
.header-main .tagline {
    margin: 5px 0 0 0;
    padding: 0;
    font-size: 14px;
    font-weight: normal;
}

/* Navigation */
.navigation {
    position: relative;
    margin: 0;
    padding: 13px 0;
    width: 100%;
    background-color: #ffffff;
    background-color: rgba(255,255,255,0.9);
}
.navigation ul {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 20px;
    list-style: none;
}
.navigation ul:before,
.navigation ul:after {
    content: " ";
    display: table;
}
.navigation ul:after {
    clear: both;
}
.navigation ul li {
    float: left;
    margin: 0;
    padding: 0 10px;
    height: 20px;
    text-align: center;
    border-right: 1px solid #cdcdcd;
}
.navigation ul li:first-child {
    border-left: 1px solid #cdcdcd;
}
.navigation ul li a {
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
    font-size: 14px;
    line-height: 18px;
    text-decoration: none;
    color: #3d3d3d;
    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;
}
.navigation ul li a.active,
.navigation ul li a:hover {
    border-bottom: 1px solid #2ab6e4;
}
.navigation ul li.home {
    width: 160px;
}
.navigation ul li.ranking {
    width: 260px;
}
.navigation ul li.report {
    width: 210px;
}
.navigation ul li.report02 {
    width: 230px;
}
.navigation ul li.about {
    width: 140px;
}
.navigation ul li .icon {
    margin-top: -4px;
    margin-right: 6px;
    vertical-align: middle;
}

/* ================================================== */
/* Footer
/* ================================================== */
#footer-main {
    margin: 0;
    padding: 40px 0 20px 0;
    font-size: 12px;
}
#footer-main h3 {
    margin-bottom: 25px;
    font-size: 12px;
    font-weight: bold;
    text-align: left;
    color: #4487cb;
}
#footer-main h3 a {
    padding: 0.3em 1em;
    color: #2ab6e4;
    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:hover {
    border-bottom: 1px solid #2ab6e4;
}
#footer-main ul {
    float: left;
    padding-left: 1em;
    width: 100%;
}
#footer-main ul li {
    float: left;
    margin-bottom: 20px;
    width: 100%;
}
#footer-main ul li a {
    text-decoration: none;
    color: #383838;
    -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 {
    float: left;
    margin: 0;
    padding: 0 15px;
    width: 260px;
}
#footer-main .block-second {
    float: left;
    margin: 0;
    padding: 0 15px;
    width: 520px;
}
#footer-main .block-second ul {
    width: 50%;
}
#footer-main .block-third {
    float: left;
    margin: 0;
    padding: 0 15px;
    width: 220px;
}
#footer-main .block-third h3 {
    margin-bottom: 15px;
}
#footer-main .block-third ul li {
    margin-bottom: 10px;
}
#footer-main .icon {
    margin-right: 8px;
}

/* Copyright */
#footer-bottom {
    margin: 0;
    padding: 10px 0;
    text-align: center;
    font-size: 11px;
    color: #ffffff;
}
#footer-bottom a {
    color: #ffffff;
    text-decoration: none;
    cursor: text;
}

/* ================================================== */
/* Key visual
/* ================================================== */
#key-visual {
    position: relative;
    margin: 0 auto;
    padding-top: 120px;
    min-width: 1060px;
    overflow-y: hidden;
}
#key-visual h2{
    width: 1200px;
    margin: 0 auto;
    text-align: center;
}
/*
#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;
}
#key-visual .key-visual-inner {
    position: relative;
    height: 782px;
    background: url(../img/key_visual.png) no-repeat center top;
}
#key-visual .key-visual-bottom {
    position: relative;
    margin: 0 auto;
    height: 357px;
    background: url(../img/key_visual_bottom_bg.png) no-repeat center top;
}
#key-visual .key-visual-bottom h2 {
    position: relative;
    display: block;
    margin: 0 auto;
    width: 1000px;
}
*/
/* Summary */
.summary {
  /*background:url(../img/summary_bg.png) repeat left top;*/
  background-color: #fff;
  width: 1000px;
  margin: 0 auto 30px auto;
  padding: 20px 60px;
  box-sizing:border-box;
  bottom: 0;
  z-index: 10;
  border: 4px solid #059352;
  border-radius: 12px;
  box-sizing: border-box;
}
.summary:before,
.summary:after {
  content: " ";
  display: table;
  position:relative;
}
.summary:after {
  clear: both;
}
.summary-inner {
  margin: 0;
  line-height: 1.3;
}
.summary h2:first-child{
  margin-top: 0;
}
.summary h2 {
  margin: 15px 0 15px 0;
  padding: 0;
  font-size: 26px;
  text-align: center;
}
.summary h2 span.fc_orange{
    color: #fa4c00;
}
.summary p {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}

/* Aggregate */
#aggregate {
    margin: 0;
    padding: 0;
    width: 100%;
}
#aggregate h2 {
    margin: 0;
    padding: 0;
}
#aggregate .waku {
    margin: 0 0 20px 0;
    padding: 30px;
    line-height: 1.6;
    background: #ffffff;
    border: 3px solid #2ab6e4;
}
#aggregate .desc {
    margin: 0;
    padding: 0;
}
#aggregate .point {
    margin: 0;
    padding: 0;
    list-style: none;
}
#aggregate .point li {
    display: inline-block;
    margin-right: 30px;
}
#aggregate .rank {
    margin-right: 5px;
    font-size: 22px;
    font-weight: bold;
}
#aggregate strong {
    font-size: 22px;
    color: #fa5d08;
}

/* main title */
.main-title {
    margin: 0 0 20px 0;
    padding: 0;
    width: 100%;
}

/* ================================================== */
/* Content layout
/* ================================================== */
.content {
    float: left;
    margin: 0;
    padding: 0;
    width: 725px;
    background-color: #fff;
}

.sidebar {
    float: right;
    margin: 0;
    padding: 0;
    width: 250px;
    background-color: #fff;
}

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

.widget .sidebar-title a {
    display: block;
    border: 1px solid transparent;
    text-decoration: none;
    color: #000;
    -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;
    border: 1px solid #ff7687;
    color: #ff7687;
}

/* ================================================== */
/* 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: #ecf4fc;
}
.line-half span {
    position: absolute;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    width: 440px;
    height: 4px;
    background-color: #2ab6e4;
}

/* List arrow */
.list-arrow:before,
.list-arrow:after {
    content: " ";
    display: none;
}
.list-arrow:after {
    clear: both;
}
.list-arrow li {
    padding-left: 10px;
    background: url(../img/list_arrow.png) no-repeat 0 5px;
}

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

/* Banner PR */
.banner-pr {
    margin: 0;
    padding: 0;
}
.banner-pr a {
    display: block;
    margin: 0;
    padding: 0;
    background-color: #ffffff;
}
.banner-pr 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%;
    border-bottom: 1px dashed #d3d3d3;
}
.sidebar-item-list dt {
    float: left;
    margin: 0;
    padding: 0 5px 0 0;
    width: 110px;
}
.sidebar-item-list dd {
    margin: 0 0 15px 110px;
    padding: 0;
}
.sidebar-item-list dd .ranking-icon {
    width: 26px;
}
.sidebar-item-list dd h4 {
    margin: 8px 0;
    padding: 0;
    font-size: 14px;
    font-weight: bold;
    color: #2ab6e4;
}
.sidebar-item-list dd p {
    margin: 0 0 10px 0;
    padding: 0;
    width: 100%;
    font-size: 11px;
}

/* Report box */
.sidebar-report-box {
    margin: 0;
    padding: 0 0 10px 0;
    width: 100%;
    border: 5px solid #7ecef4;
    background-color: #f2f2f2;
    border-radius: 6px;
}
.sidebar-report-box h3 {
    position: relative;
    margin: 0 0 20px 0;
    padding: 20px 0;
    width: 100%;
    font-size: 16px;
    line-height: 1.2;
    font-weight: bold;
    color: #402020;
    background-color: #fff;
    letter-spacing: 0px;
}
.sidebar-report-box h3 a {
    text-decoration: none;
    color: #402020;
}
.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 #402020;
}
.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: #402020;
    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: #c64545;
    color: #fff;
    border-radius: 50%;
    letter-spacing: 0px;
}
.sidebar-report-box .report-label {
    margin: 10px;
    padding: 3px 0;
    text-align: center;
    color: #ffffff;
    letter-spacing: 5px;
    border-radius: 10px;
    background-color: #4487cb;
}

/* 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[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: #fa5d08 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: #2ab6e4; background-color: rgba(42,182,228,0.55);
		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: #2ab6e4; background-color: rgba(42,182,228,0.7);
		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(../img/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)"; }


/* ================================================== */
/* Chart
/* ================================================== */
.chart {
    position: relative;
    margin: 0;
    padding: 0;
    height: 250px;
    width: 350px;
    background-image: url(../img/chart/chart_bg.png);
    background-repeat: no-repeat;
    background-position: left 0 bottom 31px;
}
.chart [class*=barchart] {
    position: absolute;
    margin: 0;
    padding: 0;
    bottom: 0;
    left: 50px;
    width: 50px;
}
.chart [class*=barchart] .rank {
    margin: 0 auto 3px auto;
    padding: 0;
    width: 50px;
    height: 96px;
}
.chart [class*=barchart] .bar {
    margin: 0 auto;
    padding: 0;
    width: 30px;
    background-color: #7fc584;
}
.chart [class*=barchart] .subject {
    margin: 5px 0 0 0;
    padding: 0;
    height: 32px;
    font-size: 12px;
    line-height: 16px;
    text-align: center;
}
.chart .barchart1 {
    left: 50px;
}
.chart .barchart2 {
    left: 125px;
}
.chart .barchart3 {
    left: 200px;
}
.chart .barchart4 {
    left: 250px;
    width: 100px;
}

/* ================================================== */
/* Shindan contents
/* ================================================== */
.shindan-index {
    position: relative;
    margin: 0;
    padding: 0;
    width: 725px;
    height: 317px;
    background: #fff url(../img/shindan/shindan_index.png) no-repeat 0 0;
}
.shindan-index h3 {
    position: absolute;
    margin: 0;
    padding: 0;
    top: 150px;
    left: 160px;
    font-size: 29px;
    line-height: 1;
    font-weight: normal;
    letter-spacing: 4px;
}
.shindan-index h3 span {
    font-size: 48px;
}
.shindan-index .btn {
    position: absolute;
    padding: 14px 56px 12px 56px;
    bottom: 46px;
    left: 220px;
    width: 284px;
    font-size: 30px;
    line-height: 30px;
}
.shindan-index .btn-primary {
    background-color: #4487cb;
    box-shadow: 0 3px 0 #326699;
}
.shindan-index .btn-primary:hover {
    box-shadow: 0 0 0 #326699;
}
.shindan-index .hvr-button:active {
    background-color: #326699;
    box-shadow: 0 0 0 #326699;
}
.shindan-index .start {
    position: absolute;
    margin: 0;
    padding: 0;
    bottom: 50px;
    left: 260px;
    font-size: 51px;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 2px;
    color: #4487cb;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}

/* shindan question */
.shindan-box {
    position: relative;
    margin: 30px 0 0 0;
    padding: 15px;
    background: url(../img/ranking/ranking_box_bg.png) repeat left top;
    border-radius: 4px;
}
.shindan-box-inner {
    position: relative;
    margin: 0;
    padding: 0;
    border: 1px solid #f9f1e5;
    background-color: #ffffff;
    border-radius: 4px;
}
.shindan-object {
    position: absolute;
    width: 725px;
    height: 58px;
    top: -30px;
    left: 0;
    background: url(../img/shindan/shindan_object.png) no-repeat 0 0;
}

/* question box */
.question-box {
    position: relative;
    margin: 0;
    padding: 0;
    width: 695px;
    height: 370px;
    clear: both;
}
.question-item {
    position: absolute;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    width: 695px;
    height: 370px;
    background-color: #eee;
    display: none;
}

.question-item .item-head {
    position: relative;
    margin: 0;
    padding: 0;
    height: 100px;
}
.question-item .item-head:before,
.question-item .item-head:after {
    content: " ";
    display: table;
}
.question-item .item-head:after {
    clear: both;
}
.question-item .item-head .number {
    position: absolute;
    margin: 0;
    padding: 10px 10px 0 0;
    top: -24px;
    left: 10px;
    width: 117px;
    height: 127px;
    font-family: serif;
    font-size: 40px;
    line-height: 127px;
    text-align: center;
    background: url(../img/shindan/number_ribbon.png) no-repeat 0 0;
    color: #ffffff;
}
.question-item .item-head .title {
    float: left;
    position: absolute;
    margin: 0;
    padding: 0;
    top: 20px;
    left: 160px;
}

/* question */
.question-item .item-question {
    margin: 0;
    padding: 20px 30px;
    height: 100px;
    font-size: 28px;
    overflow: hidden;
}
.question-item .item-question p {
    margin: 0;
    padding: 0;
}

/* button */
.question-item .item-answer {
    margin: 0;
    padding: 0 30px;
}

/* grid */
.item-answer .row {
    margin: 0 0 20px 0;
    padding: 0;
}
.item-answer .row:before,
.item-answer .row:after {
    content: " ";
    display: table;
}
.item-answer .row:after {
    clear: both;
}
.item-answer .col-full {
    margin: 0;
    padding: 0;
    width: 100%;
}
.item-answer .col-half {
    float: left;
    margin: 0 35px 0 0;
    padding: 0;
    width: 295px;
}
.item-answer .col-half:last-child {
    margin-right: 0;
}

/* button */
.item-answer .btn-answer {
    display: block;
    margin: 0;
    padding: 0;
    height: 70px;
    font-size: 28px;
    line-height: 70px;
    text-align: center;
    text-decoration: none;
    color: #fff;
    background: #409fe1; /* Old browsers */
    background: -moz-linear-gradient(top,  #409fe1 0%, #2381c3 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #409fe1 0%,#2381c3 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #409fe1 0%,#2381c3 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#409fe1', endColorstr='#2381c3',GradientType=0 ); /* IE6-9 */
}
.item-answer .btn-answer:hover {
    background: -moz-linear-gradient(top,  #2381c3 0%, #409fe1 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #2381c3 0%,#409fe1 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #2381c3 0%,#409fe1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2381c3', endColorstr='#409fe1',GradientType=0 ); /* IE6-9 */
}

/* button color */
.item-answer .btn-answer.orange {
    background: #f39957; /* Old browsers */
    background: -moz-linear-gradient(top,  #f39957 0%, #ed883d 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #f39957 0%,#ed883d 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #f39957 0%,#ed883d 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f39957', endColorstr='#ed883d',GradientType=0 ); /* IE6-9 */
}
.item-answer .btn-answer.orange:hover {
    background: -moz-linear-gradient(top,  #ed883d 0%, #f39957 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #ed883d 0%,#f39957 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #ed883d 0%,#f39957 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ed883d', endColorstr='#f39957',GradientType=0 ); /* IE6-9 */
}

.item-answer .btn-answer.green {
    background: #80bc59; /* Old browsers */
    background: -moz-linear-gradient(top,  #80bc59 0%, #6ea34b 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #80bc59 0%,#6ea34b 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #80bc59 0%,#6ea34b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80bc59', endColorstr='#6ea34b',GradientType=0 ); /* IE6-9 */
}
.item-answer .btn-answer.green:hover {
    background: -moz-linear-gradient(top,  #6ea34b 0%, #80bc59 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #6ea34b 0%,#80bc59 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #6ea34b 0%,#80bc59 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6ea34b', endColorstr='#80bc59',GradientType=0 ); /* IE6-9 */
}

.item-answer .btn-answer.lime {
    background: #6dd59e; /* Old browsers */
    background: -moz-linear-gradient(top,  #6dd59e 0%, #5cc18b 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #6dd59e 0%,#5cc18b 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #6dd59e 0%,#5cc18b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6dd59e', endColorstr='#5cc18b',GradientType=0 ); /* IE6-9 */
}
.item-answer .btn-answer.lime:hover {
    background: -moz-linear-gradient(top,  #5cc18b 0%, #6dd59e 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  #5cc18b 0%,#6dd59e 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  #5cc18b 0%,#6dd59e 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5cc18b', endColorstr='#6dd59e',GradientType=0 ); /* IE6-9 */
}

/* background image */
.question-item.bg01 {
    background: url(../img/shindan/image01.png) no-repeat 100% 0
}
.question-item.bg02 {
    background: url(../img/shindan/image02.png) no-repeat 100% 0
}
.question-item.bg03 {
    background: url(../img/shindan/image03.png) no-repeat 100% 0
}

.question-item.bg04 {
    background: url(../img/shindan/image04.png) no-repeat 100% 0
}

/* result
============================== */
.shindan-result {
    position: relative;
    margin: 0;
    padding: 80px 0 0 40px;
    width: 725px;
    height: 261px;
    background: url(../img/shindan/shindan_result_title.png) no-repeat 0 0;
}
.shindan-result h2 {
    margin: 0;
    padding: 0;
    font-size: 42px;
    line-height: 1.2;
    font-weight: normal;
    text-align: center;
    letter-spacing: 3px;
}

/* ================================================== */
/* Page title
/* ================================================== */
.page-title {
    position: relative;
    margin: 0 auto;
    padding: 15px 0 10px 0;
    width: 1060px;
    text-align: center;
    background-color: #4487cb;
}
.page-title h2 {
    margin: 0;
    padding: 0;
    font-size: 33px;
    line-height: 1.2;
    font-weight: normal;
    color: #fff;
}
.page-title h2.hikaku {
    padding-left: 60px;
}
.page-title h2 span {
    display: block;
    margin-bottom: 5px;
    line-height: 1;
    letter-spacing: 5px;
}
.page-title h2 strong {
    display: block;
    font-size: 44px;
    line-height: 1;
    font-weight: normal;
    letter-spacing: 3px;
}
.page-title .latest-edition {
    position: absolute;
    margin: 0;
    padding: 0;
    top: -5px;
    left: 0;
    width: 130px;
    height: 120px;
}

/* ================================================== */
/* Section
/* ================================================== */
.section-title {
    margin: 0 0 20px 0;
    padding: 10px;
    text-align: center;
    background-color: #2ab6e4;
    color: #fff;
    border-radius: 6px;
}
.section-title h2 {
    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: #f34372;
}

/* ================================================== */
/* 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: 490px;
    border: 1px solid #dedede;
    background-color: #fbfeff;
    border-radius: 4px;
}
.top-ranking-box:last-child {
    margin-right: 0;
}
.top-ranking .top-ranking-head {
    margin: 0;
    padding: 0;
    height: 160px;
}
.top-ranking .top-ranking-head .item {
    margin: 0 0 0 30px;
    padding: 10px 0;
    width: 100px;
}
.top-ranking .top-ranking-head h2 {
    margin: 5px 0 25px 0;
    padding: 0;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    color: #4487cb;
}
.top-ranking .top-ranking-head a {
    color: #343434;
    font-weight: bold;
    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: 260px;
}
.top-ranking .top-ranking-body .graph {
    margin: 0 auto;
    padding: 0;
    width: 155px;
}
.top-ranking .top-ranking-body h3 {
    margin: 20px 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 .work {
    margin-bottom: 5px;
    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 .top-ranking-body .phone {
    margin: 0 0 20px 0;
    padding: 0;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    color: #4487cb;
}
.top-ranking .top-ranking-body p a {
    text-decoration: none;
    color: #4487cb;
}
.top-ranking-box .btn {
    display: block;
    text-align: center;
}
.top-ranking-more {
    margin: 50px 0;
    padding: 0;
    text-align: center;
}

/* ================================================== */
/* Ranking
/* ================================================== */
.ranking-page {
    margin: 0;
    padding: 0 0 30px 0;
}
.ranking-page h2 {
    margin: 0;
    padding: 0;
}

.ranking-box {
    position: relative;
    margin: 30px 0 60px 0;
    padding: 15px;
    background: url(../img/ranking/ranking_box_bg.png) repeat top left;
    border-radius: 4px;
}
.ranking-box:last-child {
    margin-bottom: 0;
}
.ranking-inner {
    position: relative;
    margin: 0;
    padding: 15px 10px;
    border: 1px solid #f9f1e5;
    background-color: #ffffff;
    border-radius: 4px;
}
.ranking-object {
    position: absolute;
    width: 725px;
    height: 58px;
    top: -30px;
    left: 0;
    background: url(../img/ranking/ranking_object.png) no-repeat 0 0;
}
.ranking-box .ranking-icon {
    float: left;
    margin: 0 8px 0 0;
    padding: 0;
    width: 117px;
    height: 108px;
}
.ranking-box .ranking-title {
    float: left;
    margin: 20px 0 0 0;
    padding: 10px 0;
    width: 545px;
    background-color: #059352;
    color: #fff;
    border-radius: 6px;
}
.ranking-box .ranking-title h2 {
    margin: 5px 0 10px 0;
    padding: 0 23px;
    font-size: 30px;
    line-height: 30px;
    letter-spacing: 2px;
}
.ranking-box .ranking-header {
    margin: 0 0 30px 0;
    padding: 20px 10px 0 10px;
    width: 100%;
    clear: both;
}
.ranking-box .ranking-header:before,
.ranking-box .ranking-header:after {
    display: table;
    content: " ";
}
.ranking-box .ranking-header:after {
    clear: both;
}
.ranking-box .ranking-header h3 {
    margin: 0 0 25px 0;
    padding: 0;
    font-size: 22px;
}
.ranking-box .ranking-header-left {
    float: left;
    margin: 0;
    padding: 20px 0 0 0;
    width: 260px;
}
.ranking-box .ranking-header-right {
    float: right;
    margin: 0;
    padding: 0 0 0 10px;
    width: 390px;
}
.ranking-box .ranking-description {
    margin: 0;
    padding: 20px 10px;
    background-color: #f3f3f3;
}
.ranking-box .ranking-description h3 {
    margin: 0 0 20px 0;
    padding: 0;
    text-align: center;
}
.ranking-box .ranking-description ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.ranking-box .ranking-description ul li {
    margin: 0 0 10px 0;
    padding: 0 0 0 30px;
    font-size: 16px;
    line-height: 1.4;
    background: url(../img/icons/icon_check.png) no-repeat 0 2px;
    letter-spacing: 1px;
}
.ranking-box .ranking-description ul li:last-child {
    margin-bottom: 0;
}
.ranking-box .ranking-description ul li strong {
    margin: 0 0.1em;
    padding: 0;
    font-size: 18px;
    line-height: 1.2;
    font-weight: bold;
    color: #4487cb;
}
.ranking-box .ranking-tel{
    border: #f3f3f3 solid 4px;
    border-radius: 10px;
    padding:15px;
    margin: 0 12px 10px 12px;
    font-size:20px;
}
.ranking-box .ranking-tel__dl{
    display:table;
    margin:0 auto;
}
.ranking-box .ranking-tel__dl:last-child{
    margin-bottom:0;
}
.ranking-box .ranking-tel__dl dt,
.ranking-box .ranking-tel__dl dd{
    display: table-cell;
    vertical-align: middle;
}
.ranking-box .ranking-tel__dl .number{
  font-size: 36px;
  color: #FF0004;
  font-weight: bold;
}

.ranking-box .ranking-pr {
    margin: 0 10px;
    padding: 10px 0;
    text-align: center;
}

/* action */
.ranking-action {
    margin: 0 0 20px 0;
    padding: 0 10px;
}
.ranking-action .btn {
    margin-right: 18px;
    padding: 20px;
    width: 313px;
    font-size: 22px;
    line-height: 1;
}
.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 35px;
    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: #efe8d6;
    border-radius: 6px;
}
.cobwebchart-right .point {
    margin: 0;
    padding: 0;
}
.cobwebchart-right .col1 {
    font-size: 56px;
    line-height: 1;
    font-weight: bold;
    color: #f23064;
    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: #efe8d6;
    color: #625023;
}
.cobwebchart-right tbody tr td {
    font-size: 18px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    color: #625023;
}

/* tachograph */
.tachograph {
    margin: 0 0 30px 0;
    padding: 0 10px;
}
.tachograph:before,
.tachograph:after {
    display: table;
    content: " ";
}
.tachograph:after {
    clear: both;
}
.tachograph .left {
    float: left;
    margin: 0;
    padding: 0;
    width: 50%;
}
.tachograph .right {
    float: right;
    margin: 0;
    padding: 0;
    width: 50%;
}
.tachograph table {
    margin: 10px 0 0 0;
    width: 100%;
}
.tachograph tbody tr th,
.tachograph tbody tr td {
    padding: 12px 20px 10px 20px;
    border: 1px solid #ccc6b5;
    text-align: left;
}
.tachograph thead tr th {
    padding: 12px 20px 10px 20px;
    font-size: 14px;
    line-height: 18px;
    font-weight: normal;
    border: 1px solid #ccc6b5;
    background-color: #efe8d6;
    color: #625023;
}
.tachograph tbody tr th {
    width: 160px;
    font-size: 14px;
    line-height: 18px;
    font-weight: normal;
    background-color: #efe8d6;
    color: #625023;
}
.tachograph tbody tr td {
    font-size: 18px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    color: #625023;
}
.tachograph a {
    font-size: 12px;
    text-align: right;
    color: #3d3d3d;
}


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

/* ================================================== */
/* Ranking details faq
/* ================================================== */
.faq-box {
    margin: 0 0 50px 0;
    padding: 0;
}
.faq-box .faq-title {
    position: relative;
    margin: 0 0 25px 0;
    padding: 18px 0 10px 0;
    background-color: #2ab6e4;
    color: #fff;
    border-radius: 6px;
}
.faq-box .faq-title h2 {
    margin: 0 0 8px 0;
    padding: 0 0 0 90px;
    font-size: 24px;
    line-height: 24px;
    font-weight: normal;
    letter-spacing: 2px;
}
.faq-box .faq-title .question {
    position: absolute;
    margin: 0;
    padding: 0;
    top: -8px;
    left: 10px;
    width: 64px;
    height: 64px;
    line-height: 64px;
    text-align: center;
    border: 2px solid #2ab6e4;
    background-color: #fff;
    color: #2ab6e4;
}
.faq-box .faq-title .question span {
    font-size: 27px;
    line-height: 27px;
    font-weight: bold;
    letter-spacing: 2px;
}
.faq-box .faq-title .question:after {
    content: " ";
    position: absolute;
    display: block;
    top: -2px;
    right: -9px;
    width: 0;
    height: 0;
    border-bottom: 7px solid #254c73;
    border-right: 7px solid transparent;
    background: 0;
}
.faq-box .faq-body {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 1.6;
}
.faq-box .faq-body .photo {
    margin: 0 30px 20px 30px;
    padding: 0;
    width: 250px;
    height: 220px;
}
.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: 0;
}
.ranking-voice h2 {
    margin: 20px 0 15px 0;
    padding: 0;
    font-size: 28px;
    line-height: 1;
    font-weight: normal;
}
.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: 690px;
    border-bottom: 1px dotted #000;
}
.ranking-voice .voice-box:last-child {
    border: none;
}
.ranking-voice .voice-box h3 {
    margin: 0;
    padding: 0;
}
.ranking-voice .voice-box h3 .sex {
    margin-left: 4px;
    margin-right: 4px;
    color: #f23064;
}
.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: 1060px;
}
.ranking-bottom iframe {
    width: 1060px;
    height: 850px;
}

/* ================================================== */
/* Hikaku
/* ================================================== */
#hikaku-main {
    margin: 0;
    padding: 20px 0 0 0;
    background-color: #fcf2f3;
}
#hikaku-main .page-title {
    margin: 0;
}
#hikaku-main #main-content {
    margin: 0;
}

/* ================================================== */
/* Report
/* ================================================== */
.report {
    margin: 0;
    padding: 0;
}
.report02-title,
.report-title {
    position: relative;
    margin: 0 0 40px 0;
    padding: 70px 0 0 0;
    width: 725px;
    height: 235px;
    background: url(../img/report_title_bg.png) no-repeat 0 0;
}
.report-title h2 {
    position: relative;
    margin: 30px 0 0 170px;
    padding: 0;
    font-size: 30px;
    line-height: 1.4;
    font-weight: bold;
}
.report-title h2.index {
    margin-left: 0;
    padding-left: 40px;
}
.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: #f23064;
    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: #f23064;
}

.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: #2ab6e4;
}
.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;
}
/* 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 #d4f6fa;
}
.circle-title .circle {
    position: absolute;
    display: block;
    margin: 0;
    padding: 0;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background-color: #16c4f0;
    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(0,0,0,0.25);
    border-radius: 50%;
}

/* ================================================== */
/* About
/* ================================================== */
#company {
    margin-bottom: 50px;
}
#about {
    margin-bottom: 50px;
}
#about dt {
    font-weight: bold;
    color: #2ab6e4;
}
#inquiry h3 {
    color: #2ab6e4;
}
.display_none{display:none !important;}