
/*
Theme Name: Ranking
*/

/*reset*/
html,body,dl,dt,dd,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	padding: 0;
	margin: 0;
	line-height: 1;
}
ul,ol {
	margin: 0;
	padding: 0;
	list-style:none;
}
small {
	font-size:100%;
}

html {
	font-size: 10px;
}

body {
	font-family: 'Noto Sans JP', sans-serif;
	color: #000000;
	font-size: 1.5rem;
	font-weight: bold;
	/*background-color: #F3F8FC;*/
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

section {
	overflow: hidden;
}

select, input, textarea {
	font-family: 'Noto Sans JP', sans-serif;
}

a {
	-webkit-transition: opacity  .3s ease;
    -moz-transition: opacity  .3s ease;
    -ms-transition: opacity  .3s ease;
    -o-transition: opacity  .3s ease;
    transition: opacity  .3s ease;
    display: block;
}

a:link {
	text-decoration:none;
	color: #000000;
}

a:visited {
	text-decoration:none;
	color: #000000;
}

a:hover{
	text-decoration:none;
	opacity: 0.7;
	color: #000000;
}

a:active {
	text-decoration:none;
	color: #000000;
}

img {
	border:none;
	max-width: 100%;
}


@media screen and (max-device-width: 480px){
  body{
    -webkit-text-size-adjust: none;
  }
}

.sp-collapse.spcollapsing {
    transition-duration: 0.15s !important;
}

.inner {
	padding: 0 20px;
	background: #fff;
}

.innerBtnTop1 {
	overflow: initial;
}

.wrapper {
	width: 750px;
	max-width: 100%;
	margin: 0 auto;
}

.showSp	{
	display: none;
}

.mtb-40 {
	margin: 40px 0 46px 0;
}

/*Header*/
.mainLogo {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}

.headerContainer {
	width: 100%;
	background-color: #FFFFFF;
	padding: 5px 0 20px 0;
	box-sizing: border-box;
}
/*End header*/


.wrapperContainer {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.mainContent {
	width: 100%;
}



/*Footer*/
footer {
	background: linear-gradient(to right, #f8b5c6 0%, #ffc1a0 46.35%, #fcb35e 100%);
	color: #FFF;
	width: 750px;
    max-width: 100%;
    margin: 0 auto;
}

.mainFooter {
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
}

.footerContainer {
	width: 100%;
	max-width: 100%;
	padding: 50px 0 50px 80px;
	display: flex;
	box-sizing: border-box;
}

.footerContainer .colLeft {
	display: inline-block;
	margin-right: 54px;
}
.footerContainer .colRight {
	display: inline-block;
}

.footerCopyR {
	background: #6D7486;
}

.footerCopyR p {
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	color: #fff;
	padding: 24px 0;
}

.footerCopyR p span {
	color: #FFF;
}

.footerMenuTitle {
	position: relative;
}

.footerContainer .colRight .footerMenuTitle:first-child{
	margin-bottom: 15px;
}


.footerMenuTitle p {
	color: #FFF;
	font-size: 24px;
	line-height: 1.5;
	font-weight: bold;
}

.footerContainer ul {
	padding-top: 15px;
}

.footerContainer ul li a {
	color: #FFF;
	font-size: 20px;
	line-height: 1.75;
	font-weight: bold;
}
/*End footer*/


/* start top banner */
.topBanner {
	position: relative;
	padding: 20px 22px 34px 22px;
	background: url(images/fv.jpg);
	background-size: cover;
    background-position-x: center;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	width: 750px;
	height: 609px;
	box-sizing: border-box;
}

.topBannerImg {
	width: 100%;
}

.fvText1 img {
	width: 100%;
}

.fvText2 {
	text-align: right;
}

.fvText2 img {
	width: 405px;
}

.tagDate {
	font-size: 24px;
	color: #000;
	position: absolute;
	top: 322px;
	right: 107px;
}

.tagDate span {
	font-size: 20px;
}

.dropdownSearch {
	height: 52px;
	width: 100%;
	background: #707070;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.dropdownSearch img {
	width: 472px;
}

.topSearch {
	width: 100%;
	display: none;
}


p.topNumber {
	position: absolute;
	bottom: 23px;
	right: 20px;
	letter-spacing: 3px;
	font-size: 5.1rem;
	font-weight: 900;
	color: #FFF;
	text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
	line-height: 1;
	display: flex;
	align-items: center;
}

p.topNumber strong {
	font-size: 7.8rem;
}


.searchBox {
	padding: 26px 30px 20px 46px;
	background: #FFFFFF;
	border: 4px solid #f4a2a7;
}

.searchBox .groupSelect {
	display: inline-flex;
	justify-content: flex-start;
}

.customSelect {
	cursor: pointer;
    height: 58px;
}

.customSelectWrapper {
	border: 1.5px solid #838383;
	border-radius: 9px;
}

.customSelect select {
	width: 100%;
	height: 56px;
	position: relative;
    border: none;
    overflow: hidden;
    outline: 0;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    color: #4d4d4d;
    background: none;
    z-index: 2;
    font-size: 20px;
    font-weight: normal;
    text-align-last:center;
    padding-right: 40px;
    cursor: pointer;
}

.customSelect::after {
    content: "";
    color: #fff;
    position: absolute;
    right: 13px;
    top: 20px;
    border-top: 13px dashed;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    z-index: 1;
}

.customSelect::before {
    content: "";
    position: absolute;
    right: 0px;
    top: 0px;
	width: 41px;
	height: 57px;
	border-radius: 7.42px;
	background: linear-gradient(#f8b5c6 0%, #ffc1a0 46.35%, #fcb35e 100%);
	box-shadow: 1px 1px 0px rgba(31, 86, 128, 0.42);
	z-index: 1;
}

.searchBox .customSelect {
    width: 236px;
    display: inline-block;
    position: relative;
    margin-right: 110px;
}

.searchBox .groupCheckbox {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 18px;
}

.searchBox .customCheckbox {
    width: 45%;
    /*min-width: 137px;*/
    display: inline-block;
    position: relative;
    margin-top: 16px;
    box-sizing: border-box;
}

.searchBox .customCheckbox:nth-child(1),
.searchBox .customCheckbox:nth-child(3),
.searchBox .customCheckbox:nth-child(5) {
	width: 52%;
}

.customCheckbox input[type="checkbox"] {
	display: none;
}

.customCheckbox label{
	cursor: pointer;
    display: flex;
    align-items: center;
}


.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.customCheckbox label input:checked ~ .checkmark:after {
  	display: block;
  	content: "";
	background: #a3a3a3;
	height: 22px;
	width: 22px;
	position: absolute;
	display: inline-block;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border: none;
}

.customCheckbox .virContent{
    vertical-align: middle;
    font-size: 18px;
    margin-left: 16px;
    font-weight: normal;
    color: #333333;
	line-height: 1;
	white-space: nowrap;
}


.customCheckbox .checkmark{
	width: 32px;
    height: 32px;
	border: 1.5px solid #838383;
	background: #ffffff;
	vertical-align: middle;
	position: relative;
	display: inline-block;
	box-sizing: border-box;
}



.btnSearch button {
	color: #fff;
	font-size: 30px;
	font-weight: 900;
	line-height: 1;
	border-radius: 19px;
	outline: none;
	border: none;
	width: 100%;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 32px auto 0 auto;
	background: #27cfce;
	box-shadow: 2px 2px 0px rgba(31, 86, 128, 0.39);
	cursor: pointer;
}

.btnSearch button:hover {
	opacity: 0.6;
}

.btnSearch button span {
	margin-left: 52px;
}
/* end top banner */


.topDesc {
	padding: 24px 0 42px 0;
	text-align: center;
	background: url(images/desc_bg.svg);
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
}

.topDesc1 {
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	text-shadow: 0px 3px 10px #d94444;
}

.topDesc2 {
	font-size: 36px;
	font-weight: bold;
	color: #fff;
	margin-top: 12px;
	text-shadow: 0px 3px 10px #d94444;
}

.topDate {
	font-size: 20px;
	font-weight: 500;
	text-align: right;
	line-height: 1.3;
	padding: 0 20px;
	margin-top: 26px;
	margin-bottom: 20px;
}

.blockRanking {
	background: #FFF7F7;
	padding: 0 20px;
	box-sizing: border-box;
	overflow: hidden;
	margin-top: -18px;
}


.topRanking li {
	border-radius: 18px;
	border: 2px solid #ffd445;
	margin-bottom: 44px;
}

.topRanking li:first-child {
	border: 5px solid #ffd445;
}

.topRankingInfo {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
}

.topRankingInfo .colLeft{
	display: flex;
	align-items: center;
	margin-left: 6px;
}

.topRankingNumber img {
	width: 117px;
	margin-top: -26px;
}

.topRankingName a {
	font-weight: bold;
	font-size: 32px;
	color: #2767d3;
	margin-left: 12px;
	position: relative;
}

.topRankingName a:after {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #2767d3;
}

.topRankingInfo .colRight{
	display: flex;
	align-items: center;
	margin-right: 28px;
	margin-top: 6px;
}

.topRankingStar {
	width: 146.16px;
	margin-right: 12px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.topRankingPoint {
	font-family: 'Montserrat', sans-serif;
	font-size: 40px;
	font-weight: bold;
	color: #F06464;
}


.starRating {
  width: 25.84px;
  height: 24.72px;
  position: relative;
}
.starRating:before {
  background-image: url(images/empty_star.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  bottom: 0;
  content: "";
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 25.84px;
  height: 24.72px;
}
.starRating > span {
  display: block;
  text-indent: -10000px;
  width: 25.84px;
  height: 24.72px;
  position: absolute;
  overflow: hidden;
}


.starRating > span:before {
  background-image: url(images/full_star.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  bottom: 0;
  content: "";
  display: block;
  height: 24.72px;
  width: 25.84px;
  left: 0;
  position: absolute;
  right: 0;
  text-indent: 10000px;
  top: 0;
}

.topRankingContent {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	margin-bottom: 30px;
	margin-top: 15px;
}

.topRankingContent .colLeft {
	margin-left: 20px;
	display: inline-block;
	width: 156px;
}

.topRankingContent .colLeft img {
	width: 100%;
}

.topRankingContent .colRight {
	margin-left: 20px;
	display: inline-block;
}

.topRankingContent .colRight p {
	position: relative;
	padding-left: 45px;
	font-size: 20px;
	font-weight: bold;
	color: #000000;
	line-height: 1.23;
	margin-top: 15px;
}

.topRankingContent .colRight p:first-child {
	margin-top: 0;
}

.topRankingContent .colRight p b, .topRankingContent .colRight p strong {
	font-size: 28px;
	font-weight: bold;
	color: #F06464;
}

.topRankingContent .colRight p:before {
	content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0,-50%);
    width: 35.7px;
    height: 28px;
    background: url(images/diamond.svg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.topRanking li:first-child .topRankingContent .colRight p {
	font-size: 24px;
}

.topRanking li:first-child .topRankingContent .colRight p b, .topRanking li:first-child .topRankingContent .colRight p strong{
	font-size: 32px;
	color: #D94444;
}

.notice {
	padding: 18px 35px 40px 35px;
	box-sizing: border-box;
	background: #f5ffff;
	margin-top: -8px;
}

.notice img {
	width: 100%;
}

.notice .noticeTitle {
	font-size: 32px;
	color: #3054B1;
	font-weight: bold;
	line-height: 1.5;
	margin-top: 12px;
	text-align: center;
}

.notice .noticeContent p {
	font-size: 24px;
	color: #6D7486;
	font-weight: bold;
	line-height: 2;
	margin-top: 26px;
	text-align: center;
}

.notice hr {
	margin: 0;
	border: none;
	border-bottom: 2px solid #707070;
	margin-top: 26px;
}

.compare {
	padding: 32px 22px 42px 22px;
	background: #FFFFF4;
	box-sizing: border-box;
}

.compareHeader {
	height: 68px;
	background: linear-gradient(#fc6fab 0%, #fc6fab 100%);
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	border-left: 2px solid #BABABA;
	border-right: 2px solid #BABABA;
	box-sizing: border-box;
	margin-top: 10px;
}

.ch1, .ch2, .ch3, .ch4 {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 24px;
	color: #fff;
}

.ch1 {
	width: 150px;
	border-right: 2px solid #fff;
}

.ch2 {
	width: 184px;
	border-right: 2px solid #fff;
}

.ch3 {
	width: 184px;
	border-right: 2px solid #fff;
}

.ch4 {
	width: 186px;
}

.compareContent li {
	display: flex;
	flex-wrap: nowrap;
	background: #FFFFF4;
	border: 2px solid #BABABA;
	border-top: none;
}

.compareContent li:first-child {
	background: #FFEFF0;
}

.compareContent .colLeft {
	width: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	align-content: center;
	border-right: 2px solid #BABABA;
}

.compareContent .rankingNumber {
	width: 100%;
	text-align: center;
}

.compareContent .rankingNumber img {
	width: 104px;
}

.compareContent .rankingName a {
	font-weight: bold;
	text-decoration: underline;
	font-size: 20px;
	color: #2767d3;
	margin-top: 18px;
}
.compareContent .rankingNameCompare {
	font-weight: bold;
	text-decoration: underline;
	font-size: 20px;
	color: #2767d3;
	margin-top: 18px;
}
.compareContent .rankingNameCompare a {
	color: #2767d3;
}

.compareContent .colRight {
	width: 552px;
}

.compareContent .comparePrice {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	border-bottom: 2px solid #BABABA;
	text-align: center;
}

.comparePrice .cp1 {
	width: 184px;
	border-right: 2px solid #BABABA;
}

.comparePrice .cp2 {
	width: 184px;
	border-right: 2px solid #BABABA;
}

.comparePrice .cp3 {
	width: 186px;
}

.compare .compareBtn {
	margin: 10px auto 16px 0;
}


.compare .orangeBtn span {
	min-height: 99px !important;
	height: 99px;
	width: 526px;
}

.compare .orangeBtn span p {
	width: 100%;
	line-height: 1.5;
	font-size: 24px !important;
}

.compare .orangeBtn span {
	flex-wrap: wrap;
    align-content: center;
}

.compare .orangeBtn span p:first-child {
	font-size: 20px !important;
}



.compare .maxbutton.maxbutton-orangebtn.orangeBtn {
	width: 526px !important;
}

.compareContent li:first-child .maxbutton.maxbutton-orangebtn.orangeBtn {
	background: linear-gradient(#2cd1d1 0%, #00886d 100%) !important;
	box-shadow: 0 6px 0 0 #005050 !important;
}

.cp1, .cp2, .cp3 {
	padding: 20px 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	align-content: center;
	min-height: 135px;
	height: 95px;
	box-sizing: border-box;
}

.cp1 .row1, .cp1 .row2 {
	width: 100%;
}

.cp2 .row1, .cp2 .row2 {
	width: 100%;
}

.cp3 .row1, .cp3 .row2 {
	width: 100%;
}

.cp1 .row1 p {
	font-size: 20px;
	font-weight: bold;
}

.cp1 .row1 p strong, .cp1 .row1 p b{
	font-size: 28px;
	font-weight: bold;
}

.cp1 .row2 {
	font-size: 16px;
	line-height: 1.25;
	margin-top: 8px;
}

.cp2 .row1 p {
	font-size: 20px;
	font-weight: bold;
}

.cp2 .row1 p strong, .cp2 .row1 p b{
	font-size: 28px;
	font-weight: bold;
}

.cp2 .row2 {
	font-size: 16px;
	line-height: 1.25;
	margin-top: 8px;
}

.cp3 .row1 {
	font-size: 16px;
	line-height: 1.25;
}

.cp3 .row2 {
	font-size: 20px;
	line-height: 1.25;
	margin-top: 8px;
}

.cp3 .row2 p strong, .cp3 .row2 p b{
	font-size: 28px;
}

.compareContent li:first-child .cp1 .row1 {
	color: #D94444;
}

.compareContent li:first-child .cp2 .row1 {
	color: #D94444;
}

.compareContent li:first-child .cp3 .row2 {
	color: #D94444;
}


.recommendBlock {
	margin-bottom: 25px;
}

.check {
	margin-top: 40px;
}

.checkTitle {
	position: relative;
}

.checkTitle img {
	width: 100%;
}

.checkTitle span {
	font-weight: bold;
	font-size: 36px;
	text-align: center;
	color: #fff;
	position: absolute;
	top: 50%;
  	left: 0;
  	right: 0;
  	transform: translateY(-50%);
}

.checkList li {
	border-radius: 5.66px;
	background: #fff7ef;
	border: 2px solid #fc6fab;
	background: #FFF7EF;
	margin-top: 20px;
}

.checkBlock {
	background: url(images/check_bg.png);
	background-size: cover;
	padding: 20px 26px 30px 26px;
	position: relative;
}

.checkTag {
	position: absolute;
	top: -4px;
	left: 8px;
	width: 53px;
	height: 72px;
	background-image: url(images/check_tag.svg);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	
}

.checkTag span {
	font-family: 'Montserrat', sans-serif;
	font-weight: bold;
	font-size: 42px;
	color: #fff;
	-webkit-text-stroke: 2px #000;
	position: relative;
	top: -8px;
}

.checkList .title {
	font-weight: bold;
	font-size: 32px;
	line-height: 1.2;
	text-align: center;
	color: #FFFFFF;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	border-radius: 8px;
	background: #f06464;
	padding: 33px 0;
}

.checkList .title p {
	line-height: 1.3;
}

.checkList .desc {
	text-align: center;
	font-size: 24px;
	color: #000000;
	line-height: 1.75;
}

.checkList .desc p {
	line-height: 2;
    margin-top: 15px;
}

.checkList .desc em {
	font-style: normal;
	font-weight: bold;
	font-size: 32px;
	line-height: 1.75;
	color: #ea527b;
	background-image: linear-gradient(to bottom, #FFFF86 0%, #FFFF86 100%);
    background-repeat: no-repeat;
    background-position-y: 80%;
    background-size: 100% 16px;
}

.checkList .desc strong {
	font-weight: bold;
	font-size: 40px;
	line-height: 1.75;
	color: #ea527b;
}

.checkList .title b, .checkList .title strong {
	font-size: 40px;
	color: #ffff86;
}

.review {
	margin-top: 40px;
}

.reviewTitle {
	padding: 0 12px;
	box-sizing: border-box;
	position: relative;
}

.reviewTitle span {
	font-weight: bold;
	font-size: 36px;
	text-align: center;
	color: #fff;
	position: absolute;
	top: 50%;
  	left: 0;
  	right: 0;
  	transform: translateY(-50%);
}

.reviewTitle img {
	width: 100%;
}

.reviewBlock {
	margin: 20px 0 40px 0;
}

.reviewItem {
	padding: 32px 38px 28px 38px;
	margin-bottom: 20px;
	border-radius: 12px;
	background: #fff;
	border: 2px solid #ff9872;
}

.reviewBlock .reviewItem:last-child {
	margin-bottom: 0;
}

.userReviews {
	display: flex;
	align-items: center;
	margin-bottom: 16px;
}

.userReviews .userImg{
	width: 99px;
}

.userReviews .userInfo {
	margin-left: 15px;
}

.reviewsTitle {
	margin-left: 18px;
}

.reviewItem .reviewsTitle p {
	font-size: 32px;
	line-height: 1.2;
	color: #000;
}

.reviewItem .reviewsTitle p strong {
	font-size: 40px;
	color: #EA527B;
}

.reviewItem .reviewsDes {
	margin-top: 14px;
}

.reviewItem .reviewsDes p {
	font-size: 24px;
	color: #000000;
	line-height: 2;
	margin: 0;
}

.reviewItem .reviewsDes p strong {
	font-size: 28px;
	background-image: linear-gradient(to bottom, #FFFF86 0%, #FFFF86 100%);
    background-repeat: no-repeat;
    background-position-y: 15%;
    background-size: 100% 36px;
}



/* start list ranking */
.listRanking {
	position: relative;
}

.listRanking > li, .storeDetail {
	border: 2px solid #FFD445;
	background: #FFFFF4;
	margin-bottom: 25px;
	filter: drop-shadow(0px 5px 10px rgba(45, 53, 145, 0.25));
	border-radius: 12px;
}

.listRanking > li {
	margin-bottom: 90px;
}

.hikakuPost .listRanking > li {
	background: rgba(255, 248, 221, 0.67);
}

.listRanking > li:last-child {
	margin-bottom: 0;
}

.rankingInfo {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	margin-left: 40px;
}

.rankingNumber {
	width: 143px;
	margin-top: -25px;
	position: relative;
}

.rankingNumber img {
	width: 100%;
}

.rankingName a {
	font-weight: bold;
	position: relative;
	font-size: 48px;
	color: #2767d3;
	margin-left: 26px;
}

.rankingName a:after {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #2767d3;
}

.storeContent {
	margin-top: 40px;
	padding: 0 18px 35px 18px;
}


.storeMainImg img {
	width: 100%;
}


.priceBox {
	margin: 8px 0 40px 0;
	border: 2px solid #F4B5A2;
}

.priceBox .priceBoxHeader {
	display: flex;
}

.priceBoxTitle {
	width: 33.33%;
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	padding: 25px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FC6FAB;
	border: 2px solid #F4B5A2;
	border-bottom: none;
	border-top: none;
}

.priceBoxHeader .priceBoxTitle {
	border-right: 1px solid #F4B5A2;
}

.priceBoxHeader .priceBoxTitle:last-child {
	border-right: none;
}

.priceBoxHeader .priceBoxTitle:first-child {
	border-left: none;
}

.priceBoxBody {
	display: flex;
}


.priceBoxContent {
	padding: 12px 0 15px 0;
	background: #fff;
	border: 2px solid #F4B5A2;
	border-top: none;
	border-bottom: none;
	width: 33.33%;
}

.priceBoxBody .priceBoxContent {
	border-right: 1px solid #F4B5A2;
}

.priceBoxBody .priceBoxContent:last-child {
	border-right: none;
}

.priceBoxBody .priceBoxContent:first-child {
	border-left: none;
}

.priceBoxValue {
	text-align: center;
	color: #000000;
	font-weight: bold;
}

.priceBoxValue span {
	font-size: 32px;
}

.priceBoxValue small {
	font-size: 20px;
	position: relative;
}

.priceBoxValue small .tag {
	content: '';
	position: absolute;
	top: -5px;
	left: 0;
	font-size: 10px;
	color: #000;
}

.priceBoxNote {
	font-size: 14px;
	text-align: center;
	margin-top: 10px;
}

.campaign {
	padding: 66px 0 60px 0;
	box-sizing: border-box;
	border: 4px solid #64baf0;
	filter: drop-shadow(0px 5px 10px rgba(22, 38, 90, 0.25));
	background: #fff;
	border-radius: 12px;
	width: 100%;
	position: relative;
	text-align: center;
	margin-top: 140px;
}

.campaign .campaignDesc {
	font-size: 36px;
	text-align: center;
	color: #000;
	line-height: 1.5;
}

.campaign .campaignPrice {
	text-align: center;
}

.campaign .campaignPrice p {
	/* font-size: 60px; */
	color: #EA527B;
	line-height: 1.5;
	font-weight: bold;
	background-image: linear-gradient(to bottom, #FFFF86 0%, #FFFF86 100%);
    background-repeat: no-repeat;
    background-position-y: 87%;
    background-size: 100% 20px;
    display: inline-block;
}

.campaign .campaignPrice p b, .campaign .campaignPrice p strong {
	font-size: 80px;
}

.campaign .campaignTitle {
	width: 645px;
}

.campaign .campaignTitle span {
	position: absolute;
	top: -38px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	font-weight: bold;
	font-size: 30px;
	text-align: center;
	color: #fff;
	width: 100%;
}

.campaign .campaignTitle img {
	width: 100%;
	position: absolute;
	top: -94px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.campaignBtn {
	padding: 0 15px;
	box-sizing: border-box;
	margin-top: -55px;
}

.productRecommend {
	margin-top: 48px;
	padding: 14px 0 46px 0;
	background: #FFF7F7;
	text-align: center;
	border-radius: 5.66px;
	border: 2px dashed #d94444;
}

.productRecommend .productTitle img {
	width: 512px;
	margin-bottom: 24px;
}

.productRecommendContent {
	overflow: hidden;
	display: inline-block;
	text-align: left;
}

.productRecommendContent p {
	font-size: 28px;
	line-height: 1.09;
	margin-top: 14px;
	padding-left: 54px;
	position: relative;
}

.productRecommendContent p:after {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 42.88px;
	height: 34px;
	background: url(images/checkIcon.svg);
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

.listRanking .rankingStoreInfo .orangeBtn span {
	font-size: 2.475rem !important;
}

.listRanking .top1BtnStoreInfo .orangeBtn span {
	font-size: 2.475rem !important;
}


.listRanking .greenBtn {
	margin: 10px 0 30px 0 !important;
}

.recTop1 {
	/*margin-top: 25px;*/
}

.recTop1 .listRanking > li {
	border: none;
	filter: none;
	background: linear-gradient(#f8b5c6 0%, #ffc1a0 46.35%, #fcb35e 100%);
	border-radius: 0;
}

.recTop1 .storeContent {
	padding: 0 40px 48px 40px;
	margin-top: 28px;
}

.recTop1 .recTop1Img {
	padding: 0 40px 3px 40px;
	width: calc(100% + 15px);
	margin-left: -15px;
	box-sizing: border-box;
}

.recTop1 .recTop1Img img {
	width: 100%;
	margin-top: 56px;
}

.recTop1 .storeMainImg img {
	box-shadow: 0px 5px 10px rgba(77, 15, 55, 0.25);
}

.recTop1 .priceBox {
	margin: 40px 0;
}

.recTop1 .top1BtnStoreInfo .maxbutton.maxbutton-orangebtn.orangeBtn {
	margin-top: 15px !important;
}

.reasonHeader {
	position: relative;
	margin-top: 45px;
}

.reasonHeader img {
	width: 100%;
}

.reasonHeader span {
	position: absolute;
	left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    font-size: 36px;
	color: #fff;
	width: 100%;
	text-align: center;
}

.reasonTitle p {
	font-weight: bold;
	font-size: 34px;
	line-height: 1.6;
	text-align: center;
	color: #fc6fab;
	margin-bottom: 25px;
}

.reasonTitle strong {
	font-size: 40px;
	text-align: center;
	color: #fc6fab;
	background-image: linear-gradient(to bottom, #FFFF86 0%, #FFFF86 100%);
    background-repeat: no-repeat;
    background-position-y: 100%;
    background-size: 100% 28px;
}

.reasonContent p {
	font-weight: 500;
	font-size: 24px;
	line-height: 2;
	color: #000000;
}

.reasonContent strong {
	font-weight: bold;
	font-size: 28px;
	background-image: linear-gradient(to bottom, #D94444 0%, #D94444 100%);
    background-repeat: no-repeat;
    background-position-y: 100%;
    background-size: 100% 4px;
}

.ulReason {
	margin-top: -58px;
}

.ulReason li {
	border-radius: 5.66px;
	background: #fffff4;
	border: 2px solid #fc6fab;
	padding: 40px 38px 25px 38px;
	box-sizing: border-box;
	margin-bottom: 20px;
}

.ulReason li:first-child  {
	padding: 40px 38px 40px 38px;
}

.ulReason li:first-child .reasonTitle {
	margin-top: 20px;
}

.reasonContent img {
	width: 100%;
}


.wp-video, video.wp-video-shortcode, .mejs-container, .mejs-overlay.load {
	width: 100% !important;
	height: 100% !important;
}
.mejs-container {
	padding-top: 56.25%;
}
.wp-video, video.wp-video-shortcode {
	max-width: 100% !important;
}
video.wp-video-shortcode {
	position: relative;
}
.mejs-mediaelement {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.mejs-controls {
	display: none;
}
.mejs-overlay-play {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: auto !important;
	height: auto !important;
}

.reasonButton {
	margin-top: 24px;
}

.pointBlock {
	background: #FCDDDF;
	padding: 50px 0 60px 0;
	position: relative;
}

.pointBlock:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 40px 375px 0 375px;
	border-color: #fcdddf transparent transparent transparent;
	position: absolute;
	bottom: -40px;
	left: 0;
}

.pointImg {
	padding: 0 40px 0 22px;
	box-sizing: border-box;
}

.pointImg img {
	width: 100%;
}

.listPoint {
	padding: 0 40px;
	box-sizing: border-box;
}



.listPoint li {
	background: #fff;
	border: 2px solid #ff9872;
	filter: drop-shadow(0px 3px 6px rgba(77, 15, 55, 0.25));
	border-radius: 10px;
	padding: 24px 40px 36px 40px;
	margin-top: 20px;
	position: relative;
}

.listPoint .pointTitle {
	font-size: 40px;
	line-height: 1.2;
	text-align: center;
	color: #ea527b;
}

.listPoint .pointLine {
	text-align: center;
	margin-top: 20px;
}
.listPoint .pointLine img {
	width: 397px;
}

.listPoint .pointContent {
	margin-top: 32px;
}

.listPoint .pointContent p {
	font-size: 24px;
	line-height: 2;
	color: #000;
}

.listPoint .pointContent p strong {
	font-size: 28px;
	color: #EA527B;
	background-image: linear-gradient(to bottom, #FFFF86 0%, #FFFF86 100%);
    background-repeat: no-repeat;
    background-position-y: 85%;
    background-size: 100% 12px;
}

.pointTag {
	width: 77.54px;
	height: 78.06px;
	background: url(images/point_tag.svg);
	background-size: 100% 100%;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	flex-wrap: wrap;
	text-align: center;
	position: absolute;
	top: -4px;
	left: 18px;
}

.pointTagText {
	font-family: 'Montserrat', sans-serif;
	width: 100%;
	font-weight: bold;
	font-size: 14px;
	letter-spacing: -0.02em;
	line-height: 1.15;
	color: #fff;
	position: relative;
	top: -5px;
}

.pointTagNumber {
	font-family: 'Montserrat', sans-serif;
	width: 100%;
	font-weight: bold;
	font-size: 34px;
	letter-spacing: -0.02em;
	color: #fff;
	position: relative;
	top: -5px;
	line-height: 1.15;
}

.no1Store {
	padding: 60px 20px 80px 20px;
	background: #FFF7F7;
	box-sizing: border-box;
}

.no1StoreImg {
	width: 100%;
}

.no1StoreImg img {
	width: 100%;
}

.no1StoreContent {
	padding: 0 20px;
	box-sizing: border-box;
}

.no1StoreContent .storeMainImg {
	margin: 25px 0;
}
/* end list ranking */


/* start column page */
.cardtype {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 5px;
	padding-bottom: 20px;
}

.cardtype__article {
	width: 48%;
	padding: 7px;
	box-sizing: border-box;
	box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
	margin-top: 20px;
	margin-bottom: 5px;
    transition: .2s;
}

.cardtype__article:hover {
	box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
    transform: translateY(-4px);
}

.cardtype__article h2 {
	font-size: 1.8rem;
	line-height: 1.6;
	margin-bottom: 10px;
}

.cardtype time {
	margin: 5px 0 10px 0;
	display: inline-block;
	font-size: 1.3rem;
	color: #b5b5b5;
	font-weight: 700;
}

.cardtype__article::after {
    flex-basis: 48%;
    content: "";
}

.cardtype__img {
	max-height: 180px;
}

.cardtype__img img {
	max-height: 180px;
    width: 100%;
    object-fit: cover;
    max-width: 100%;
}


.pagination,.wp-prev-next{
    margin:1.5em 0;
}
.pagination{
    text-align:left;
    margin-bottom: 50px;
}
.pagination ul{
    display:block;
    clear:both;
    padding: 0;
    border-radius:3px;
    text-align:center;
}
.pagination li{
    display:inline-block;
    overflow:hidden;
    margin:3.5px;
    padding:0;
    text-align:center;
}
.pagination a,.pagination span{
    display:inline-block;
    width:46px;
    height:46px;
    margin:0;
    border-radius:50%;
    background:#fff;
    font-size:17.5px;
    font-weight:700;
    text-decoration:none;
    line-height:46px;
}
.pagination .current{
    color:#fff;
    cursor:default;
}
.page-numbers.dots{
    width:auto;
    padding:0;
    background:0 0;
}
.wp-prev-next .prev-link{
    float:left;
}
.wp-prev-next .next-link{
    float:right;
}
.pagination a,.pagination span {
	color:#ea527a;
}

.pagination .current {
	background-color:#ea527a;
}

.pagination a:hover {
    background:#ea527a;
    color: #fff;
}

.prev.page-numbers, .next.page-numbers {
    width: 15px;
    background: 0 0;
    position: relative;
}

.next.page-numbers:after {
	content: '';
	position: absolute;
	left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
	width: 11px;
	height: 18px;
	background: url(images/next-arrow.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.prev.page-numbers:after {
	content: '';
	position: absolute;
	left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
	width: 11px;
	height: 18px;
	background: url(images/prev-arrow.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.prev.page-numbers:hover, .next.page-numbers:hover {
    background: transparent!important;
    opacity: .7;
}
/* end column page */

.collapsible {
	text-align: center;
	color: #888;
	font-size: 1.3rem;
}

.collapsible span {
	position: relative;
}

.collapsible span:after {
	content: '';
	position: absolute;
	right: -15px;
	top: 5px;
	background-image: url('images/down-arrow.svg');
	width: 10px;
	height: 10px;
	background-size: 100%;
    background-repeat: no-repeat;
}

.collapsible.active span:after {
	-webkit-transform:rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
}

.tRanking {
	width: 100%;
	text-align: center;
}

.tRanking td {
	border: 1px solid #000;
}

.tRanking .tHead {
	background: #ea527b;
	padding: 10px 0;
	font-size: 2.5rem;
	font-weight: bold;
}

.tRanking .tHead td {
	padding: 10px 0;
	text-align: center;
	color: #fff;
}

.tRanking .rankNumber {
	width: 113px;
	height: 129px;
	position: relative;
	left: -6px;
}

.tRanking .rankNumber span {
	position: absolute;
	top: 50px;
    left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
    font-size: 4.2rem;
    color: #939393;
    font-weight: bold;
    font-family: 'Noto Serif JP', serif;
}

.tRanking .rankNumber img {
	width: 100%;
}

.tRanking .tRank1 .rankNumber span {
	color: #D9A01E;
}

.tRanking .tRank2 .rankNumber span {
	color: #B2A16A;
}

.tRanking .tRank3 .rankNumber span {
	color: #D76902;
}

.tRankWrapper {
	display: flex;
	align-items: center;
	justify-content: center;
}

.tRankContent .i1{
	margin: 7px 0;
}

.tRankContent .t1{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}

.tRankContent .t2{
	font-size: 1.8rem;
	line-height: 1.5;
	margin-bottom: 10px;
}

.tRankContent .t3 {
	margin-bottom: 8px;
}

.tCol3 p {
	font-size: 2.2rem;
	line-height: 1.1;
	margin-top: 10px;
}

.tCol3 .maxbutton.maxbutton-orangebtn.orangeBtn {
	padding: 0 !important;
	width: 80% !important;
	margin: 10px auto 12px auto !important;
}

.tCol3 .maxbutton.maxbutton-orangebtn.orangeBtn .mb-text {
	font-size: 2rem !important;
	min-height: 45px !important;
}

.tCol3 .orangeBtn::before {
	display: none;
}

.tCol3 .orangeBtn span:after {
	width: 25px;
	height: 25px;
}

.tr1 .tRankContent .t2 {
	color: #FF0245;
}

.tRank1 a, .tRank2 a, .tRank3 a {
	color: #266fd3;
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: underline;
}

.rankTr1 {
	background-color: #fffae2;
}





.w595 {
	width: 595px;
	max-width: 100%;
	margin: 0 auto;
}

.w650 {
	width: 650px;
	max-width: 100%;
	margin: 0 auto;
}

/*Main container*/
.storeImgTitle {
	/*background-color: #FFF;*/
	text-align: center;
	border: 1px solid #707070;
}

.storeImgTitle img {
	width: 100%;
	height: auto;
}

.orangePostContent {
	background: rgba(255, 248, 221, 0.67);
	border: 1px solid #B6B6B6;
	padding-bottom: 40px;
	width: calc(100% - 40px);
	margin: 20px auto;
}

.orangePostContent .storeBanner {
	padding: 20px 16px 0 16px;
}

.orangePostMainContent p {
	font-size: 1.8rem;
	color: #040000;
	line-height: 1.6;
	text-align: justify;
	margin: 15px 0 15px 0;
	padding: 0 18px;
}

.orangePostMainContent h3 {
	font-size: 3.6rem;
	line-height: 1.305;
	color: #9C304A;
	margin-bottom: 18px;
	font-weight: normal;
	text-align: center;
	margin-top: 40px;
	width: calc(100% + 150px);
    margin-left: -75px;
}


.btnAnchorBlock {
	display: flex;
	justify-content: space-between;
	margin-bottom: 45px;
	margin-top: 27px;
	padding: 0 18px;
	box-sizing: border-box;
}

.btnAnchorBlock a {
	background-color: #9C304A;
	border-radius: 26px;
	color: #FFF;
	font-size: 1.5rem;
	line-height: 1.733;
	width: 31%;
	font-weight: bold;
	padding: 13px 0;
	text-align: center;
}

.productPlan .productTitle img {
	width: 73.5px;
	height: 73.5px;
}

.productPlan .productTitle {
	width: 550px;
	max-width: 100%;
	margin: 0 auto;
	font-size: 2.4rem;
	font-weight: bold;
	height: 54px;
	margin-bottom: 35px;
}


.maxbutton.maxbutton-orangebtn.orangeBtn {
	color: #fff;
    font-family: initial !important;
    font-size: initial;
    text-align: initial;
    font-style: initial;
    font-weight: initial;
    padding-left: initial;
    line-height: initial;
    box-sizing: initial;
    background-color: unset;
	height: initial !important; 
    display: block !important;
    position: relative !important;
    width: 100% !important;/*ボタンの幅*/
    margin: 0 auto !important;
    background: linear-gradient(#51dddd 0%, #1cb194 100%) !important;/*ボタンの色*/
    box-shadow: 0 6px 0 0 #348B7A !important;/*影の色(rgbaの値を変更)*/
    border-radius: 16px !important;
    text-align: center !important;
    text-decoration: none !important;
    overflow: hidden !important;
    font-family: 'Noto Sans JP', sans-serif !important;
}

.maxbutton.maxbutton-orangebtn.orangeBtn .mb-text {
	font-family: 'Noto Sans JP', sans-serif !important;
	padding-top: 0 !important;
}

.orangeBtn span {
	font-weight: 900 !important;
    font-size: 28px !important;
    color: #FFFFFF !important;
    line-height: 1.43 !important;
    position: relative !important;
    min-height: 126px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding-right: 32px;
    box-sizing: border-box;
}

.orangeBtn.oneLineBtn span {
	font-size: 3.3rem !important;
}

.orangeBtn span:after {
	content: "";
	position: absolute;
	width: 38px;
	height: 38px;
	background-image: url('images/btnIcon.svg');
	background-repeat: no-repeat;
	background-size: 100%;
	right: 26px;
	top: 50%;
	transform: translate(0,-50%);
}

.orangeBtn:hover {
    text-decoration: none;
    color: #fff;
    opacity: 0.7;
}

.orangeBtn::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: orangeBtn 3s ease-in-out infinite;
}

@-webkit-keyframes orangeBtn {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}

.greenBtn {
	color: #fff;
    font-family: initial !important;
    font-size: initial;
    text-align: initial;
    font-style: initial;
    font-weight: initial;
    padding-left: initial;
    line-height: initial;
    box-sizing: initial;
    background-color: unset;
	height: initial !important; 
    display: block !important;
    position: relative !important;
    width: 100% !important;/*ボタンの幅*/
    padding: 16px 0 !important;
    margin: 0 auto !important;
    background-color: #388047 !important;/*ボタンの色*/
    box-shadow: 0 4px 0 0 #19191A !important;/*影の色(rgbaの値を変更)*/
    border-radius: 12px !important;
    text-align: center !important;
    text-decoration: none !important;
    overflow: hidden !important;
    margin: 18px 0 40px 0 !important;
    font-family: 'Noto Sans JP', sans-serif !important;
}
 
.greenBtn .mb-text {
	padding-top: 0 !important;
}

.greenBtn span {
	font-weight: bold !important;
    font-size: 2.987rem !important;
    color: #FFFFFF !important;
    line-height: 1.3 !important;
    position: relative !important;
    min-height: 76px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.greenBtn span:after {
	content: "";
	position: absolute;
	width: 33px;
	height: 33px;
	background-image: url('../images/btnIconGreen.svg');
	background-repeat: no-repeat;
	background-size: 100%;
	right: 20px;
	top: 50%;
	transform: translate(0,-50%);
}

.greenBtn:hover {
    text-decoration: none;
    color: #fff;
    opacity: 0.7;
}

.greenBtn::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #fff;
    animation: greenBtn 3s ease-in-out infinite;
}

@-webkit-keyframes greenBtn {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}


.storeAddress {
	margin: 0;
	padding: 40px 38px 40px 38px;
	background: #fff;
	border: 2px solid #f4a2a7;
	border-top: none;
	margin-bottom: 40px;
}

.storeAddressTitle {
	padding: 27px 0;
	position: relative;
	text-align: center;
	font-weight: bold;
	font-size: 36px;
	text-align: center;
	color: #fff;
	background: #ea527b;
	border: 2px solid #f4a2a7;
}


.storeAddress .totalStore span {
	font-size: 4rem;
	font-weight: bold;

}

.storeAddress .totalStore small {
	font-size: 2.4rem;
}

.storeAddressTitle .infoTitle {
	font-size: 3.3rem;
}

.storeAddressImg {
	display: flex;
	justify-content: space-between;
}

.storeAddressImg img {
	width: 48.14%;
    align-self: center;
}

.accordionStore {
	margin-top: 40px;
}

.accordionStore .sp-easy-accordion .sp-ea-single {
	margin-bottom: 0;
	border-radius: 0;
	border: none !important;
}

.accordionStore .sp-easy-accordion .sp-ea-single .ea-header a {
	font-size: 32px;
	font-weight: bold;
	color: #fff !important;
	line-height: 1 !important;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1 !important;
	padding: 21px !important;
	position: relative;
}

.accordionStore .sp-ea-single .ea-header a .ea-expand-icon {
	float: none !important;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 5px 0 5px;
	border-color: #ffffff transparent transparent transparent;
	margin-right: 0 !important;
	margin-left: 10px;
	transition: .2s cubic-bezier(.84,.17,.59,.9) !important;
	border: none;
	content: '';
	position: absolute;
	right: 37px;
	top: 50%;
	transform: translate(0,-50%);
	background: url(images/collapse.svg);
	width: 21.1px;
	height: 10.54px;
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

.accordionStore .sp-ea-single .ea-header a[aria-expanded=true] .ea-expand-icon {
	transform: rotate(180deg);
	top: 41%;
}

.accordionStore .ea-card.sp-ea-single:nth-child(odd) {
	background-color: #FCA4B1 !important;
}

.accordionStore .ea-card.sp-ea-single:nth-child(even) {
	background-color: #E58894 !important;
}

.accordionStore .ea-body {
	padding: 0 0 15px 0 !important;
}

.accordionStore .ea-body p {
	line-height: 1.7;
	padding-bottom: 5px !important;
	border-bottom: 2px dashed rgba(0,0,0,.4);
	font-size: 24px;
}

.accordionStore .ea-body p strong {
	margin-top: 10px;
    font-weight: bold;
    border: 1px solid #000;
    font-size: 24px;
    display: inline-block;
    text-align: center;
    width: 100%;
    margin-bottom: 8px;
}

.orangePostMainContent img {
	width: 100%;
	height: auto;
}

.orangePostContent .productReview {
	margin-top: 45px;
}
/*End main container*/



/*hikaku post*/
.hikakuPost {
	padding-top: 20px;
}

.hikakuPost .storeMainImg {
	margin-bottom: 24px;
	padding: 0 45px;
}

.hikakuPost .boxReviews {
	margin-bottom: 15px;
}

.hikakuPost .listRanking {
	top: 0;
}

.hikakuPostTitle {
	background-color: #EA527B;
	width: 100%;
	display: flex;
	box-sizing: border-box;
	align-items: center;
	padding: 0 0 2px 50px;
}

.hikakuPostTitle img {
	width: 65.638px;
	height: 55.234px;
	margin-right: 10px;
}

.hikakuPostTitle p {
	font-size: 3.7rem;
	font-weight: bold;
	color: #FFFFFF;
	line-height: 1.7647;
}

.hikakuPostDes {
	font-size: 2rem;
	line-height: 1.6;
	color: #000000;
	text-align: justify;
}

.hikakuPost .orangeBtn span {
	font-size: 2.475rem !important;
}

.hikakuPost .starRating {
	margin-top: 25px;
	margin-bottom: 33px;
}
/* end hikaku post*/

/*columnDetail*/
.columnDetail .w595 {
	padding: 20px;
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
}

.columnDetail .w595 p {
	margin: 0 0 2.4rem;
	font-size: 28px;
	line-height: 1.75;
	color: #252525;
	font-weight: normal;
}

.columnDetail .w595 img {
	max-width: 100%;
    height: auto;
    display: block;
}

.columnDetail .w595 h1 {
	font-size: 40px;
	font-weight: bold;
	line-height: 1.6;
	position: relative;
    margin: 0;
    color: #444;
    padding: 15px 0;
}

.columnDetail .w595 h2 {
	font-weight: bold;
	margin: 5.6rem 0 1.568rem;
    font-size: 2.24rem;
    line-height: 1.6;
    border-top: none;
    border-right: none;
    padding: 0.896rem 1.12rem;
    color: #494949;
    background: #f4f4f4;
    border-left: solid 6px #ea527a;
    border-bottom: solid 3px #d7d7d7;
}

.columnDetail .w595 h3 {
    margin: 4.992rem 0 1.344rem;
    padding: 10px 0 10px 10px;
    border-left-width: 4px;
    border-left-style: solid;
    font-size: 1.92rem;
    line-height: 1.5;
    border-top: none;
    border-left: none;
    border-right: none;
    position: relative;
    padding-bottom: 0.96rem;
    border-bottom: 4px solid #DDD;
    background-color: transparent;
    color: #252525;
}

.columnDetail .w595 h3:after {
    position: absolute;
    content: " ";
    border-bottom: solid 4px #ea527a;
    bottom: -4px;
    width: 10%;
    display: block;
}

.columnDetail .w595 h4 {
    margin: 4.048rem 0 1.232rem;
    font-size: 1.76rem;
    padding: 0.44rem 0 0.88rem 1.32rem;
    border-left: 3px solid #DDD;
    border-bottom: 1px solid #DDD;
    font-weight: bold;
    color: rgb(37, 37, 37);
    line-height: 1.75;
}
/*end columnDetail*/


.orangePostContent pre {white-space: pre-wrap}

.infoPage {
	background: #FFF8DD;
}

.infoPage h2 {
	color: #FFFFFF;
	font-size: 2.8rem;
	font-weight: bold;
	background: #EA527B;
	line-height: 1.465;
	padding: 10px 30px;
	margin-top: 30px;
	margin-bottom: 25px;
}

.infoPage p {
	font-size: 28px;
	color: #040000;
	line-height: 1.5;
	margin-bottom: 30px;
	font-weight: normal;
}

.hikakuPostOsaka {
	padding-top: 0px;
}

.dropdownSearch.collapsible {
	pointer-events:none;
}

.mainContent .topSearch {
	display: block;
}

@media screen and (max-device-width: 480px){
	.dropdownSearch.collapsible {
		pointer-events:initial;
	}
	
	.mainContent .topSearch {
		/*display: none;*/
	}
}

.bgRedirect {
	background: #FFD9E9;
}

.wrapper1000 {
    width: 1000px;
    max-width: 100%;
    margin: 0 auto;
    padding: 35px 0 35px 0;
}

.rContent {
	width: 100%;
	box-sizing: border-box;
	padding: 33px 95px;
	background: #FFFFFF;
	text-align: center;
}

.loadingTitle {
	font-size: 2.1rem;
	color: #FC6FAB;
	font-weight: 500;
	line-height: 1.48;
	margin-top: 20px;
}

.rShopContent {
	width: 100%;
	border-radius: 15px 15px 10px 10px;
	border: 1px solid #FC6FAB;
	box-sizing: border-box;
	margin-top: 37px;
}

.rShopContentTitle {
	padding: 16px 0;
	background: #FC6FAB;
	color: #fff;
	border-radius: 10px 10px 0px 0px;
	margin-top: -1px;
	width: calc(100% + 2px);
	margin-left: -1px;
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 1.5;
	display: flex;
	align-items: center;
	justify-content: center;
}

.rShopContentTitle img {
	margin-right: 15px;
}

.rPointText {
	font-size: 2.3rem;
	font-weight: 500;
	color: #060001;
	line-height: 1.5;
	margin-top: 10px;
}

.rPointText strong, .rPointText b {
	font-weight: 500;
}

.rImg {
	width: 650px;
	margin: 0 auto 15px auto;
}

.rOrder {
	font-weight: bold;
	font-size: 2.3rem;
	color: #e51f19;
	margin: 7px 0;
	line-height: 1.5;
}

.rFooter {
	margin-top: 30px;
}

.rFooter p {
	font-size: 2.3rem;
	line-height: 1.5;
	color: #060001;
	margin-bottom: 5px;
	font-weight: 500;
}

.rFooter p a {
	display: inline-block;
	color: #FC6FAB;
	text-decoration: underline;
}

.rSp {
	display: none;
}

@media (max-width: 768px) {
	.bgRedirect {
		background: #fff;
	}

	.wrapper1000 {
		padding: 40px 0;
	}

	.rContent {
		padding: 0 10px;
	}

	.loadingTitle {
		font-size: 1.4rem;
		margin-top: 14px;
	}

	.rShopContent {
		margin-top: 17px;
		border-radius: 5px;
	}

	.rShopContentTitle {
		font-size: 1.4rem;
		flex-wrap: wrap;
		padding: 6px 0;
		border-radius: 5px 5px 0px 0px;
	}

	.rShopContentTitle img {
		margin-right: 0;
		width: 24.5px;
		margin-bottom: 3px;
	}

	.rPointText {
		font-size: 1.4rem;
	}

	.rOrder {
		font-size: 1.4rem;
	}

	.rFooter {
		margin-top: 10px;	
	}

	.rFooter p {
		font-size: 1.4rem;
	}

	.rFooter p.rPLast {
		font-size: 1.15rem;
	}

	.rSp {
		display: block;
	}

	.rImg {
		width: 79.58%;
	}

	.rTextImg {
		width: 100%;
	}
}


.listRanking .rankingItem {
	border: 2px solid #FFD445;
	background: #FFFFF4;
	margin-bottom: 25px;
	filter: drop-shadow(0px 5px 10px rgba(45, 53, 145, 0.25));
	border-radius: 12px;
	margin-bottom: 90px;
}

.listRanking .rankingItem:last-child {
	margin-bottom: 0;
}

.listRanking > div.showMoreShop {
    padding: 10px 0;
    border: 1px solid #FC6FAB;
    text-align: center;
    cursor: pointer;
    font-size: 1.5rem;
    font-weight: 500;
    color: #014D7A;
    text-decoration: underline;
    width: 90%;
    margin: 0 auto 68px auto;
    background: initial;
    filter: drop-shadow(0px 5px 10px rgba(45, 53, 145, 0.25));
    border-radius: 12px;
}
/*
.showMoreShop.active {
	margin-bottom: 0 !important;
}
*/
.showMoreShopContent {
	display: none;
	/*padding-top: 68px*/ 
}

.footerContainer {
	padding: 50px 40px;
}

.footerContainer .footerColumn {
    padding-top: 0;
    padding-bottom: 30px;
}

.footerContainer .colLeft {
	width: 40%;
}

.editor {
	background: #fff7f7;
	padding: 20px;
	margin: 100px auto;
}

.editorHeader {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	justify-content: space-between;
	align-items: center;
}

.editorHeader .colLeft {
	width: 21.12%;
}

.editorHeader .colRight {
	width:74.647%;
}

.editorTitle {
	font-size: 2.5rem;
	line-height: 1.8;
	font-weight: 500;
}

.editorName {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.8;
}

.editorDesc {
	font-size: 2.5rem;
	line-height: 1.8;
	font-weight: 500;
	margin-top: 15px;
}

.sortResult {
	text-align: center;
}

.sortResult p {
	font-weight: bold;
	font-size: 30px;
	color: #2767d3;
	display: inline-block;
	margin: 15px auto 45px auto;
	position: relative;
	padding: 0 45px;
}

.sortResultItem {
	margin-bottom: 65px;
	text-align: center;
}

.sortResultItem li {
	display: inline-block;
	padding: 0 48px;
	border-right: 3px solid #2767d3;
}

.sortResultItem li:last-child {
	border-right: none;
}

.sortResultItem li a {
	font-weight: bold;
	text-decoration: underline;
	font-size: 30px;
	color: #2767d3;
	line-height: 1.2;
}

.sortResultItem li a.active {
	color: #333;
	text-decoration: none;
}

.sortResult p:before {
	content: "";
	background-image: url(images/sort_before.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 35px;
	width: 16px;
	position: absolute;
	top: 0;
	left: 0;
}
.sortResult p:after {
	content: "";
	background-image: url(images/sort_after.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 35px;
	width: 16px;
	position: absolute;
	top: 0;
	right: 0;
}	
.contact-btn {
	background-color: green;
	color: white;
	border-radius: 5px;
	padding: 10px 20px;
	font-size: 16px;
	border: none;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	width: 30%;
	margin-bottom: 30px;
}
.contact-btn-container {
	text-align: center;
}

/*new search*/
.dropdownSearch {
	position: relative;
	height: 80px;
	background: #f4a2a7;
	padding-left: 155px;
	box-sizing: border-box;
	text-align: left;
}

.dropdownSearch p {
	font-weight: bold;
	font-size: 35px;
	color: #fff;
	text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	text-align: left;
	width: 100%;
}

.dropdownSearch img {
	position: absolute;
	top: 0;
	left: 40px;
	width: 100px;
	height: 117.46px;
}

.searchBox {
	padding: 45px 20px 35px 20px;
}

.searchStepWrap {
	display: none;
}

.searchStepWrap.open {
	display: unset;
}

.searchStepInfo {
	padding: 0 20px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.searchStepText {
	width: 113px;
	height: 50px;
	border-radius: 10px;
	background: #f4a2a7;
	display: flex;
	align-items: center;
	justify-content: center;
}

.searchStepText span {
	font-weight: bold;
	font-size: 28px;
	text-align: center;
	color: #fff;
	position: relative;
	top: -3px;
}

.searchStepQuestion {
	font-weight: bold;
	font-size: 30px;
	padding-left: 38px;
	color: #000;
}

.searchStepCheck {
	display: none;
}

.searchStepGroup {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.searchStepRow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 340px;
	height: 80px;
	margin-top: 20px;
}

.searchStepWrap2 .searchStepRow {
	width: 230px;
}

.searchStepLabelText {
	font-weight: bold;
	font-size: 28px;
	color: #f06464;
}

.searchStepCheckBtn {
	position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: #fffff4;
    border-radius: 10px;
	border: 3px solid #f06464;
	box-sizing: border-box;
}

.searchStepCheck:checked+.searchStepCheckBtn {
	background-color: #ff7e0e;
}

.searchStepCheck:checked+.searchStepCheckBtn span {
	color: #fff;
}

.searchStepCheck:checked+.searchStepCheckBtn:after {
	background: url(images/search_arrow_white.svg);
}

.searchStepCheckBtn:after {
	content: '';
	position: absolute;
	width: 15px;
	height: 25px;
	right: 45px;
    top: 50%;
    transform: translate(0,-50%);
    background: url(images/search_arrow.svg);
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.searchStepCheckBtn span {
	position: relative;
	top: -2px;
}

.searchStepWrap2 .searchStepCheckBtn:after {
	right: 9px;
}

.searchStepBtnBack {
	width: 230px;
	height: 80px;
	border-radius: 40px;
	background: transparent;
	border: 2px solid #f06464;
	margin: 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin-top: 27px;
}

.searchStepBtnBack span {
	font-weight: bold;
	font-size: 28px;
	text-align: center;
	color: #f06464;
	
}

.searchStepBtnBack img {
	width: 16px;
	position: relative;
	top: 2px;
	margin-right: 30px;
}

.searchStepWrap3 .searchStepRow {
	width: 230px;
}

.searchStepWrap3 .searchStepCheckBtn:after {
	right: 9px;
}

.searchStepWrap3 .searchStepRow3 {
	width: 340px;
}

.searchStepWrap3 .searchStepRow3 .searchStepCheckBtn:after {
	right: 40px;
}

.searchStepWrap4 .searchStepRow {
	width: 320px;
} 

.searchStepWrap4 .searchStepCheckBtn:after {
	display: none;
}

.searchStepWrap4 .searchStepGroup {
    justify-content: space-around;
}

.searchStepBtnSubmit {
	width: 260px;
	height: 80px;
	border-radius: 40px;
	background: #f06464;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.searchStepBtnSubmit span {
	font-weight: bold;
	font-size: 28px;
	text-align: center;
	color: #fff;
}

.searchStepRowBtn {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 27px;
}

.searchStepRowBtn .searchStepBtnBack {
	margin: 0 40px 0 0;
}

.searchStepCenter {
	text-align: center;
}



.tableCompare {
	border: 1px solid #bababa;
	width: 100%;
	max-width: 720px;
	margin: 0 auto 30px auto;
}

.tableCompare tr > td:nth-child(1) {
	background-color: #fc6fab;
}

.tableCompare tr > td:nth-child(2) {
	background-color: #FFF7F7;
	font-weight: bold;
}

.tableCompare td {
	width: 28.703%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 182px;
	box-sizing: border-box;
/*	font-weight:bold;*/
	flex-wrap: wrap;
}

.tableCompare tr > td:nth-child(1) {
	width: 13.891%;
}

.tableCompare td {
	border-right: 1px solid #bababa;
	border-bottom: 1px solid #bababa;
}

.tableCompare td:last-child {
	border-right: none;
}

.tableCompare p {
	text-align: center;
	width: 100%;
	font-size: 22px;
	line-height: 1.6;
	color: #232323;
}

.tableCompare .fontMedium {
	font-weight: 500;
}

.tableCompare .nmSpace p {
	margin-top: -12%;
}

.tableCompare .textLevel01 p {
	font-size: 18px;
	line-height: 1.389;
}
 
.tableCompare tr td:nth-child(3), 
.tableCompare tr td:nth-child(4) {
	background-color: #FFF;
}

.tableCompareTdTitle {
	font-size: 19px;
	color: #fff;
	line-height: 1.474;
	text-align: center;
	font-weight: bold !important;
}

.tableCompareTr2 td {
	height: 200px;
}

.tableCompareTr2 td > img {
	height: 130px;
}

.tableCompareTr2 p {
	font-size: 19px;
	color: #000000;
	line-height: 1.474;
	font-weight: 500;
    margin-top: -15%;
}

.tableCompareTr2 td:nth-child(2) p {
	color: #ea527a;
	font-weight: bold;
}

.tableCompareTr3 td {
	height: 90px;
}

.tableCompareTr3 td p {
	font-size: 32px;
	color: #000000;
	line-height: 1.49;
	font-weight: 500;
}

.tableCompareTr3 td:nth-child(2) p {
	color: #ea527a;
	font-weight: bold;
}

.tableCompareTr1 td {
	height: 90px;
}

.tableCompareTr1 td > img {
	height: 58%;
}

.tableCompareTr1 td > p {
	font-size: 20px;
	color: #FFF;
	text-align: center;
	width: 100%;
    min-height: 50px;
    line-height: 1.25;
}

.tableCompareTr4 td {
	height: 120px;
	position: relative;
}

.tableCompareTr5 td {
	height: 150px;
	position: relative;
}


.tableCompareTr4 td img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
	height: 80px;
}

.tableCompareTr5 td img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
	height: 80px;
}

.tableCompareTr4 td p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.tableCompareTr5 td p {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}


.tableCompare .tableCompareTr7 td a {
	width: 180px;
	height: 50px;
	border-radius: 25px;
	background: linear-gradient(#2cd1d1 0%, #00886d 100%);
	box-shadow: 0px 3px 0px rgba(0, 80, 80, 0.93);
	display: flex;
	align-items: center;
	justify-content: center;
}

.tableCompare td a span {
	font-weight: bold;
	font-size: 19px;
	color: #fff;
	position: relative;
	padding-right: 25px;
	box-sizing: border-box;
}


.tableCompare td a span:after {
	content: '';
	position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0,-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 0 9px 16px;
	border-color: transparent transparent transparent #ffffff;
}


.tableCompare .tableCompareTr7 td a.btnViewDetail {
	background: linear-gradient(#729ce3 0%, #093b8f 100%);
	box-shadow: 0px 3px 0px rgba(3, 34, 87, 0.93);
	margin-top: -15%;
}

.tableCompare .tableCompareTr7 td a.btnViewDetail span:after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 9px 0 9px;
	border-color: #ffffff transparent transparent transparent;
}

.compare {
	padding: 32px 16px 42px 16px;
}

.tagDateCity {
	top: 351px;
}

.tagCity {
    font-size: 26px;
    color: #fff;
    position: absolute;
    top: 151px;
    right: 69px;
    width: 272px;
    text-align: center;
}

.shopData {
	text-align: center;
	padding: 0 10px;
    box-sizing: border-box;
}
.shopData a {
	font-weight: 500;
	font-size: 17px;
	line-height: 1.48;
	color: #2767d3;
}

.tableCompareListShop {
	display: flex;
}

.tableCompareListShop td {
	height: initial;
	padding: 10px 0;
}

.campaignPrice img {
	width: 100%;
	height: auto;
}

.campaign .campaignPrice p {
	background-image: none;
}


/* new modal */
.rankingItemStar {
	display: flex;
	margin-left: 26px;
	margin-top: 15px;
}


.rankingItemStar .showOneReview {
	color: #F06464;
	text-decoration: underline;
    margin-left: 0;
}

.rankingItemStar .showOneReview:after {
	display: none;
}

.rankingName a {
	display: inline-block;
}

.modal {
	position: fixed;
	z-index: 10000; /* 1 */
	top: 0;
	left: 0;
	visibility: hidden;
	width: 100%;
	height: 100%;
}

.modal .modal-content {
	padding: 20px;
	background: #FFFFF4;
}

.modal.is-visible {
	visibility: visible;
}

.modal-overlay {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: hsla(0, 0%, 0%, 0.5);
	visibility: hidden;
	opacity: 0;
	transition: visibility 0s linear 0.3s, opacity 0.3s;
}

.modal.is-visible .modal-overlay {
	opacity: 1;
	visibility: visible;
	transition-delay: 0s;
}

.modal-container {
    width: 750px;
    max-width: 100%;
    padding: 0 20px;
    box-sizing: border-box;
    margin: 0 auto;
}

.modal-wrapper {
	position: relative;
	z-index: 9999;
	top: 60px;
	width: 100%;
	background-color: #fff;
	box-shadow: 0 0 1.5em hsla(0, 0%, 0%, 0.35);
}

.modal-transition {
	transition: all 0.3s 0.12s;
	transform: translateY(-10%);
	opacity: 0;
}

.modal.is-visible .modal-transition {
	transform: translateY(0);
	opacity: 1;
}

/*.modal-header,
.modal-content {
	padding: 1em;
}
*/
.modal-header {
	position: relative;
	background-color: #fff;
	box-shadow: 0 1px 2px hsla(0, 0%, 0%, 0.06);
	border-bottom: 1px solid #e8e8e8;
}

.modal-close {
	position: absolute;
	top: -30px;
	right: 0;
	padding: 0;
	color: #fff;
	background: none;
	border: 0;
	cursor: pointer;
}

.modal-close:hover {
	color: #777;
}

.modal-close svg {
	fill: #fff;
}

.modal-heading {
	font-size: 1.125em;
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.modal-content > *:first-child {
	margin-top: 0;
}

.modal-content > *:last-child {
	margin-bottom: 0;
}

.reviewBlock .reviewItem:not(:first-child) {
	display: none;
}

.modal-content.first-review .reviewItem:not(:first-child) {
	display: none;
}

.modal-content.first-review .reviewItem {
	margin-bottom: 0;
}

.showMoreReview {
    margin: 0 auto;
    cursor: pointer;
    width: 80%;
    border: 2px solid rgb(240, 171, 10);
    color: rgb(240, 171, 10);
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.full-review .modal-body {
    max-height: 90vh;
    overflow-y: scroll;
}

.modal .p-lesson__cta-lead.p-cta__lead {
    display: none;
}

.modal .p-cta__button-area {
    margin: 1em auto;
}

.modal-body {
    padding-bottom: 1px;
}

.showOneReview {
    text-decoration: underline;
    cursor: pointer;
}

.full-review .modal-wrapper {
	top: 40px;
}

@media (max-width: 768px) {
	.modal .modal-content {
	    padding: 20px 18px;
	}

	.modal-wrapper {
		top: 200px;
	}

	.full-review .modal-wrapper {
		top: 100px;
	}

}

/*STLASSH-970*/
.topBanner {
	height: 511px;
	padding: 34px 25px 0 0;
}

.tagDate {
	top: 216px;
}



.searchStepRow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 340px;
	height: 80px;
	margin-top: 20px;
}

.searchStepWrap1 .searchStepRow {
	width: 230px;
}

.searchStepWrap2 .searchStepRow {
	width: 340px;
}


.searchStepWrap1 .searchStepCheckBtn:after {
    right: 9px;
}

.searchStepWrap2 .searchStepCheckBtn:after {
    right: 45px;
}

.tableCompare tr > td:nth-child(2) {
	border: 2px solid #D94444;
	border-top: none;
	border-bottom: 1px solid #BABABA;
}


.tableCompare .tableCompareTr1 > td:nth-child(2) {
	border-top: 2px solid #D94444;
}


.tableCompareTr3 td {
	height: 118px;
	flex-direction: column;
}

.colCenter .topRankingStar {
	margin-right: 0;
}


.tableCompare p {
	font-size: 19px;
}



.tableCompareTr4 td {
	height: 169px;
}

.tableCompareTr4 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr4 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr4 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}


.tableCompare tr > td:nth-child(1) {
    background-color: #fc6fab;
    justify-content: center;
    flex-direction: column;
    border-right: none;
}


.tableCompareTr5 td {
	height: 239px;
}

.tableCompareTr5 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr5 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr5 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}

.tableCompareTr6 td {
	height: 159px;
}

.tableCompareTr6 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr6 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr6 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}


.tableCompareTr8 td {
	height: 187px;
}

.tableCompareTr8 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr8 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr8 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}


.tableCompareTr9 td {
	height: 203px;
}

.tableCompareTr9 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr9 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr9 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}

.tableCompareTr10 td {
	height: 234px;
}

.tableCompareTr10 td img {
	position: relative;
    top: initial;
    left: initial;
    transform: initial;
    width: 60px;
    height: 60px;
    margin-top: 20px;
}


.tableCompareTr10 td p {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
    margin-top: 10px;
}

.tableCompareTr10 td {
    align-items: center;
    flex-direction: column;
    justify-content: initial;
}


.tableCompare p small {
	font-size: 13px;
	position: relative;
	top: -10px;
}


.tableCompare .fontMedium {
	font-weight: bold;
}


.tableCompare .hLevel03 > td:nth-child(2) {
	border-bottom: 2px solid #D94444;
}


/*new ranking*/

#introduction .c-block-type03 {
    background-image: url(images/c-block-type03-bg.webp);
    width: 100%;
    height: 335px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: grid;
	gap: 24px;
  	padding:  42px 40px;
	z-index: 2;
	position: relative;
	background-color: #fcf4f3;
	box-sizing: border-box;
}

.c-block-type03 .pg-top-introduction-lead {
	display: flex;
    font-weight: 700;
    justify-content: center;
    text-align: center;
    font-size: 32px;
    text-shadow: none;
    gap: 12px;
    color: #fff;
}

.pg-top-introduction-heading {
	margin-top: 50px;
	display: block;
	text-align: center;
}

.pg-top-introduction-heading .pg-top-introduction-heading-small {
	font-size: 46px;
	font-weight: 700;
	text-align: center;
}


.pg-top-introduction-heading .pg-top-introduction-heading-pink {
    font-size: 115px;
    color: #e61e6e;
}


#introduction .blockRanking {
    background: #fcf4f3;
    padding: 0 10px;
    box-sizing: border-box;
    overflow: hidden;
    margin-top: 0;
}
#introduction .blockRanking ul {
	display: flex;
    justify-content: space-between;
}

#introduction .topRanking li {
    border-radius: 18px;
    border: 1px solid #cececa;
    margin-bottom: 44px;
    margin-top: 44px;
    width: 33%;
	background-color: #fff;
}

#introduction .topRanking li a {
	text-decoration: none !important;
	color: #fff;
}

#introduction .topRanking li:first-child {
	border: 1px solid #f0aa3e;
}

#introduction .topRanking li:last-child {
	border: 1px solid #c8af89;
}

#introduction .topRankingInfo {
	width: 100%;
	display: block;
}
  
#introduction .topRankingInfo .colLeft{
	display: block;
	width: 100%;
	text-align: center;
	margin-left: 0;
}
  
#introduction .topRankingNumber {
	margin-top: -30px;
}

#introduction .topRankingNumber img {
	width: 60px;
	margin-top: 0;
}
  
#introduction .topRankingName a {
	font-weight: bold;
	font-size: 32px !important;
	text-decoration: none !important;
	color: #2767d3;
	margin-left: 12px;
	position: relative;
}
#introduction .topRankingName a:after {
	content: '';
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 100%;
	height: 2px;
	background: #2767d3;
}

#introduction .topRankingInfo .colRight{
	display: block;
	width: 100%;
	margin-top: 6px;
	text-align: center;
}

#introduction .topRankingStar {
	width: 146.16px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-inline: auto;
}

#introduction .topRankingPoint {
	display: flex;
	justify-content: center;
	font-weight: bold;
	color: #e61e6e;
	align-items: baseline;
	font-size: 28px;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 1.75;
}
#introduction .topRankingPoint p, #introduction .topRankingContent .colRight p {
	color: #442531;
}
#introduction .topRankingContent .colRight p span.marker {
    background: linear-gradient(transparent 60%, #fff000 40%);
}
#introduction .topRankingPoint p {
	font-size: 15px;
}

#introduction .starRating {
  	width: 25.84px;
  	height: 24.72px;
  	position: relative;
}
#introduction .starRating:before {
	background-image: url(images/empty_star_ct.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	bottom: 0;
	content: "";
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 25.84px;
	height: 24.72px;
 }
#introduction .starRating > span {
	display: block;
	text-indent: -10000px;
	width: 25.84px;
	height: 24.72px;
	position: absolute;
	overflow: hidden;
}

#introduction .starRating > span:before {
	background-image: url(images/full_star_ct.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
	bottom: 0;
	content: "";
	display: block;
	height: 24.72px;
	width: 25.84px;
	left: 0;
	position: absolute;
	right: 0;
	text-indent: 10000px;
	top: 0;
}

#introduction .topRankingContent {
	display: block; 
	margin-bottom: 30px;
	margin-top: 15px;
	text-align: center;
}

#introduction .topRankingContent .colLeft {
	display: inline-block;
	margin-left: 0;
}

#introduction .topRankingContent .colLeft img {
	width: auto;
    height: min(90px);
}

