/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*,*::before,*::after{box-sizing:border-box}*{margin:0}@media (prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}

@font-face {
  font-family: 'D-DIN';
  src: url('/column/wp-content/themes/megla-grid/assets/img/senkyo2026/D-DIN.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

html{scroll-behavior: smooth;}

body{
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
	background: #4b1516;
}

p{
  font-size: 16px;
  line-height: 2;
	color: #000;
}
li{  font-size: 16px;color: 000;}
a{text-decoration: none;}
a:focus {  outline: none;}
a:focus-visible {  outline: none;}
header{
  text-align: center;
	max-width: 1200px;
	margin: 0 auto;
	background: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/header_bg.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	position: relative;
}

header h1{
	width:40%;
	margin: 0 auto;
	max-width: 560px;
	padding-top: 5%;
}

header .date{
	width:33%;
	max-width:481px;
	margin: 20px auto;
}

header .present{
	position: absolute;
	z-index: 2;
	width: 14%;
	bottom: -16px;
	right: 15%;
  animation: bounce 3s infinite ease-in-out;
}
@keyframes bounce {
  0%, 40% {
    transform: translateY(0);
  }
  20% {
    transform: translateY(10px);
  }
}

/* 投票中 */

.sokuhou .countall{
  border: 8px solid transparent;
  border-radius: 100px;
  background:
    linear-gradient(#4b1516, #4b1516) padding-box,
    linear-gradient(to right, #efcc7d 0%, #f8eed5 33%, #f3da8b 65%, #eec983 95%) border-box;
	max-width: 460px;
	width:38%;
	margin: 40px auto 0;
	padding: 10px 6px 0;
}
.sokuhou .countall p{
	text-align: center;
	background: linear-gradient(to right, #efcc7d 0%, #f8eed5 33%, #f3da8b 65%, #eec983 95%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
	font-size: clamp(20px, 3.2vw ,32px);
	font-weight: bold;
	line-height: 1.1;
}
.sokuhou .countall p span{
	font-size: clamp(40px, 9vw ,84px);
	font-family: "D-DIN";
	font-weight: 900;
}
.sokuhou a.anchor{
	background: url(/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png);
	background-size: contain;
	background-repeat: no-repeat;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width:460px;
	width:40%;
	margin: 20px auto;
	color: #000;
	font-size: clamp(24px, 3.6vw, 42px);
	text-decoration: none;
	aspect-ratio:578 / 105;
	font-weight: bold;
	filter:drop-shadow(5px 10px 5px #00000055);
	line-height: 1;
}
.sokuhou a.anchor::before{
	  content: "";
    position: absolute;
    inset: 0;
    background: url(/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png) center / contain no-repeat;
    filter: brightness(0) invert(1);
    opacity: 0;
    transition: opacity .3s;
    pointer-events: none;
}
.sokuhou a.anchor:hover::before{
	opacity: 0.5;
}

.sokuhou .sokuhouall{
	background: #fff;
	border: 3px solid #b28254;
	border-radius: 20px;
	padding: 0 auto;
	max-width: 760px;
	margin: 30px auto;
	padding: 20px 40px;
}

.sokuhou .sokuhouall dl{
	display: flex;
	align-items: center;
	border-top: 3px double #b28254;
	padding: 6px 30px;
	margin:0;
	gap:16px;
}

.sokuhou .sokuhouall dl:first-child{
	border-top: none;
}

.sokuhou .sokuhouall dl dt img{
	width: 70px;
	height: 70px;
}
.sokuhou .sokuhouall dl dd{
	font-size: 22px;
	font-weight: bold;
	display: flex;
	align-items: center;
	margin: 0;
}
.sokuhou .sokuhouall dl dd img{
	width:100px;
	height: 100px;
}
.sokuhou .sokuhouall dl dd:last-child{
	flex: 1;
}
.sokuhou .sokuhouall dl dd:last-child span.name{
}
.sokuhou .sokuhouall dl dd:last-child span.count{
	font-size: 40px;
	margin-top: -8px;
	margin-right: 4px;
	margin-left: auto;
}
.sokuhou .link p{
	text-align: center;
	color: #fff;
	letter-spacing: 0.05em;
	display: flex;
	justify-content: center;
	align-items: center;
	gap:10px;
}
.sokuhou .link p::before{
	content:"";
	background: #fff;
	width:2px;
	height: 1em;
	transform: rotate(150deg);
}
.sokuhou .link p::after{
	content:"";
	background: #fff;
	width:2px;
	height: 1em;
	transform: rotate(-150deg);
}
.sokuhou .link a.anchor{
	font-size: 28px;
	margin:4px auto 40px;
}

#cf7-vote-modal-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.5);
    z-index: 9999;
    justify-content: center;
    align-items: center;
}
#cf7-vote-modal-overlay.active {
    display: flex;
}
#cf7-vote-modal-box {
		position: relative;
    background: #4b1516;
    border:1px solid #fff;
    padding: 30px 25px;
    max-width: 400px;
    width: 90%;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0,0,0,0.2);
}
#cf7-vote-modal-box .cross{
	position: absolute;
	top:-24px;
	right: 0;
}
#cf7-vote-modal-box .cross::before,
#cf7-vote-modal-box .cross::after{
	content:"";
	background: #fff;
	width:30px;
	height: 2px;
	border-radius: 2px;
	transform: rotate(45deg);
	display: block;
}

