@charset "utf-8";
/* CSS Document */

body {
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: 15px;
	line-height: 1.5;
	color: #333;
	overflow: hidden;
	text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#wrap {
	width: 100%;
	position: relative;
	height: 100%;
}

#contents {
    position: relative;
    width: 900px;
	margin: 0 auto;
	/*border-left: 1px solid #bbb;
	border-right: 1px solid #bbb;*/
}

@media screen and (max-width: 979px) {
#contents {
    width: 750px;
}
}

@media screen and (max-width: 767px) {
#contents {
    width: 90%;
}
}

@media screen and (max-width: 479px) {
#contents {
    width: 100%;
}
}

p {
	font-size: 18px;
	line-height: 1.5em;
	margin: 0 0 15px;
}

@media screen and (max-width: 979px) {
p {
	font-size: 18px;
}
}

@media screen and (max-width: 767px) {
p {
	font-size: 16px;
}
}

@media screen and (max-width: 479px) {
p {
	font-size: 16px;
}
}

@media screen and (min-width: 979px){   
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 979px){   
  .pc { display:none; }
  .sp { display:block; }
}

img {
	max-width: 100%;
}

.gray_waku {
	border: 1px solid #ccc;
	max-width: 100%;
}

.imgbox {
	margin: 0 0 20px 20px;
	padding: 0 10px;
	/*text-align:center;*/
}

.imgnft {
	margin: 0 0 20px 0;
	padding: 0 10px;
	text-align:center;
}

.solid {
	display:inline-block;
	border: 1px solid #ccc;
}


.float_left {
	float: left;
	margin: 0 0 10px;
}

/*----文字装飾----*/

b {
	font-weight: bold;
}

