* {
margin: 0;
padding: 0;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
html {
box-sizing: border-box;
}
body {
font-size: 16px;
font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
background-color: #fff;
min-height: 100vh;
position: relative;
}
img {
vertical-align: top;
border-width: 0px;
}
a {
font-size: 16px;
color: #333;
font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
font-weight: normal;
text-decoration: none;
}
li {
list-style: none;
}
h1 span{
display: inline-block;
}
.under-title {
text-align: left;
letter-spacing: 0.05em;
line-height: 1.6;
}
#page-top {
position: fixed;
right: 20px;
bottom: 12px;
}
.rank-word,.rank-country {
text-align: left;
padding: 0 6px;
margin-bottom: 6px;
}
.rank-word {
line-height: 1.4em;
}
.rank-pic {
position: relative;
width: 100%;
margin-bottom: 12px;
}
.tube-icon {
position: absolute;
bottom: 16px;
right: 8px;
}
.snslogo {
display: flex;
flex-wrap: wrap;
align-items: center;
height: 68px;
margin-bottom: 20px;
}
.snslogo img {
padding: 10px;
background-color: #fff;
display: block;
margin-right: 12px;
border: 1px #ccc solid;
border-radius: 6px;
width:60px;
height: 60px;
}
.snslogo span a {
width: 100%;
height: 100%;
display: block;
}
small {
font-size: 16px;
}
@media screen and (max-width: 520px) {
body {
padding-bottom: 150px;
}
.main-contents {
text-align: center;
margin: 8px auto 40px;
width:92%;
}
ol {
text-align: left;
margin-bottom: 28px;
border-bottom: 8px #ededed solid;
padding-bottom: 8px;
}
.breadcrumb {
list-style: none;
}
.breadcrumb li {
display: inline-block;
list-style: none;
vertical-align: top;
}
.breadcrumb li:after {
content: '>';
}
.breadcrumb li:last-child:after {
content: '';
}
.breadcrumb li a {
display: inline-block;
text-decoration: none;
font-weight: bold;
vertical-align: top;
}
.breadcrumb span {
vertical-align: top;
}
.chapter {
font-size: 21px;
text-align: left;
margin-bottom: 20px;
width: 100%;
padding-bottom: 8px;
border-bottom: 2px solid #4C8855;
}
footer {
width: 100%;
position: absolute;
bottom: 0;
background-color: #333;
color: #fff;
height: 150px;
}
footer a {
color: #fff;
}
footer ul {
margin: 20px;
}
footer li {
margin-bottom: 16px;
}
footer li:last-child {
margin-top: 20px;
}

}
@media screen and (max-width: 1023px) and (min-width: 521px) {
body {
padding-bottom: 220px;
}
.main-contents {
margin: 12px auto 0px;
text-align: left;
width:94%;
}
ol {
text-align: left;
margin-bottom: 20px;
border-bottom: 8px #ededed solid;
}
.breadcrumb {
padding: 0;
list-style: none;
padding-bottom: 8px;
}
.breadcrumb li {
display: inline-block;
list-style: none;
vertical-align: top;
}
.breadcrumb li:after {
content: '>';
}
.breadcrumb li:last-child:after {
content: '';
}
.breadcrumb li a {
display: inline-block;
text-decoration: none;
font-weight: bold;
vertical-align: top;
}
.breadcrumb span {
vertical-align: top;
}
.chapter {
font-size: 23px;
margin-top: 0px;
margin-bottom: 20px;
padding-bottom: 8px;
border-bottom: 2px solid #4C8855;
display: block;
}
footer {
width: 100%;
position: absolute;
bottom: 0;
background-color: #333;
padding: 16px 4% 0;
text-align: left;
color: #fff;
height: 220px;
}
footer a {
color: #fff;
}
footer ul {

}
footer li {
margin-bottom: 16px;
}
footer li:last-child {
margin-right: 0;
margin-left: auto;
}
}
@media screen and (min-width: 1024px) {
body {
padding-bottom: 88px;
}
.main-contents {
margin: 8px auto 0;
width: 86%;
max-width: 1400px;
position: relative;
}
ol {
text-align: left;
padding-bottom: 8px;
margin-bottom: 48px;
border-bottom: 4px #ededed solid;
}
.breadcrumb {
list-style: none;
padding-left: 8px;
}
.breadcrumb li {
color: #666;
display: inline-block;
list-style: none;

padding-right: 32px;
position: relative;
}
.breadcrumb li::after {
content: "";
    width: 8px;
    height: 8px;
border-top: solid 1px #333;
    border-right: solid 1px #333;
    transform: rotate(45deg);
    position: absolute;
    margin-left: 12px;
    top: 9px;
}
.breadcrumb li:last-child::after {
content: '';
border: 0;
}
.breadcrumb li a {
color: #666;
display: inline-block;
text-decoration: underline;
font-weight: normal;
}
.chapter {
font-size: 25px;
color: #000000;
margin-top: 0px;
margin-bottom: 28px;
padding-bottom: 8px;
border-bottom: 2px solid #4C8855;
}
footer {
width: 100%;
position: absolute;
bottom: 0;
padding: 16px 7% 0;
text-align: right;
color: #fff;
height: 88px;
border-top: 1px #ccc solid;
background: #333;
}
footer a {
color: #fff;
}
footer ul {
display: flex;
flex-wrap: wrap;
margin: 0 auto;
}
footer li {
margin-bottom: 8px;
margin-right: 32px;
}
footer li:last-child {
margin-right: 0;
margin-left: auto;
}
}