#introduction .topRankingContent .colRight {
	padding: 0 10px;
	height: min(70px);
	margin-left: 0;
}

#introduction .topRankingContent .colRight p {
	position: relative;
	padding-left: 0; 
	font-size: 15px;
	font-weight: bold;
	/* color: #000000; */
	line-height: 1.23;
	margin-top: 15px;
}
  
#introduction .topRankingContent .colRight p:first-child {
	margin-top: 0;
}

#introduction .topRankingContent .colRight p:before {
	display: none;
}

#introduction .topRanking li:first-child .topRankingContent .colRight p strong {
	font-size: 15px;
	color: #e61e6e;
	font-weight: bold;
}


.kira {
    width: 180px;
    height: 50px;
    border-radius: 25px;
    background: linear-gradient(#2de0b4 0%, #1cb8ab 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    margin-inline: auto;
}

.kira span {
    font-weight: bold;
    font-size: 19px;
    color: #fff;
    position: relative;
    padding-right: 25px;
    box-sizing: border-box;
}


.kira span:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
    background: url(images/hp_arrow.svg);
    width: 7.25px;
    height: 11.94px;
    background-size: 100% 100%;
    background-repeat: no-repeat;
}


.kira::after {
    animation: 2s 0s shine linear infinite;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .4) 100%);
    content: '';
    height: 100%;
    left: -100%;
    position: absolute;
    top: 0;
    transform: skewX(-25deg);
    width: 50%;
}

@keyframes shine {
	20% {
		left: 150%;
	}
	100% {
		left: 150%;
	}
}