strong {
	font-weight: bold;
	/*color: #ee0000;*/
	/*color: #ff3d0a;*/
	/*background-color: #ff6;*/
	background: linear-gradient(180deg,#fff 0%,#fff 10%,#ff6 10%,#fff 100%);
}

.underline {
	text-decoration: underline;
}

.red {
	color: #f30202;
}

.pankuzu {
	font-size: 12px;
	margin: 0 0 5px 10px;
}

.hyouka {
	font-size: 12px;
}

.text_small {
	font-size: 12px;
}

.text_verysmall {
	font-size: 10px;
}

.text_right {
	display: block;
	text-align: right;
}

/*----テーブル----*/

table {
	clear: both;
	width: 100%;
	margin: 10px auto;/*10px auto 15px*/
	border-collapse: collapse;
	border: 1px solid #ccc;
}

th {
	background-color: #f1f1f1;
	border: 1px solid #ccc;
	text-align: center;
	font-size: 14px;
	padding: 3px 0 0;
}
@media screen and (max-width: 767px) {
th {
	background-color: #f1f1f1;
	border: 1px solid #ccc;
	text-align: center;
	font-size: 12px;
	padding: 3px 0 0;
}
}
@media screen and (max-width: 479px) {
th {
	background-color: #f1f1f1;
	border: 1px solid #ccc;
	text-align: center;
	font-size: 11px;
	padding: 3px 0 0;
}
}

td {
	border: 1px solid #ccc;
/*	text-align: center;*/
	font-size: 14px;
}

.hikaku01 th,.hikaku01 td {
	font-size: 12px;
	line-height: 1.15em;
}
@media screen and (max-width: 767px) {
.hikaku01 th,.hikaku01 td {
	font-size: 12px;
}
}
@media screen and (max-width: 479px) {
.hikaku01 th,.hikaku01 td {
	font-size: 12px;
}
}

.hikaku01 th {
	padding: 5px 3px;
}

.hikaku01 td {
	padding: 3px;
}

.hikaku01 td a {
	text-decoration: underline;
}

.hikaku01 td img {
	margin: 3px 0;
}

.hikaku01 .td_align_left {
	text-align: left;
}

.thtd_sp_hidden img {
	border: none;
	margin: 0;
}

@media screen and (max-width: 767px) {
.thtd_sp_hidden {
	display: none;
}
}

.hikaku01 th.logo_image {
	width: 18%;
}

@media screen and (max-width: 767px) {
.hikaku01 th.logo_image {
	width: 26%;
}
}

.hikaku01 th.logo_image2 {
	width: 18%;
}

@media screen and (max-width: 767px) {
.hikaku01 th.logo_image2 {
	width: 34%;
}
}

.hikaku01 th.osusume_point {
	width: 25%;
}

@media screen and (max-width: 767px) {
.hikaku01 th.osusume_point {
	width: 30%;
}
}

.hikaku_margin{
	margin: 5px 14px;
}

@media screen and (max-width: 767px) {
.hikaku_margin{
	margin: 1px 3px;
}
}

.hikaku_logo{
	display: block;
	max-width: 100%;
	border: 1px solid #d5d5d5;
}

@media screen and (min-width: 768px) {
.hikaku_adjust_width{
	width: 10%;
}
}

.hikaku_icon{
	margin-top: 5px;
}

.thtd_sp_hidden .hikaku_icon{
	margin-top: 5px;
}

.hikaku01 .symbol{
	width: 22px;
}

@media screen and (max-width: 767px) {
.hikaku01 .symbol{
	width: 18px;
}
}

/*----比較表----*/

.img_line{
	padding: 20px 0 5px 0;
}

.img_waku{
	padding: 10px 0 15px 0;
}

@media screen and (max-width: 979px) {
.text_hikaku {
	font-size: 15px;
}
}

@media screen and (max-width: 767px) {
.text_hikaku {
	font-size: 13px;
}
}

@media screen and (max-width: 479px) {
.text_hikaku {
	font-size: 13px;
}
}

/*----運営者情報----*/
.uneisha {
	width: 95%;
	margin: 20px 10px;
	padding: 0;
}

.uneisha th {
	width: 25%;
	background-color: #f1f1f1;
	text-align: center;
	font-size: 14px;
	padding: 3px 0 0;
}

.uneisha td {
	width: 75%;
	background-color: #fff;
	text-align: left;
	font-size: 14px;
	padding: 3px 0 0 10px;
}

/*----ランキング根拠----*/
.basis_table {
	width: 60%;
	margin: 10px 10px 20px;
}

.basis_table th {
	width: 50%;
	background-color: #f1f1f1;
	text-align: center;
	font-size: 14px;
	padding: 3px 0 0;
}

.basis_table td {
	width: 50%;
	background-color: #fff;
	text-align: center;
	font-size: 14px;
	padding: 3px 0 0 10px;
}

/*----ヘッダー,フッター----*/


header {
    margin: 3px auto 0;
	padding: 0 0 5px;
    top: 0;
	height: auto;
    width: 100%;
	background-color: #fff;/*de3e18*/
	border-bottom: 1px solid #ccc;
	display: flex;
	justify-content: space-between;
}

header img {
	border: none;
}

.top_pr {
	margin: auto 0;
	padding: 7px 10px;
	font-size: 12px;
	color: #676767;
}


/*
footer {
    background-color: #583e20;
    color: #deadad;
    padding: 25px 0;
    text-align: center;
    width: 100%;
	clear: both;
}

footer a {
	color: #deadad;
}
*/

/*----リスト----*/
#footer {
	clear: both;
	padding: 30px 0 0 0;
	background-color: #29a4e1;
	box-shadow: 2px 0 3px #b5b5b5;
	behavior: url(/PIE.htc);
}

.footer_contents {
	width: 980px;
	margin: 0 auto;
	padding: 0 0 30px 40px;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
.footer_contents {
	width: 540px;
}
}
@media screen and (max-width: 479px) {
.footer_contents {
	width: 100%;
}
}


.footer_contents a {
	color: #333;
	text-decoration: none;
}

.footer_contents .sitename {
	font-size: 110%;
	font-weight: bold;
	padding: 0 0 5px 0;
}
@media screen and (max-width: 767px) {
.footer_contents .sitename {
	font-size: 16px;
}
}
@media screen and (max-width: 479px) {
.footer_contents .sitename {
	font-size: 14px;
}
}

.footer_contents .mokuji_waku {
	float: left;
	margin: 0 20px 0 5px;
	padding: 0 20px;
}

