@charset "utf-8";

/*********************
 base
*********************/
 
*{ padding:0; margin:0; }
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	     -o-box-sizing: border-box;
	    -ms-box-sizing: border-box;
	        box-sizing: border-box;
}
html,body{ height:100%; }
body{
	-webkit-text-size-adjust: 100%;
	width:100%;
	font-family: Noto Sans Japanese,Noto Sans JP,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", arial, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-size:16px;
	line-height:1.8em;
	letter-spacing: .09em;
	color: #333;
	background-size: cover;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.mincho{ font-family: "Noto Serif JP",serif; }
img{ vertical-align:middle; }
ul{ list-style-type: none; }
a{ text-decoration:none; }
.underline{ background:linear-gradient(transparent 60%, #c6d8ef 40%); }


/*********************
 flexbox
*********************/
.flexbox{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.flexbetween{
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.flextop{
	-webkit-box-align: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: flex-start;
	align-items: flex-start;
}

/*********************
 link opacity
*********************/
.op{
	transition:0.3s;
}
.op:hover{
	opacity:0.5;
}

/*********************
 header
*********************/
header{
	background:#0068b7;
	text-align:center;
	padding:15px 0 0;
}
header img{
	width:80%;
	max-width:400px;
}
header nav{
	width:100%;
	margin:15px auto 0;
	padding:10px;
	background:#ecf7fd;
	text-align:center;
}
header nav div{
	width:800px;
	max-width:100%;
	margin:0 auto;
	text-align:left;
	font-size:0.8em;
}
header nav a{
	color: #333;
	text-decoration:underline;
}
/*********************
 ranking
*********************/
#ranking article{
	max-width:1024px;
	padding:30px 15px;
	margin:0 auto;
	text-align:center;
}
#ranking img.imgtop{
	width:70%;
	padding:50px 0 15px;
}
#ranking .rankbox{
	border:3px solid #0068b7;
	border-top:10px solid #0068b7;
	position: relative;
	padding:30px 20px;
	margin-top:80px;
}
#ranking .rankbox .icon{
	position: absolute;
	z-index:10;
	width:130px;
	top:-70px;
	right:20px;
}
#ranking .rankbox .rank_no{
	position: absolute;
	z-index:10;
	width:60px;
	height:60px;
	line-height:60px;
	font-size:30px;
	top:-30px;
	right:20px;
	background:#0068b7;
	color:#fff;
	border-radius:50%;
}
#ranking .rankbox .thumb{
	width:300px;
}
#ranking .rankbox .shop{
	padding:20px;
	text-align:left;
}
#ranking .rankbox .shop h1{
	display:inline-block;
	color:#0068b7;
	font-size:1.8em;
	padding-bottom:5px;
	border-bottom:8px solid #9fd9f6;
	margin-bottom:30px;
	max-width:calc(100% - 130px);
}
#ranking .rankbox .shop font{
	background:linear-gradient(transparent 60%, #9fd9f6 40%);
	font-weight:bold;
}
#ranking .rankbox .shop iframe{
	margin-top:20px;
	width:100%;
	height:200px;
	border:1px solid #0068b7;
}
#ranking .rankbox .shop h2{
	font-size:1em;
	font-weight:normal;
}
#ranking .rankbox .shosai{
	margin:30px 0;
}
#ranking .rankbox p{
	width:12%;
	background:#9fd9f6;
	text-align:center;
	padding:15px 0;
	font-size:0.8em;
	font-weight:bold;
}
#ranking .rankbox span{
	width:12%;
	background:#cfecfa;
	text-align:center;
	padding:15px 0;
	color:#0068b7;
	font-size:0.8em;
	margin-right:5px;
	font-weight:bold;
}
#ranking .rankpage_btn{
	max-width:100%;
	margin:40px 0 60px;
}
#ranking .linkbtn{
	max-width:100%;
}

/*********************
 company
*********************/
#company{
	line-height:1.8em;
}
#company article{
	max-width:800px;
	margin:0 auto;
	padding:40px 0;
	text-align:center;
}
#company h1{
	font-size:1.8em;
	border-bottom: 4px solid #0068b7;
	margin-bottom:20px;
	padding-bottom:20px;
}
#company article ul{
	display:block;
	margin:0 10px;
	padding:20px 0;
}
#company article li{
	padding-top:10px;
	text-align:left;
}
#company article li b{
	width:150px;
}
#company article li p{
	width:calc(100% - 150px);
}


/*********************
 footer
*********************/
footer{
	background:#0068b7;
	width:100%;
	margin:auto auto 0;
	text-align:center;
	font-size:0.8em;
	color:#fff;
	padding: 15px 0;
}
footer a{
	color:#fff;
	text-decoration:underline;
}
