@charset "UTF-8";
body{
	font-family:'NotoSansJP',sans-serif;
	background-color:#f6f5f4;
}
.wrapper{
	height:100%;
	margin:auto;
}
h1 a {
	text-decoration: none;
	color: #000000;
	display:inline;
}
img.m-2{
	width: 450px;
}
#menubox{
	margin:auto;
	text-align:center;
	width:100%;
}
#menu{
	display:grid;
	grid-template-columns:repeat(4,25%);
	box-sizing:border-box;
}
#menu > div{
	background-color:#dcdcdc;
	text-align:center;
	margin:2px;
}
/* リンク全体を囲むdiv要素のスタイル */
.link-button {
	display: inline-block;
	width: 100%;
	text-decoration: none; 
}
/* リンク自体をブロック要素として表示 */
.link-button div {
	display: block;
}
/* マウスを乗せた時のスタイル変化 */
.link-button:hover {
	background-color: #009BBF ; /* マウスを乗せた時の背景色を変更 */
	color: #FFFFFF ;
}
.main{
	width:100%;
	height:100%;
}
.content{
	padding-right: 5px;
}
.side{
	width: 100%;
	border:1px solid;
	margin-top:5px;
	text-align:center;
	border-color:#dcdcdc;
	padding:3px;
}
.side img {
	margin: 0;
}
.footer{
	margin-top:5px;
	padding-left:10px;
	padding-top:10px;
	padding-bottom: 0.5em;
	background-color:#000000;
	color:#ffffff;
}
.content{
	border:1px solid;
	margin-top:5px;
	border-color:#dcdcdc;
	padding-left:10px;
	padding-top:10px;
}
.copyright {
	text-align: center;
}
.copyright a {
	color: #FFFFFF;
	text-decoration: none;
}
#page_top {
	width: 50px;
	height: 50px;
	position: fixed;
	right: 0;
	bottom: 50px;
	background: #009BBF;
	opacity: 0.6;
	border-radius: 50%;
}
#page_top a {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
}
#page_top a::before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f102';
	font-size: 25px;
	color: #fff;
	position: absolute;
	width: 25px;
	height: 25px;
	top: -5px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}
.copyright p{
	margin-bottom: 0.5em;
}
.footerlink a {
	text-decoration: none;
	color: #FFFFFF;
}
.faq p{
	padding: 5px;
	background-color: #dcdcdc;
}
.ranking-wrapper {
	width: 100%;
	height: 55px;
	border: 1px solid #dcdcdc;
}
.ranking-title {
	width: 100%;
}
.ranking {
	margin: 0 auto;
	width: 300px;
	height: 100%;
	padding: 2px;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
}
.producticon {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	width: 50px;
	margin-right: 5px;
	float: left;
}
.ranking img {
	height: auto;
}
.ranking-ea-name {
	width: 100%;
	height: 49px;
	font-size: small;
	text-size-adjust: 100%;
	display:table-cell;
	vertical-align:middle;
}
#company_profile_table td {
	border-collapse: collapse;
	border: solid 1px #dcdcdc;
	padding: 5px;
	text-align: center;
	vertical-align: middle;
}
blockquote {
    position: relative;
    padding: 10px 15px 10px 60px;
    box-sizing: border-box;
    font-style: italic;
    background: #f5f5f5;
    color: #777777;
    border-left: 4px solid #009BBF;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}
blockquote:before{
    display: inline-block;
    position: absolute;
    top: 15px;
    left: 15px;
    content: "\f10d";
    font-family: "Font Awesome 5 Free";
    color: #009BBF;
    font-size: 30px;
    line-height: 1;
    font-weight: 900;
}
blockquote .bqtitle {
	padding-top: 24px;
}
blockquote p {
    padding: 0;
	font-size: 0.8em;
    margin: 7px 0;
    line-height: 1.7;
}
blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}
@media screen and (min-width: 960px) {
body{
	font-family:'NotoSansJP',sans-serif;
	background-color:#f6f5f4;
}
.wrapper{
	max-width:1380px;
	height:100%;
}
#menubox{
	margin:auto;
	text-align:center;
	width:80%;
}
#menu{
	display:grid;
	grid-template-columns:repeat(4,25%);
	box-sizing:border-box;
}
#menu > div{
	background-color:#dcdcdc;
	text-align:center;
	margin:5px;
}
.main{
	width:80%;
	height:100%;
}
.side{
	width:20%;
	margin-top:0;
	margin-left:5px;
}
article{
	display:flex;
}
.footer{
	margin-top:5px;
	padding-left:10px;
	padding-top:10px;
}
.content{
	margin-top:0px;
}
.ranking {
	width: 100%;
}
}


.page_title{
	margin-top:24px;
	margin-bottom:24px;
}

/* takumi >>> */
div.flexbox-jbetween-vcenter {
	display: flex;
	width: 100%;
	height: auto;
	justify-content:space-between;
	align-items:center;
}

h2.v-same-margin {
margin-top: 24px;
}
.footer-li {
	margin-top: 0px;
	margin-bottom: 5px;
}
/* takumi <<< */

#page_top {
	width: 50px;
	height: 50px;
	position: fixed;
	right: 0;
	bottom: 50px;
	background: #009BBF;
	opacity: 0.6;
	border-radius: 50%;
}
#page_top a {
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
}
#page_top a::before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: '\f102';
	font-size: 25px;
	color: #fff;
	position: absolute;
	width: 25px;
	height: 25px;
	top: -5px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}
.clearfix {
	clear:both;
}