#cf7-vote-modal-box .cross::after{
	transform: translateY(-1px) rotate(-225deg);
}

#cf7-vote-modal-box p {
    margin: 0 0 20px;
    font-size: 18px;
    line-height: 1.8;
		color: #fff;
}
#cf7-vote-modal-box p span{
	font-size: 26px;
}
#cf7-vote-modal-box button {
    background: #ca141c;
    color: #fff;
    border: none;
    padding: 8px 24px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
		width: 60%;
		outline: none;
		transition: 0.3s;
}
#cf7-vote-modal-box button:hover {
	background: #c95157;
}


/* 投票中ここまで */

h2{
	color: #fff;
	text-align: center;
	font-weight: 500;
	font-size:24px;
	line-height: 1.8;
	padding: 80px 0 0px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap:16px;
	letter-spacing: 0.1em;
	font-weight: bold;
}
h2::before{
	content:"";
	background: #fff;
	width:2px;
	height: 1em;
	transform: translateY(-8px) rotate(150deg) ;
}
h2::after{
	content:"";
	background: #fff;
	width:2px;
	height: 1em;
	transform: translateY(-8px) translateX(-5px) rotate(-150deg) ;
}
h2 span em{
	font-size: 18px;
	display: block;
	text-align: center;
	font-style: normal;
}

.ranking_before header + h2{
	padding-bottom: 40px;
}

section.entry .inner{
  max-width: 880px;
  margin: 0 auto;
  width:100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap:40px 26px;
}
section.entry .inner > div{
  width:calc(33% - 40px);
  color: #fff;
  position: relative;
	background-repeat: no-repeat;
	background-size: contain;
	container-type: inline-size;
	text-align: center;
}

/* 投票前 */
.ranking_before section.entry .inner > div{
  aspect-ratio: 328 / 470;
	transition: 0.3s;
	position: relative;
}
.ranking_before section.entry .inner > div::before{
  content: "";
  position: absolute;
  inset: 0;
  background: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no1.png") center / contain no-repeat;
  filter: brightness(0) invert(1);
  opacity: 0;
  transition: opacity .3s;
  pointer-events: none;
}
.ranking_before section.entry .inner > div:hover::before {
	opacity: 0.3;
}

.ranking_before section.entry .inner div img.item{
	height: 58.8%;
	width: auto;
	margin: 15% auto 0;
}


/* 投票中 */

.ranking .wpcf7{
	display: none;
}

.ranking section.entry .inner > div{
  aspect-ratio: 362 / 650;
}

.ranking section.entry .inner > div::before{
  content: "";
  position: absolute;
  inset: 0;
  background: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no1_now.png") center / contain no-repeat;
  filter: brightness(0) invert(1);
  opacity: 0;
  transition: opacity .3s;
  pointer-events: none;
}
.ranking section.entry .inner > div:hover::before {
	opacity: 0.3;
}

.ranking section.entry .inner > div:has(.vt:hover)::before {
  opacity: 0;
}

.ranking section.entry .inner div img.item{
	height: 49%;
	width: auto;
	margin: 10% auto 0;
}

section.entry .inner div p.name{
	text-align: center;
	margin: 0 auto 3%;
	font-size: 10.5cqw;
	font-weight: bold;
	letter-spacing: 0.1em;
	width:90%;
	line-height: 20cqw;
	color: #fff;
}

.ranking section.entry .inner div p.name{
	margin-top: -2%;
}

section.entry .inner div.e4 p.name{
	font-size: 9cqw;
	letter-spacing: 0.03em;
}
section.entry .inner div.e6 p.name,
section.entry .inner div.e7 p.name{
	font-size: 10cqw;
	letter-spacing: 0.03em;
}
section.entry .inner div.e8 p.name,
section.entry .inner div.e9 p.name{
	font-size: 8.5cqw;
	letter-spacing: 0;
}