.footer_contents .groupname {
	margin: 0 0 0 0;
	padding: 0;
	border-bottom: 1px dotted #333;
	font-size: 95%;
	font-weight: bold;
}

.footer_contents li {
	margin: 5px 0 0 0;
	padding: 0 10px 0px 0;
	font-size: 80%;
	list-style:none;
}
@media screen and (max-width: 767px) {
.footer_contents li {
	font-size: 12px;
}
}
@media screen and (max-width: 479px) {
.footer_contents li {
	font-size: 10px;
}
}

.footer_contents li a {
}

.copylights {
	display: block;
	padding: 10px 0;
	text-align: center;
	font-size: 90%;
	/*background: #f8f8f8;*/
	background: #fff;
}

address {
	margin: 0 0 20px 0;
	text-align: center;
	font-size: 85%;
	background: #f8f8f8;
}

address a {
	color: #039;
}



/*----リスト----*/
/*
ul{
	width: 100%;
	border: 1px solid #ccc;
	margin: 10px auto;
	padding: 5px 10px;
	clear: both;
}

li {
	list-style-type: none;
	background: url(../img/parts/check_01.jpg) no-repeat 0 0;
	padding: 0 0 0 25px;
	font-size: 18px;
}

@media screen and (max-width: 767px) {
ul{
	width: 100%;
}
}

@media screen and (max-width: 767px) {
li {
	font-size: 16px;
}
}
*/


/*---リンク---*/
a:hover {
	opacity:0.8;
}

/*----見出し----*/

h1 {
    margin: 0 auto;
	padding: 3px 0 0;
    width: 70%;
	font-size: 24px;
	color: #333;
	/*text-align: center;*/
}

@media screen and (max-width: 979px) {
h1 {
	font-size: 24px;
}
}

@media screen and (max-width: 767px) {
h1 {
	font-size: 18px;
}
}

@media screen and (max-width: 479px) {
h1 {
	font-size: 18px;
}
}

h2 {
	margin: 0 0 10px;
}

h2 img {
	float: left;
	max-width: 100%;
	border: none;
}
@media screen and (max-width: 979px) {
h2 img {
	float: none;
	width: 100%;
}
}

h2 .top_banner {
	border: 1px solid #ccc;
	margin: 0 0 10px 5px;
}
@media screen and (max-width: 979px) {
h2 .top_banner {
	display: none;
}
}

h2 .sub_catch {
	width: 100%;
}
@media screen and (min-width: 979px) {
h2 .sub_catch {
	display: none;
}
}

h3 {
	font-size: 16px;
	margin: 10px 10px 0;
	font-weight: bold;
}

h4 {
	border-bottom: 2px dotted #fb005d;
	border-left: 4px solid #fb005d;
	margin: 15px 0 15px;
	padding: 3px 10px;
	font-size: 22px;
	clear: both;
}

@media screen and (max-width: 979px) {
h4 {
	font-size: 24px;
}
}

@media screen and (max-width: 767px) {
h4 {
	font-size: 22px;
}
}

@media screen and (max-width: 479px) {
h4 {
	font-size: 18px;
}
}

h5 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 24px;
}

h6 {
	float: right;
	line-height: 60px;
	font-size: 18px;
	margin: 0 10px 0 0;
}
@media screen and (max-width: 979px) {
h6 {
	font-size: 16px;
}
}
@media screen and (max-width: 767px) {
h6 {
	font-size: 18px;
	line-height: 40px;
}
}

h6 img {
	border: none;
	margin: 0 3px 0 0;
	padding: 0 0 5px;
}

.title {
	padding: 10px 10px;
	margin: 0 auto;
}

.date {
	float: right;
	padding: 5px 5px 0 0;
	color: #fff;
}

.tag {
	background-color: #fb005d;
	font-size: 12px;
	margin: 10px 0 0 10px;
	color: #fff;
	border-radius: 2px;
	padding: 4px 5px;
}

/*----メインコンテンツ----*/

.text {
	width: 100%;
	margin: 0 auto;
	padding: 10px 15px;
}

@media screen and (max-width: 979px) {
.text {
	width: 100%;
	margin: 0 auto;
	padding: 10px 10px;
}
}

@media screen and (max-width: 767px) {
.text {
	width: 100%;
	margin: 0 auto;
	padding: 0px 10px;
}
}

@media screen and (max-width: 479px) {
.text {
	width: 100%;
	margin: 0 auto;
	padding: 0px 8px;
}
}

/*----3ボタン----*/
.button_choice {
	margin: 5px 0 15px;
	padding: 0 10px;
	display: table;
}

.button_choice img {
	border: none;
	float: left;
}
@media screen and (max-width: 979px) {
.button_choice img {
	width: 180px;
}
}
@media screen and (max-width: 579px) {
.button_choice img {
	width: 200px;
}
}

.button_choice_1_2 {
	margin: 0 20px 5px 0;
}
@media screen and (max-width: 979px) {
.button_choice_1_2 {
	margin: 0 10px 5px 0;
}
}

.button_choice_1_3 {
	margin: 0 0 5px;
}

/*----Page Top----*/
#pagetop {
    background-color: #583e20;
    border-radius: 5px 0 0 5px;
    bottom: -60px;
    color: #fff;
    font-size: 18px;
    line-height: 50px;
    opacity: 0.8;
    position: fixed;
    right: -10px;
    text-align: center;
    width: 70px;
    z-index: 9999;
}


#pagetop a {
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0.8;
}


/*----ボタン----*/

.btn01 {
	margin: 0 auto;
	text-align: center;
}

.button01 {
	display: block;
	position: relative;
	background-color: #de3e18;/*e38618*/
	border-radius: 4px;
	color: #fff;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 3px 0 #bbb;/*0e8c73*/
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	padding: 15px 5px;
	overflow: hidden;
	width: 75%;
	margin: 15px auto 0;
}

@media screen and (max-width: 767px) {
.button01 {
	width: 90%;
}
}

.button01 a {
	color: #fff;
	font-size: 16px;
}

.button02 {
	display: block;
	position: relative;
	background-color: #de3e18;/*e38618*/
	border-radius: 4px;
	color: #fff;
	line-height: 52px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 3px 0 #bbb;/*0e8c73*/
	text-shadow: 0 1px 1px rgba(0, 0, 0, .3);
	padding: 15px 5px;
	overflow: hidden;
	width: 75%;
	margin: 5px auto 0;
}

@media screen and (max-width: 767px) {
.button02 {
	width: 90%;
}
}

.button02 a {
	color: #fff;
	font-size: 16px;
}

.reflection {
	background-color: #fff;
	height: 100%;
	width: 30px;
	top: -180px;
	left: 0;
	position: absolute;
    opacity: 0;
	transform: rotate(45deg);
	animation: reflection 3s ease-in-out infinite;
	-webkit-transform: rotate(45deg);
	-webkit-animation: reflection 3s ease-in-out infinite;
	-moz-transform: rotate(45deg);
	-moz-animation: reflection 3s ease-in-out infinite;
	-ms-transform: rotate(45deg);
	-ms-animation: reflection 3s ease-in-out infinite;
	-o-transform: rotate(45deg);
	-o-animation: reflection 3s ease-in-out infinite;
}

@keyframes reflection {
	0% { transform: scale(0) rotate(45deg); opacity: 0; }
	80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
	81% { transform: scale(4) rotate(45deg); opacity: 1; }
	100% { transform: scale(50) rotate(45deg); opacity: 0; }
}


.best01,.best02,.best03,.best04,.best05,.best06,.best07,.best08,.best09,.best10 {
	float: left;
	width: 100%;
	margin: 20px 0;
	padding: 0 0 10px;
}

.best01 {
	border-color: #eeda2e;
	border-style: solid;
	border-width: 1px 1px 10px;
	margin: 20px 0 30px;
}

.best01 h5 img {
	border: none;
	margin: -13px 0 0;
}

.best02 {
	border-color: #ededed;
	border-style: solid;
	border-width: 1px 1px 10px;
	margin: 20px 0 30px;
}

.best02 h5 img {
	border: none;
	margin: -13px 0 0;
}