section.entry .inner div p.name::after{
	content: "";
	display: block;
	background: linear-gradient(#efcc7d 0%,#f8eed5 33%,#f3da8b 64%,#eec983 94%);
	width:92%;
	height: 3px;
	margin: 0 auto;
}
section.entry .inner div p.count {
	text-align: center;
	font-size: 8.5cqw;
	font-weight: bold;
	letter-spacing: 0.1em;
	width:100%;
	line-height: 1;
	color: #fff;
}
.ranking_before section.entry .inner div p.count {
	display: none;
}

section.entry .inner div p.count span{
	font-family: "D-DIN";
	font-size: 42px;
	display: inline-block;
	letter-spacing: 0.1em;
}
section.entry .inner div > a[data-fancybox]{
	position: absolute;
	height: 100%;
	width:100%;
	left: 0;
	top: 0;
}
section.entry .inner div a.mani{
	text-align: center;
	border-bottom: 1px solid #fff;
	color: #fff;
	margin: 0 auto;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 0;
	text-decoration: none;
	transition: 0.2s;
	vertical-align: top;
}

.ranking section.entry .inner div a.mani{
	margin-top:3%
}

section.entry .inner div a.mani::after{
	content: "";
	border-left: 8px solid #fff;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	display: inline-block;
	margin:3px 0 0 5px;
	transition: 0.2s;
}


/* 投票中 */

section.entry .inner div a.vt{
	text-align: center;
	display: block;
	width: 90%;
	margin: 2% 4% 0 6%;
	cursor: pointer;
	background: transparent;
	position: relative;
}
section.entry .inner div a.vt::before,
.fancybox__content .pop_vt a::before{
	  content: "";
    position: absolute;
    inset: 0;
    background: url(/column/wp-content/themes/megla-grid/assets/img/senkyo2026/vote.png) left / cover no-repeat;
		filter: brightness(0) invert(1);
    opacity: 0;
    transition: opacity .3s;
    pointer-events: none;
}

section.entry .inner div a.vt:hover::before,
.fancybox__content .pop_vt a:hover::before{
	opacity: 0.5;
}
section.entry .inner div a.vt img{
	width: 100%;
}

.ranking section.entry .inner div img.rank{
	position: absolute;
	top:20px;
	left: 10px;
	width:70px;
}


.ranking_before section.entry .inner div.e1{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no1.png");}
.ranking section.entry .inner div.e1{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no1_now.png");}

.ranking_before section.entry .inner div.e2{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no2.png");}
.ranking section.entry .inner div.e2{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no2_now.png");}

.ranking_before section.entry .inner div.e3{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no3.png");}
.ranking section.entry .inner div.e3{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no3_now.png");}

.ranking_before section.entry .inner div.e4{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no4.png");}
.ranking section.entry .inner div.e4{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no4_now.png");}

.ranking_before section.entry .inner div.e5{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no5.png");}
.ranking section.entry .inner div.e5{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no5_now.png");}

.ranking_before section.entry .inner div.e6{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no6.png");}
.ranking section.entry .inner div.e6{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no6_now.png");}

.ranking_before section.entry .inner div.e7{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no7.png");}
.ranking section.entry .inner div.e7{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no7_now.png");}
section.entry .inner div.e7 p,
section.entry .inner div.e7 a{text-shadow: 0 0 5px #37240b;}

.ranking_before section.entry .inner div.e8{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no8.png");}
.ranking section.entry .inner div.e8{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no8_now.png");}

.ranking_before section.entry .inner div.e9{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no9.png");}
.ranking section.entry .inner div.e9{background-image: url("https://keishindo-shop.com/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no9_now.png");}


/* fancybox POPUP */
.fancybox__content{
  padding:2% 3%!important;
	width:84%;
  max-width: 640px;
  background-size: cover!important;
  background-position: center center!important;
}

.fancybox__content .pop_flex{
	display: flex;
	align-items: center;
	color: #fff;
	gap:3%;
}
.fancybox__content .pop_flex img{
	width:32%;
}
.fancybox__content .pop_flex p{
	font-size: clamp(18px, 1.8vw, 25px);
	line-height: 1.6;
	letter-spacing: 0.1em;
	text-shadow: 1px 1px 5px #555;
	color: #fff;
}
.fancybox__content .pop_flex p:first-child{
	font-size: clamp(28px, 2.8vw, 35px);
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.2;
}
.fancybox__content#no8_box .pop_flex p:first-child br,
.fancybox__content#no9_box .pop_flex p:first-child br{
	display: none;
}
.fancybox__content ul{
  color: #fff;
  list-style: none;
  font-size: 18px;
  padding: 2% 0;
}

.fancybox__content ul li{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap:12px;
  margin-bottom: 1em;
  letter-spacing: 0.05em;
}
.fancybox__content ul li p{
	font-size: clamp(20px, 2vw, 24px);
  line-height: 1.8;
	color: #fff;
	margin: 0;
}
.fancybox__content ul li::before{
  content:"";
  display: block;
  background: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/pop_check.png");
  background-repeat: no-repeat;
  background-size: contain;
  width:clamp(16px, 2vw, 24px);
  height: clamp(16px, 2vw, 24px);
	margin-top: 1.7%;
	flex-shrink: 0;
}
.fancybox__content ul li p span{
	font-size: 14px;
	display: block;
}

.fancybox__content .pop_vt p{
    text-align: center;
    color: #fff;
    letter-spacing: 0.05em;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
		font-size: 14px;
}
.fancybox__content .pop_vt p::before{
		content: "";
    background: #fff;
    width: 2px;
    height: 1em;
    transform: rotate(150deg);
}
.fancybox__content .pop_vt p::after{
    content: "";
    background: #fff;
    width: 2px;
    height: 1em;
    transform: rotate(-150deg);
}
.fancybox__content .pop_vt a{
	width:100%;
	margin: 0 auto 10px;
	max-width: 300px;
	display: block;
	outline: none!important;
	position: relative;
	background: transparent;
}

.fancybox__content .close{
	background: #4d4d4d;
	color: #fff;
	font-size: clamp(16px, 1.4vw, 18px);
	border-radius: 3px;
	margin: 0 auto;
	padding: 1% 9%;
	line-height: 1.8;
  appearance: none;
  -webkit-appearance: none;
  border: none;
  outline: none;
	text-align: center;
	text-shadow: none;
	box-shadow: 1px 1px 5px #222;
	opacity: 1;
	font-weight: normal;
	cursor: pointer;
	transform: translateY(3px);
	transition: background 0.3s ease;
}
button.close,
button.close:focus,
button.close:focus-visible,
button.close:active {
  outline: none !important;
  box-shadow: none !important;
}

close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover{
	opacity: 1;
	background: #666;
}

.fancybox__carousel.is-draggable .fancybox__slide, .fancybox__carousel.is-draggable .fancybox__slide .fancybox__content{
	cursor: auto!important;
}

#no1_box{  background-color: #16294f;}
#no1_box .vote{  color: #16294f;  background: #d7e3f3;}
#no1_box .vote i{  background-color: #16294f;}
#no1_box .vote i::before{  border-left-color: #d7e3f3;}

#no2_box {background-color:#de6961 }
#no2_box .vote{  color: #c95248;  background: #f7d7cb;}
#no2_box .vote i{  background-color: #c95248}
#no2_box .vote i::before{  border-left-color: #f7d7cb;}

#no3_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no3_bg.jpg");}
#no3_box .vote{  color: #ea9e00;  background: #f5efc1}
#no3_box .vote i{  background-color: #ea9e00;}
#no3_box .vote i::before{  border-left-color: #f5efc1;}

#no4_box {background-color: #82934f;}
#no4_box .vote{  color: #82934f;  background: #e7eece;}
#no4_box .vote i{  background-color: #82934f;}
#no4_box .vote i::before{  border-left-color: #e7eece;}

#no5_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no5_bg.jpg");}
#no5_box .vote{  color: #cc6d82;  background: #fdf7f8;}
#no5_box .vote i{  background-color: #cc6d82;}
#no5_box .vote i::before{  border-left-color: #fdf7f8;}

#no6_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no6_bg.jpg");}
#no6_box .vote{  color: #35803b;  background: #e7eece;}
#no6_box .vote i{  background-color: #35803b;}
#no6_box .vote i::before{  border-left-color: #e7eece;}

#no7_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no7_bg.jpg");}
#no7_box .vote{  color: #9e5824;  background: #f5f3c5;}
#no7_box .vote i{  background-color: #9e5824;}
#no7_box .vote i::before{  border-left-color: #f5f3c5;}

#no8_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no8_bg.jpg");}
#no8_box .vote{  color: #231815;  background: #eeeeef;}
#no8_box .vote i{  background-color: #231815;}
#no8_box .vote i::before{  border-left-color: #eeeeef;}

#no9_box {background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/no9_bg.jpg");}
#no9_box .vote{  color: #231815;  background: #eeeeef;}
#no9_box .vote i{  background-color: #231815;}
#no9_box .vote i::before{  border-left-color: #eeeeef;}


/* 投票中 */
.ranking .fancybox__content ul{
	padding: 2% 0 4%;
}

section.compare{
  padding-bottom: 30px;
	text-align: center;
}

section.compare .if{
	max-width: 400px;
	width: 90%;
	margin: 0 auto;
	background: linear-gradient(#f4efed, #f4efed) padding-box, linear-gradient(to right, #efcc7d 0%, #f8eed5 33%, #f3da8b 65%, #eec983 95%) border-box;
	box-shadow: inset 1px 1px 2px 2px #4b151699;
	border: 6px solid transparent;
	padding: 16px 10px 0;
}
section.compare .if p{
	line-height: 1.6;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
	font-size: 14px;
}
section.compare .if p span{
	font-size: 20px;
}
section.compare .if img{
	width: 60%;
	margin: 0 auto;
}

section.compare .flex1{
  padding: 1.5em 1em 1.5em 1.5em;
	background: #f4efed;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap:20px;
  margin-bottom: 1em;
	max-width: 400px;
	width: 90%;
}

section.compare .flex1 div p:first-child{
  font-size: 20px;
  margin-bottom: 10px;
	font-weight: 900;
	letter-spacing: 0.1em;
}

section.compare .flex1 div p:first-child > span{
	font-size: 18px;
	letter-spacing: 0;
}
section.compare .flex1 div p:first-child > span > span{
	font-size: 14px;
}

section.compare .flex1 div p:nth-child(2){
	text-align: left;
	font-weight: bold;
	line-height: 1.6;
	font-size: 15px;
	letter-spacing: 0.05em;
}
section.compare .flex1 div p:nth-child(3){
	text-align: left;
	font-weight: bold;
	line-height: 1.6;
	font-size: 13px;
	letter-spacing: 0.05em;
}

section.compare .flex1 div a.btn{
    background: url(/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 220px;
    width: 100%;
    margin: 20px auto;
    color: #000;
    text-decoration: none;
    aspect-ratio: 578 / 123;
    font-weight: bold;
    filter: drop-shadow(2px 4px 2px #00000055);
    line-height: 1;
		transition: 0.3s;
}
section.compare .flex1 div a.btn:hover{
	opacity: 0.5;
}

section.compare .flex1 img{
	width: 100px;
}

section.compare .inner{
  padding: 1.5em 0 0;
	background: #f4efed;
	max-width: 400px;
	width: 90%;
	margin: 0 auto 40px;
	position: relative;
}

section.compare #present{
	padding-bottom: 20px;
}

section.compare .inner .flex2{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap:20px;
  margin-bottom: 1em;
}
section.compare .inner p.ataru1,
section.compare .inner p.ataru2{
	background: #cb141c;
	color:#fff;
	margin-top: -30px;
	position: absolute;
	top:10px;
	left: 15%;
	display: block;
	line-height: 1;
	padding: 3px 20px;
	min-width: 160px;
}
section.compare .inner p.ataru2{
	left: 50%;
	transform: translateX(-50%);
}
section.compare .inner p.ataru1 span,
section.compare .inner p.ataru2 span{
	font-size: 42px;
	font-family: "D-DIN";
	font-weight: 500;
}
section.compare .flex2 img{
	width: 80px;
	transform: rotate(10deg);
}
section.compare .flex2 div p.camp,
section.compare .flex3 p.camp{
	background: #4b1516;
	border-radius: 30px;
	color: #fff;
	font-size: 12px;
	display: inline-flex;
	line-height: 1;
	padding: 3px 12px;
	align-items: center;
	gap:3px;
	letter-spacing: 0;
}
section.compare .flex2 div p.camp span,
section.compare .flex3 p.camp span{
	font-size: 20px;
	font-family: "D-DIN";
	font-weight: 500;
}
section.compare .flex2 div p.txt{
	font-weight: bold;
	line-height: 1.4;
	margin-top: 14px;
}
section.compare .flex2 div p.txt span{
	display: block;
}
section.compare .flex2 div p.txt span:nth-child(1){
	font-size: 18px;
	font-weight: 900;
}
section.compare .flex2 div p.txt span:nth-child(3){
	font-size: 22px;
	font-weight: 900;
}
section.compare .flex3{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:8px;
	margin-top: 20px;
}
section.compare .flex3 .txt{
	font-size: 13px;
	letter-spacing: -0.05em;
}

section.compare .flex4{
	display: flex;
	flex-direction: column;
	gap:20px;
	padding: 20px 0;
	width: 80%;
	margin: 0 auto;
}

section.compare .flex4 > div > div{
	background: #50080e;
	padding: 8px 5px 5px;
}
section.compare .flex4 > div img{
	width: 100%;
}
section.compare .flex4 > div p:first-child{
	color: #c39e88;
	font-size: 14px;
	line-height: 1.2;
	letter-spacing: -0.05em;
}
section.compare .flex4 > div p:last-child{
	color: #fff;
	font-size: 16px;
	line-height: 1.2;
	letter-spacing: 0;
}

section.compare .howto .howtobtn{
	background: #fbd9c9;
	border:2px solid #d19e84;
	font-size: 16px;
	line-height: 1;
	padding: 18px 25px;
	display: block;
	text-align: left;
	position: relative;
	letter-spacing: 0.05em;
	font-weight: bold;
	color: #4b1516;
	margin: 0;
}
section.compare .howto .howtobtn::before{
	content:"";
	position: absolute;
	top:calc(50% - 10px);
	right:34.5px;
	background: #cb141c;
	width:2px;
	height: 20px;
	transition: 0.1s;
}
section.compare .howto .howtobtn::after{
	content:"";
	position: absolute;
	top:calc(50% - 1px);
	right:25px;
	background: #cb141c;
	width:20px;
	height: 2px;
}

section.compare .howto .howtobtn.open::before{
	transform: rotate(90deg);
}
section.compare .howto .howtobtn.open::after{
	opacity: 0;
}
section.compare .howto > div{
	opacity: 0;
	height: 0;
	min-height: 0;
	transition: 0.3s;
}
section.compare .howto > div.open{
	opacity: 1;
	height: 100%;
}
section.compare .howto > div > div{
	padding: 20px;
}
section.compare .howto > div .howtostep{
	display: flex;
	flex-wrap: wrap;
	gap:20px;
	text-align: left;
}
section.compare .howto > div .howtostep dt{
	width:50px;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-top: 3px;
}
section.compare .howto > div .howtostep dd{
	width: calc(100% - 70px);
	letter-spacing: 0.1em;
}
section.compare .howto > div .howtostep dt span{
	font-size: 20px;
	font-family: "D-DIN";
	line-height: 14px;
}
section.compare .howto > div .howtoimg{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:30px;
	width:90%;
	margin: 20px auto;
}
section.compare .howto > div .howtoimg div{
	font-size: 12px;
	text-align: center;
	letter-spacing: 0;
}
section.compare .howto > div .howtoimg div:first-child{
	width:calc(38% - 15px);
}
section.compare .howto > div .howtoimg div:last-child{
	width:calc(62% - 15px);
}
section.compare .howto > div .howtoimg div span{
	display: flex;
	white-space: nowrap;
	justify-content: center;
	align-items: center;
	gap:4px;
	margin-top: 7px;
}
section.compare .howto > div .howtoimg div span img{
	width:18px;
	height: 18px;
	display: inline-block;
}

section.compare .howto > div .howtoimg div:last-child span img{
	background: #000;
	border-radius: 3px;
	width:18px;
	height: 18px;
	padding: 2px;
}

section.compare .howto > div .howtosche{
	color: #cb141c;
	text-align: left;
	padding-top: 10px;
}
section.compare .howto > div .howtosche p{
	background: #cb141c;
	color: #fff;
	line-height: 1;
	padding: 5px 10px;
	font-size: 14px;
	display: inline-block;
}
section.compare .howto > div .howtosche dl{
	display: flex;
	flex-wrap: wrap;
	gap:4px 10px;
	margin-top: 10px;
}
section.compare .howto > div .howtosche dt{
	width:65px;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 0.05em;
}
section.compare .howto > div .howtosche dd{
	width: calc(100% - 85px);
	letter-spacing: 0.05em;
	font-size: 14px;
}

.ranking_before section.compare .detail{
	display: none;
}

section.compare h3{
	background: #fff;
	color: #4b1516;
	font-weight: 900;
	font-size: 18px;
	padding: 10px 16px;
	max-width: 400px;
	margin: 0 auto;
	text-align: left;
	line-height: 1;
}

section.compare ul.detail_list{
	padding: 16px 24px;
	max-width: 400px;
	margin: 0 auto;
	color: #fff;
}
section.compare ul.detail_list li{
	text-align: left;
	list-style: none;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0;
}
section.compare .detail_scroll{
	border: 1px solid #fff;
	width:100%;
	max-width: 400px;
	margin: 0 auto;
	padding: 4px 4px 12px 0;
	position: relative;
}
section.compare .detail_scroll ul {
	overflow-y: scroll;
	height: 16em;
	padding: 0 10px;

	/* ネイティブのスクロールバーは非表示にする */
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* IE, Edge */
}
section.compare .detail_scroll ul::-webkit-scrollbar {
	display: none; /* Chrome, Safari */
}

/* 自作スクロールバーのトラック */
section.compare .fake_scrollbar {
	position: absolute;
	top: 10px;
	right: 4px;
	width: 4px;
	height: 100%;
	background: transparent;
	pointer-events: none;
}

/* 自作スクロールバーのつまみ */
section.compare .fake_scrollbar_thumb {
	position: absolute;
	top: 0;
	right: 0;
	width: 4px;
	border-radius: 3px;
	background-color: #989898;
}


section.compare .osusume{
	padding: 3em 0 0.6em;
	margin-bottom: 0;
	letter-spacing: 0.05em;
}
section.compare .osusume::before,
section.compare .osusume::after{
	display: none;
}
section.compare .inner2{
	max-width: 440px;
	margin: 0 auto;
	background: #fff;
	padding-bottom: 30px;
}
section.compare .flex5{
	width: 100%;
	padding: 20px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	flex-wrap: wrap;
	gap:20px;
}
section.compare .flex5 div{
	width:calc(50% - 10px);
}
section.compare .flex5 div a{
	display: block;
	position: relative;
	transition: opacity 0.3s ease;
}
section.compare .flex5 div a:hover{
	opacity: 0.5;
	text-decoration: none;
}
section.compare .flex5 div img{
	margin: 0 auto;
}
section.compare .flex5 div p{
	font-size: 14px;
	line-height: 1.6;
	margin-top: 10px;
	letter-spacing: 0;
}

section.compare .inner2 > a{
	background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png");
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 20px;
	color:#000;
	width: 80%;
	aspect-ratio:616 / 143;
	display: block;
	padding-top: 3.5%;
	margin:0 auto;
	filter:drop-shadow(5px 10px 5px #666);
	text-decoration: none;
	transition: opacity 0.5s ease;
}
section.compare .inner2 > a:hover{
	opacity: 0.5;
}

footer .inner{
  background: #fff;
  padding:30px 1.5em 1em;
  text-align: center;
}
footer a{
  display: inline-block;
  vertical-align: bottom;
}
footer .insta img{
  width: 33px;
  height: 32px;
}
footer .x{
  background: #000;
  border-radius: 5px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
}
footer .x img{
  width: 20px;
  height: 20px;
}
footer .flex{
  display: flex;
  align-items: center;
  justify-content: center;
  gap:30px;
  margin:30px 0;
}
footer .flex .logo{
  height: 40px;
  width: auto;
}
footer .target {
  background: #4b1516;
  color: #fff;
  font-weight: bold;
  padding:8px 16px;
}
footer .target img{
  width:17px;
  height: 14px;
  display: inline-block;
  margin: 0 0 2px 3px;
  vertical-align: middle;
}
footer p{
  font-size: 14px;
  font-weight: bold;
}


/* 投票中_thanks */
.ranking_thanks header{
	padding-bottom: 10px;
}
.ranking_thanks .thanks{
	max-width: 480px;
	margin: 0 auto 40px;
	padding: 0 20px;
}

.ranking_thanks .thanks h2{
	padding: 40px 0 0;
	letter-spacing: 0;
	line-height: 1.6;
}

.ranking_thanks .thanks .share{
	position: relative;
	background-image: url("/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png");
	background-repeat: no-repeat;
	background-size: contain;
	max-width: 400px;
	aspect-ratio:578 / 105;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px auto 0;
	color: #000;
	gap:14px;
	font-size: 18px;
	font-weight: bold;
	transition: 0.3s;
	letter-spacing: 0;
	text-decoration: none;
}
.ranking_thanks .thanks .share::before{
    content: "";
    position: absolute;
    inset: 0;
    background: url(/column/wp-content/themes/megla-grid/assets/img/senkyo2026/btn.png) center / contain no-repeat;
    filter: brightness(0) invert(1);
    opacity: 0;
    transition: opacity .3s;
    pointer-events: none;
}
.ranking_thanks .thanks .share:hover::before{
 opacity: 0.5;
}

.ranking_thanks .thanks .share + p{
	color: #fff;
	max-width: 360px;
	margin: 6px auto 24px;
}

.ranking_thanks .thanks .share_i img{
	height: 32px;
}
.ranking_thanks .thanks .share_x img{
	background: #000;
	height: 34px;
	padding: 5px;
	border-radius: 5px;
}
.ranking_thanks .compare h2::before{
  box-shadow: 10px 8px 0 #fff;
	transform: translateY(0) rotate(150deg);
}

.ranking_thanks .compare h2::after{
  box-shadow: -10px 8px 0 #fff;
	transform: translateY(0) translateX(-3px) rotate(-150deg) ;
}

.ranking_thanks .compare #present{
	padding-top: 20px;
}

.pc{display: inline;}
.sp{display: none}

@media screen and (min-width:1200px){
	.fancybox__content#no9_box .pop_flex p:first-child br{
		display: inline;
	}
}

@media screen and (max-width:1000px){
	.sokuhou .countall p {
		font-size: clamp(20px, 2.5vw, 32px);
	}
	.sokuhou .countall p span{
		font-size: clamp(40px, 7vw, 84px);
	}
	.sokuhou .link a.anchor {
		font-size: 22px;
	}
	
  section.entry .inner div a.vt i{
    height: 34px;
    width: 34px;
    margin-top: 2px;
  }
  section.entry .inner div a.vt i::after{
    border-left-width: 15px;
    border-top-width: 10px;
    border-bottom-width: 10px;
    top: calc(50% - 10px);
    right: calc(50% - 10px);
  }
}

@media screen and (max-width:767px){
  p,li{font-size: 14px;}

  header{
  padding-bottom: 40px;
	background-size: 200%;;
  }
  header h1{
    width:80%;
    padding-top: 10%
  }
	header .date{
		width: 74%;
	}
	header .present{
		width: 25%;
		max-width: 148px;
		bottom:23%;
		right: 2%;
	}
	.sokuhou .countall{
		width: 86%;
	}
	.sokuhou .countall p{
		font-size: clamp(24px, 5vw, 38px);
	}
	.sokuhou .countall p span{
		font-size: clamp(50px, 16vw, 84px);
	}
	.sokuhou a.anchor{
		width: 86%;
		font-size: clamp(28px, 7vw, 46px);
	}
	.sokuhou .sokuhouall{
		width:86%;
		border-radius: 40px;
		padding: 20px 30px;
	}
	.sokuhou .sokuhouall dl{
		padding:6px 0;
		gap:10px;
	}
	.sokuhou .sokuhouall dl dd{
		text-align: left;
		font-size: 20px;
		line-height: 1.8;
	}
	.sokuhou .sokuhouall dl dd:last-child{
		flex-wrap:wrap;
	}
	.sokuhou .sokuhouall dl dd:last-child span.count{
		margin-left: 0;
		font-size: 30px;
	}
	.sokuhou .sokuhouall dl dd:last-child span.name{
		font-size: 26px;
		width:100%;
		line-height: 1.4;
	}
	h2{
		padding: 20px 0 0;
	}
	.ranking_before header + h2{
		padding-bottom: 0px;
	}
  section.entry{
    padding:0 20px 40px;
  }
  section.entry .inner{
    gap:20px 4%;
  }
  section.entry .inner > div{
    width:48%;
  }
	section.entry .inner div p.count span{
		font-size: 36px;
	}
	section.entry .inner div a.mani{
		font-size: 14px;
		letter-spacing: -0.05em;
	}
  .fancybox__content .vote{
    padding:10px 14px;
    font-size: 14px;
  }
  .fancybox__content .vote span{
    font-size: 22px;
  }
  .fancybox__content .vote i{
    width:26px;
    height: 26px;
    margin-left: 10px;
  }
  .fancybox__content .vote i::before{
    border-top-width:6px;
    border-bottom-width:6px;
    border-left-width: 10px;
    top:calc(50% - 6px);
  }
  
  .fancybox__content > div p:first-child{
    letter-spacing: 0;
  }
  .fancybox__content > div p:first-child span{
    font-size: 16px;
  }
  .fancybox__content > div > img{
    width: 90%;
  }
	.fancybox__content#no4_box .pop_flex p:first-child{
		letter-spacing: 0;
		font-size: 26px;
	}
	.fancybox__content#no8_box .pop_flex p:first-child br,
	.fancybox__content#no9_box .pop_flex p:first-child br{
		display: inline;
	}
	.fancybox__content#no4_box .pop_flex p:nth-child(2){
		letter-spacing: 0;
	}
	.fancybox__content ul li::before{
		margin-top: 2%;
	}
	.fancybox__content ul li p{
		font-size: 18px;
	}
	.fancybox__content .close{
		font-size: 13px;
		padding:5px 9%;
	}
	
	section.compare #present{
	padding-bottom: 10px;
}
	
  section.compare h2 + .inner{
		margin-top: 20px;
	}
	section.compare h3{
		font-size: 16px;
	}
	section.compare ul.detail_list{
		padding: 12px 16px;
	}
	section.compare ul.detail_list li{
		font-size: 12px;
	}
	section.compare .if p{
		letter-spacing: 0;
		font-size: 13px;
	}
	section.compare .if p span{
		font-size: 18px;
	}
	  footer .flex{
    margin: 20px 0;
    gap:20px;
  }
  footer .flex .logo{
    height:30px;
  }
  footer .target{
    font-size: 12px;
    padding: 6px 8px;
		letter-spacing: 0;
  }
  footer .target img{
    width:16px;
    height: 13px;
  }
  footer p{
    font-size: 12px;
  }
  
  
  .sp{display: inline;}
  .pc{display: none}
}
@media screen and (max-width:600px){
	.sokuhou .sokuhouall{
		padding: 20px;
	}
	.sokuhou .sokuhouall > p{
		font-size: 20px;
	}
	.sokuhou .sokuhouall > p span{
		font-size: 36px;
	}
	.sokuhou .sokuhouall dl dt img{
		width:50px;
		height: 50px;
	}
	.sokuhou .sokuhouall dl dd{
		font-size: 16px;
	}
	.sokuhou .sokuhouall dl dd img{
		width:70px;
		height: 70px;
	}
	.sokuhou .sokuhouall dl dd:last-child span.name{
		font-size: 20px;
		letter-spacing: 0;
	}
	.sokuhou .sokuhouall dl dd:last-child span.count{
		font-size: 26px;
	}
	.sokuhou .link a.anchor{
		font-size: 24px;
	}
	.ranking section.entry .inner div img.rank{
		top:10px;
		left: 5px;
		width:60px;
	}
	.ranking_thanks .thanks h2{
		padding-top: 20px;
	}
	
	#cf7-vote-modal-box p{
		font-size: 16px;
	}
	#cf7-vote-modal-box p span{
		font-size: 20px;
	}
}
@media screen and (max-width:480px){
	header{
		padding-bottom: 0;
	}
	h2{
		font-size: 1.2em;
		letter-spacing: 0.05em;
		gap:10px;
	}
	h2 span em{
		font-size: 14px;
	}
	section.entry .inner div p.count span{
		font-size: 28px;
	}
	.fancybox__content{
		padding: 5% 1% 5% 4%!important;
		width:100%;
	}
	.fancybox__content .pop_flex p:first-child{
		font-size: 22px!important;
		letter-spacing: 0;
	}
	.fancybox__content#no4_box .pop_flex p:first-child{
		font-size: 20px!important;
	}
	.fancybox__content .pop_flex p{
		font-size: 14px;
		letter-spacing: 0;
}
	.fancybox__content ul li p{
		font-size: 16px;
		line-height: 1.6;
	}
	.fancybox__content ul li p span{
		font-size: 11px;
	}
	.fancybox__content ul li p br{
		display: none;
	}
	.ranking_before section.entry .inner div p.name{
		margin: 0 auto 4px;
	}
	section.entry .inner div a.mani{
		font-size: 3vw;
		letter-spacing: -0.1em;
	}
	section.entry .inner div a.mani::after{
		border-left-width: 1.5vw;
		border-top-width: 1vw;
		border-bottom-width: 1vw;
	}
	section.compare .flex1{
		padding: 1em;
	}
	section.compare .flex1 div p:first-child > span{
		font-size: 16px;
		letter-spacing: 0em;
		line-height: 1.2;
		display: block;
		padding: 10px 0;
	}
	section.compare .flex1 div p:first-child > span > span{
		font-size: 10px;
	}
	section.compare .flex1 div p:last-child br{
		display: none;
	}
	section.compare .inner p.ataru1 span, section.compare .inner p.ataru2 span{
		font-size: 30px;
	}
	section.compare .flex2 div p.txt{
		max-width: 175px;
		margin-top: 2px;
	}
	section.compare .flex3{
		flex-direction: column;
		gap:0;
	}
	section.compare .flex4{
		padding-top: 4px;
		flex-direction: column;
	}
	section.compare .flex4 > div p:first-child{
		font-size: 12px;
		letter-spacing: 0;
	}
	section.compare .flex4 > div p:last-child{
		font-size: 14px;
	}
	section.compare .inner2 > a{
		font-size: 16px;
	}
	section.compare .inner p.ataru1,
	section.compare .inner p.ataru2{
		padding: 5px 12px;
		top:15px;
	}
	
	/* 投票中 */
	
	.ranking .fancybox__content ul li{
		margin-bottom: 0.5em;
	}
	.fancybox__content > div p:first-child{
		font-size: 12px;
	}
	.fancybox__content .pop_vt a{
		max-width: 200px;
	}
	.ranking section.entry .inner div img.rank{
		top:5px;
		left: 3px;
		width:50px;
	}
	.sokuhou .link a.anchor{
		font-size: 20px;
		letter-spacing: 0;
	}
	.sokuhou .sokuhouall > p span{
		font-size: 32px;
	}
	.sokuhou .sokuhouall dl dd{
		font-size: 12px;
	}
	.sokuhou .sokuhouall dl dd img{
		width:60px;
		height: 60px;
	}
	.sokuhou .sokuhouall dl dd:last-child span.name{
		font-size: 18px;
	}
	.sokuhou .sokuhouall dl dd:last-child span.count{
		font-size: 22px;
	}
	.ranking section.entry .inner div p.count{
		margin-bottom: 0;
	}
	section.compare .flex1 div p:nth-child(2) br{
		display: none;
	}
	section.compare .detail{
		padding: 0 20px;
	}
}

@media screen and (max-width:420px){
	.ranking section.entry .inner div img.item{
		height: 44%;
	}
	section.entry .inner div a.mani{
			margin-top: 0;
	}
	section.compare .howto > div .howtostep dd br{
		display: none;
	}
}