.best03 {
	border-color: #ddacac;
	border-style: solid;
	border-width: 1px 1px 10px;
	margin: 20px 0 30px;
}

.best03 h5 img {
	border: none;
	margin: -13px 0 0;
}

.best04,.best05,.best06,.best07,.best08,.best09,.best10 {
	border-color: #f0f0f0;
	border-style: solid;
	border-width: 1px 1px 10px;
	margin: 20px 0 30px;
}

.best04 h5 img,.best05 h5 img,.best06 h5 img,.best07 h5 img {
	border: none;
	margin: 0;
}

h5 img {
	border: none;
}

h5 a {
	color: #333;
	text-decoration: underline;
/*	margin: 0 0 0 10px;*/
}

.ranking_waku {
	margin: 10px;
}

.rank01 {
	background: url(../img/parts/ptn01.jpg);
	font-size: 20px;
	height: 38px;
	padding: 0 0 0 15px;
}

.rank02 {
	background: url(../img/parts/ptn02.jpg);
	font-size: 20px;
	height: 37px;
	padding: 0 0 0 15px;
}

.rank03 {
	background: url(../img/parts/ptn03.jpg);
	font-size: 20px;
	height: 34px;
	padding: 0 0 0 15px;
}

.rank04,.rank05,.rank06,.rank07 {
	background: url(../img/parts/ptn04.jpg);
	font-size: 20px;
	height: 37px;
	padding: 0 0 0 15px;
}

.rank08,.rank09,.rank10 {
	font-size: 20px;
	height: 30px;
	padding: 5px 0 0 5px;
}

/*.rank05 {
	background: url(../img/parts/best05.gif) no-repeat 0 0;
	font-size: 20px;
	height: 40px;
	padding: 5px 0 0 45px;
}

.rank06 {
	background: url(../img/parts/best06.gif) no-repeat 0 0;
	font-size: 20px;
	height: 40px;
	padding: 5px 0 0 45px;
}

.rank07 {
	background: url(../img/parts/best07.gif) no-repeat 0 0;
	font-size: 20px;
	height: 40px;
	padding: 5px 0 0 45px;
}*/

.sokyu_point {
	margin: 1px 0 0;
	padding: 0;
	clear: both;
}

.sokyu_point .left_p_01 {
	float: left;
	width: 20%;
	padding: 15px 0 0;
	text-align: center;
	color: #f30202;
	text-decoration: underline;
}
@media screen and (max-width: 479px) {
.sokyu_point .left_p_01 {
	display: none;
}
}

.sokyu_point .left_p_02 {
	float: left;
	width: 80%;
	border: 1px solid #ccc;
	font-size: 16px;
	margin: 10px 0;
	padding: 5px;
}
@media screen and (max-width: 767px) {
.sokyu_point .left_p_02 {
	margin: 0 0 10px;
}
}
@media screen and (max-width: 479px) {
.sokyu_point .left_p_02 {
	width: 100%;
}
}

.sokyu_point_ipo {
	margin: 0 0 0 10px;
	padding: 5px;
	border: 1px solid #ccc;
	width: 85%;
	float: right;
}

.sokyu_point_ipo p {
	font-size: 18px;
	margin: 0;
}

@media screen and (max-width: 979px) {
.sokyu_point_ipo {
	width: 75%;
}
}
@media screen and (max-width: 767px) {
.sokyu_point_ipo {
	width: 65%;
	margin: 0 0 10px 10px;
}
.sokyu_point_ipo p {
	font-size: 16px;
}
}
@media screen and (max-width: 479px) {
.sokyu_point_ipo {
	width: 60%;
	margin: 0 0 10px 5px;
}
.sokyu_point_ipo p {
	font-size: 14px;
}
}

#contents .ranking_waku .campaign_waku {
	background-color: #fefeeb;
	color: #f30202;
	padding: 10px 20px;
	border: 1px solid #ccc;
	font-size: 18px;
	font-weight: bold;
}

.clear {
	clear: both;
}

@media screen and (min-width: 767px) {
.br_pc_hidden {
	display: none;
}
}

.tieup01{
	border: 3px solid #07b194;
	padding-bottom: 10px;
	border-radius: 5px;
}


