@charset "utf-8";


/* リセット
------------------------------------- */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

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

* html table {
	border-collapse: collapse;
}

*:first-child+html table {
	border-collapse: collapse;
}

caption,
th {
	text-align: left;
	font-weight: normal;
}

table,
th,
td,
img {
	border: 0;
}

input {
	vertical-align: middle;
	outline: none;
}

q:before,
q:after {
	content: '';
}

ul {
	list-style: none;
}

hr,
legend,
caption {
	display: none;
}

img {
	border: 0;
	vertical-align: bottom;
}

a:focus {
	outline: none;
}

.orgConts * {
	box-sizing: border-box;
	color: #000;
}

/* 基本設定
------------------------------------- */
html {
	font-size: 62.5%;
}

body {
	-webkit-text-size-adjust: 100%;
	font-size: 1.4rem;
	/* =14px */
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#wrapper {
	min-width: 1364px;
}

header{
	min-width: 1364px;
}

header .header_inner {
	height: 100px;
}

.top .contents {
	width: 100%;
	padding: 0;
}

#orgMainConts {
	background-image: url(../images/top2025/bg_main.png);
	background-size: 208px 1px;
	background-position: top center;
	background-repeat: repeat;
}

.layout {
	margin: 0 auto;
	position: relative;
}

.layout h1 {
	padding-top: 43px;
	padding-left: 16px;
	max-width: 1298px;
	min-height: 670px;
	margin: 0 auto;
}

.layout h1 img {
	max-width: 100%;
}

.top_text {
	background-color: #0d57a7;
	position: relative;
	text-align: center;
	padding: 9px 0;
}

#orgTopConts {
	position: relative;
	z-index: 1;
}

.logoConts {
	position: absolute;
	top: 37px;
	right: 33px;
	z-index: 1;
}

.lottery {
	max-width: 1206px;
	margin: 0 auto;
	padding-top: 13px;
}

.lead {
	padding-top: 30px;
	margin: 0 auto;
	text-align: center;
}

.voteAcArea {
	margin: 0 auto;
	position: relative;
}

.voteAcArea .acTrigger {
	max-width: 1046px;
	width: 100%;
	margin: 9px auto 0;
	cursor: pointer;
	position: relative;
	z-index: 10;
}

.voteAcArea .acTrigger::after {
	content: "";
	background-image: url(../images/top2025/voting_btn_open.png);
	background-size: cover;
	width: 68px;
	height: 68px;
	position: absolute;
	top: 48%;
	right: 83px;
	transform: translateY(-50%);
}

.voteAcArea .acTrigger.open::after {
	background-image: url(../images/top2025/voting_btn_close.png);
}

.acBody {
	display: none;
	position: relative;
	top: -68px;
	margin-bottom: -55px;
}

.voteList {
	background: #fff;
	border: 5px solid #0d57a7;
	width: 100%;
	max-width: 1123px;
	padding: 77px 61px 40px 61px;
	margin: 0 auto 0;
	border-radius: 30px;
}

.voteList li:not(:first-child) {
	margin-top: -5px;
}

.voteList li {
	color: #0d57a7;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 3.1rem;
}

.voteList li p {
	font-weight: bold;
	display: flex;
	align-items: center;
	font-feature-settings: "palt";
}

.voteList .num {
	background-color: #ef845c;
	color: #fff;
	text-align: center;
	display: inline-block;
	border-radius: 50%;
	font-size: 1.8rem;
	width: 38px;
	height: 38px;
	margin-right: 20px;
	padding-top: 4px;
	letter-spacing: -0.05em;
	text-indent: -0.1em;
}

.voteList li:nth-child(1) .num,
.voteList li:nth-child(2) .num,
.voteList li:nth-child(3) .num,
.voteList li:nth-child(4) .num,
.voteList li:nth-child(5) .num,
.voteList li:nth-child(6) .num,
.voteList li:nth-child(7) .num,
.voteList li:nth-child(8) .num,
.voteList li:nth-child(9) .num 
{
	letter-spacing: 0;
	text-indent: 0;
}

.voteList li:last-child .num  {
	letter-spacing: -0.05em;
	text-indent: -0.15em
}

.voteList .name {
	font-size: 2rem;
}

.voteCation p {
	margin: 0 auto;
}

.voteCation p:first-child {
	max-width: 1108px;
	margin-top: 20px;
}

.voteCation p:last-child {
	max-width: 1124px;
	margin-top: 15px;
}

#presentArea {
	margin-top: 14px;
	padding-bottom: 3px;
}

.present01Img {
	margin: 0 auto;
	max-width: 1130px;
}

.bg-navy {
	margin: 31px auto 0;
	width: 1124px;
	padding: 23px 20px 58px;
	background-color: #0d57a7;
}

.check_txt {
	position: relative;
	display: block;
	color: #ffffff;
	font-weight: bold;
	border-bottom: 3px solid #ffffff;
	font-size: 4.2rem;
	padding: 0 39px 2px 29px;
	max-width: 946px;
	margin: 0 auto;
	text-align: center;
	letter-spacing: -0.05em;
}

.w_chance {
	color: #ffffff;
	font-weight: bold;
	font-size: 3.6rem;
	line-height: 120%;
	letter-spacing: -0.05em;
}

.w_chance .yellow {
	color: #fff100;
}

.w_chance .small {
	font-size: 3.1rem;
}

.voteBtn {
	text-align: center;
	margin-top: 0px;
	pointer-events: none;
}

.present02Img {
	position: relative;
	margin: 0 auto;
}

.present02Img ul {
	margin: 0 auto;
	position: relative;
	display: flex;
	padding-top: 30px;
	padding-left: 81px;
	max-width: 946px;
	gap: 94px;
}

label {
	position: relative;
	cursor: pointer;
	padding-left: 0.5em;
}

label::before,
label::after {
	content: "";
	display: block;
	border-radius: 50%;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
}

label::before {
	background: rgb(210, 210, 210);
	background: linear-gradient(132deg, rgb(255 255 255) 10%, rgb(234 234 234) 90%);
	border: 5.5px solid #b0b6b8;
	border-radius: 50%;
	width: 49px;
	height: 49px;
	left: -50px;
	top: 50%;
}

label::after {
	background-color: #004ea2;
	border-radius: 50%;
	opacity: 0;
	width: 28px;
	height: 28px;
	left: -35px;
	top: 50%;
}

input:checked+label::after {
	opacity: 1;
}

.visually-hidden {
	position: absolute;
	white-space: nowrap;
	border: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	overflow: hidden;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
}

.voteBtn.active {
	pointer-events: inherit;
}

.voteBtn a {
	display: none;
	font-size: 6.0rem;
	color: #FFF33F;
	font-weight: bold;
	position: relative;
	z-index: 2;
	width: 648px;
	margin: 50px auto 0;
}

.voteBtn a img {
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 50%;
	transform: translate(-50% , -50%);
}

.voteBtn a.active {
	display: block;
	color: #FFF33F;
}

.voteBtn .activeBtn {
	display: none;
}

.voteBtn .inactiveBtn {
	display: inline-block;
	color: #FFF33F;
}

.voteBtn.active .activeBtn {
	display: inline-block;
}

.voteBtn.active .inactiveBtn {
	display: none;
}

.cationBox {
	width: 1123px;
	margin: 0 auto;
	padding-top: 18px;
}

.board {
	text-align: center;
	margin-top: 20px;
}

#jimosaraArea {
	background-image: url('../images/top2025/bg_jimosara.png');
	background-size: cover;
	text-align: center;
	padding-bottom: 22px;
}

#jimosaraArea .box {
	position: relative;
	width: auto;
	margin: 0 auto;
}

#jimosaraArea .box .btnObj {
	margin-top: 22px;
}

#othrerArea .btnObj {
	margin: 6px 0 20px;
}

#orgBookArea {
	background: #fffbc7;
  }
  
  #orgBookArea * {
	color: #3e0010;
  }
  
  #orgBookArea .orgBookTtl {
	margin: 0 auto;
	padding: 78px 0 25px;
	max-width: 707px;
  }
  
  #orgBookArea .orgBookTxt {
	margin: 0 auto;
	max-width: 635px;
  }
  #orgBookArea .orgBookTxt img {
	width: 100%;
  }
  
  #orgBookArea .orgBookList {
	max-width: 1097px;
	padding-top: 46px;
	display: flex;
	margin: 0 auto;
	flex-wrap: wrap;
	position: relative;
	z-index: 1;
	justify-content: space-between;
  }
  
  #orgBookArea .orgBookList li:first-child {
	width: 100%;
	text-align: center;
  }
  
  #orgBookArea .orgBookList li:nth-of-type(2),
  #orgBookArea .orgBookList li:nth-of-type(3),
  #orgBookArea .orgBookList li:nth-of-type(4) {
	padding-top: 52px;
  }
  
  #orgBookArea .orgBookList li:nth-of-type(5),
  #orgBookArea .orgBookList li:nth-of-type(6),
  #orgBookArea .orgBookList li:nth-of-type(7) {
	padding-top: 26px;
  }
  
  #orgBookArea .orgCapLayout {
	text-align: right;
	padding-top: 37px;
	padding-bottom: 18px;
	max-width: 1400px;
	margin: 0 auto;
  }
  
  #orgBookArea .orgBookCap {
	padding-left: 25px;
	text-align: left;
	display: inline-block;
	color: #460008;
	margin: 0 auto;
	margin-right: 118px;
	max-width: 700px;
  }
  
  #orgBookArea .orgBookCap li {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 1.5rem;
  }

.bottom_copy {
	text-align: right;
	padding: 0 60px 20px 0;
}

#orgBookArea .campNum {
	margin-right: 224px;
	margin-top: 23px;
	text-align: end;
	font-size: 1.6rem;
}

footer {
	width: 100%;
	background-color: #1746ff
}

.footer_copy {
	width: 1120px;
	height: 47px;
	color: #fff;
	font-size: 1.2rem;
	display: table-cell;
	vertical-align: middle;
	font-family: メイリオ, Meiryo, Hiragino Kaku Gothic Pro, ヒラギノ角ゴ Pro W3, Osaka, ＭＳ\ Ｐゴシック, sans-serif;
}

#special {
	padding-top: 20px;
	padding-bottom: 36px;
	position: relative;
}

#special h2 {
	text-align: center;
}

.special_btn {
	position: absolute;
	bottom: 74px;
	right: 50%;
	transform: translateX(50%);
}

/* clearfix
------------------------------------- */
.clearfix:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}

/* レスポンシブ設定
------------------------------------- */
@media screen and (min-width:768px) {
	.sp {
		display: none !important;
	}

	footer {
		min-width: 1120px;
		width: 100%;
		height: 47px
	}

	.footer_inner {
		position: relative;
		width: 1120px;
		height: 47px;
		margin: 0 auto
	}

	.footer_page-top {
		position: absolute;
		right: 8px;
		top: -34px;
		width: 72px;
		height: 72px;
		background-size: 72px auto;
	}
}

@media screen and (max-width:767px) {
	html {
		overflow-x: hidden;
	}

	body {
		font-size: 62.5%;
		overflow-x: hidden;
	}

	.pc {
		display: none !important;
	}

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

	a:hover img {
		opacity: 1;
	}

	header {
		min-width: auto;
	}

	header .header_inner {
		width: 100%;
		height: 50px;
	}
	
	.top .contents {
		padding-top: 0;
	}

	#wrapper {
		min-width: 100%;
	}

	.layout {
		width: 100%;
	}

	#orgMainConts {
		background-image: url(../images/top2025/bg_main_sp.png);
		background-size: 100% 100%;
	}

	.layout h1 {
		padding-top: calc(16 / 700 * 100vw);
		padding-left: calc(10 / 700 * 100vw);
		max-width: 100%;
		width: 100%;
		min-height: auto;
		height: calc(346 / 700 * 100vw);
		text-align: center;
	}

	.layout h1 img {
		width: calc(662 / 700 * 100vw);
	}

	.logoConts {
		top: calc(19 / 700 * 100vw);
		right: calc(16 / 700 * 100vw);
	}

	.logoConts img {
		width: calc(127 / 700 * 100vw);
	}

	.top_text {
		padding: calc(15 / 700 * 100vw) 0;
		word-wrap: 100%;
	}

	.top_text_img.sp {
		width: calc(432 / 700 * 100vw);
	}

	.lottery {
		max-width: calc(659 / 700 * 100vw);
		padding-top: calc(22 / 700 * 100vw);
	}

	.lead {
		max-width: calc(607 / 700 * 100vw);
		padding-top: calc(28 / 700 * 100vw);
	}

	.voteAcArea .acTrigger {
		max-width: calc(567 / 700 * 100vw);
		height: calc(70 / 700 * 100vw);
		margin: calc(9 / 700 * 100vw) auto 0;
	}

	.voteAcArea .acTrigger span {
		font-size: calc(32 / 700 * 100vw);
	}

	.voteAcArea .acTrigger span.large {
		font-size: calc(45 / 700 * 100vw);
	}

	.voteAcArea .acTrigger::after {
		background-image: url(../images/top2025/voting_btn_open_sp.png);
		width: calc(38 / 700 * 100vw);
		height: calc(38 / 700 * 100vw);
		top: 46%;
		background-size: contain;
		right: calc(45 / 700 * 100vw);
	}

	.voteAcArea .acTrigger.open::after {
		background-image: url(../images/top2025/voting_btn_close_sp.png);
	}
	
	.acBody {
		top: calc(-35 / 700 * 100vw);
		margin-bottom: calc(-30 / 700 * 100vw);
	}

	.voteList {
		max-width: calc(596 / 700 * 100vw);
		padding: calc(62 / 700 * 100vw) calc(20 / 700 * 100vw) calc(27 / 700 * 100vw) calc(20 / 700 * 100vw);
		margin: 0 auto 0;
		border-radius: calc(20 / 700 * 100vw);
		border: 3px solid #0d57a7;
	}

	.voteList li:not(:first-child) {
		padding-top: calc(5 / 700 * 100vw);
	}
	
	.voteList li {
		font-size: calc(22 / 700 * 100vw);
		flex-direction: column;
		justify-content: flex-start;
		align-items: baseline;
	}

	.voteList li p {
		display: inline-flex;
	}
	
	.voteList .num {
		font-size: calc(18 / 700 * 100vw);
		width: calc(40 / 700 * 100vw);
		height: calc(40 / 700 * 100vw);
		margin-right: calc(10 / 700 * 100vw);
		padding-top: calc(4 / 700 * 100vw);
		letter-spacing: -0.05em;
		text-indent: -0.1em;
	}

	.voteList li:nth-child(1) .num,
	.voteList li:nth-child(2) .num,
	.voteList li:nth-child(3) .num,
	.voteList li:nth-child(4) .num,
	.voteList li:nth-child(5) .num,
	.voteList li:nth-child(6) .num,
	.voteList li:nth-child(7) .num,
	.voteList li:nth-child(8) .num,
	.voteList li:nth-child(9) .num 
	{
		letter-spacing: 0;
		text-indent: 0;
	}
	
	.voteList li:last-child .num  {
		letter-spacing: -0.05em;
		text-indent: -0.15em
	}

	.voteList .name {
		font-size: calc(22 / 700 * 100vw);
		display: inline-block;
		width: 100%;
		text-align: right;
		line-height: 1;
		font-weight: normal;
	}
	
	.voteCation p:first-child {
		max-width: calc(588 / 700 * 100vw);
		margin-top: calc(6 / 700 * 100vw);
	}

	.voteCation p:last-child {
		max-width: calc(599 / 700 * 100vw);
		margin-top: calc(14 / 700 * 100vw);
	}

	#presentArea {
		margin-top: calc(22 / 700 * 100vw);
		padding-bottom: calc(24 / 700 * 100vw);
	}

	.present01Img {
		max-width: calc(610 / 700 * 100vw);
	}

	.bg-navy {
		width: calc(620 / 700 * 100vw);
		margin-top: calc(19 / 700 * 100vw);
		padding: calc(30 / 700 * 100vw) calc(30 / 700 * 100vw) calc(40 / 700 * 100vw);
	}

	.check_txt {
		font-size: calc(37 / 700 * 100vw);
		padding: 0 0 calc(14 / 700 * 100vw) 0;
		max-width: calc(560 / 700 * 100vw);
		line-height: 120%;
		letter-spacing: -0.06em;
	}

	.w_chance {
		font-size: calc(33 / 700 * 100vw);
		padding-left: calc(55 / 700 * 100vw);
	}

	.w_chance:last-child {
		padding-left: calc(33 / 700 * 100vw);
	}

	.w_chance .yellow {
		position: relative;
		left: calc(16 /700 * 100vw);
	}

	.w_chance .small {
		font-size: calc(23 / 700 * 100vw);
		position: relative;
		left: -2.5em;
		white-space: nowrap;
	}

	.w_chance:last-child .small {
		left: -3.2em;
	}

	.present02Img ul {
		list-style: none;
		padding-top: calc(27 / 700 * 100vw);
		padding-left: calc(2 / 700 * 100vw);
		padding-right: calc(8 / 700 * 100vw);
		max-width: calc(560 / 700 * 100vw);
		margin: 0 auto;
		gap: calc(6 / 700 * 100vw);
	}

	label::before {
		border: calc(5 / 700 * 100vw) solid #b0b6b8;
		width: calc(40 / 700 * 100vw);
		height: calc(40 / 700 * 100vw);
		left: calc(-50 / 700 * 100vw);
		top: calc(30 / 700 * 100vw);
	}
	
	label::after {
		width: calc(28 / 700 * 100vw);
		height: calc(28 / 700 * 100vw);
		left: calc(-39 / 700 * 100vw);
		top: calc(30 / 700 * 100vw);
	}

	.voteBtn a {
		font-size: calc(44 / 700 * 100vw);
		width: calc(470 / 700 * 100vw);
		margin: calc(30 / 700 * 100vw) auto 0;
	}

	.cationBox {
		width: calc(616 / 700 * 100vw);
		padding-top: calc(17 / 700 * 100vw);
	}

	.board {
		margin-top: calc(16 / 700 * 100vw);
		text-align: center;
	}

	.board img {
		max-width: calc(620 / 700 * 100vw);
	}

	#jimosaraArea {
		background-image: url('../images/top2025/bg_jimosara_sp.png');
		padding-bottom: calc(16 / 700 * 100vw);
	}

	#jimosaraArea h2 {
		max-width:calc(635 / 700 * 100vw);
		margin: 0 auto;
		margin-right: calc(46 / 700 * 100vw);
	}

	#jimosaraArea p {
		max-width:calc(616 / 700 * 100vw);
		margin: 0 auto;
	}

	#jimosaraArea .box .btnObj {
		max-width: calc(426 / 700 * 100vw);
		width: 100%;
		margin-top: calc(14 / 700 * 100vw);
	}

	#orgBookArea .orgBookTtl {
		width: 72.2857142857vw;
		padding: calc(40 / 700 * 100vw) 0 calc(23 / 700 * 100vw);
	  }
	  #orgBookArea .orgBookTxt {
		width: 68vw;
	  }
	  #orgBookArea .orgBookList {
		max-width: calc(600 / 700 * 100vw);
		padding-top: calc(33 / 700 * 100vw);
		align-items: baseline;
	  }
	  #orgBookArea .orgBookList li:first-child {
		width: 100vw;
		position: relative;
	  }
		#orgBookArea .orgBookList li:first-child img {
			width: calc(388 / 700 * 100vw);
		}
	  #orgBookArea .orgBookList li {
		width: calc(287 / 700 * 100vw);
	  }
	  #orgBookArea .orgBookList li:nth-of-type(2),
		#orgBookArea .orgBookList li:nth-of-type(3) {
		padding-top: calc(34 / 700 * 100vw);
	  }
	  #orgBookArea .orgBookList li:nth-of-type(4),
	  #orgBookArea .orgBookList li:nth-of-type(5),
		#orgBookArea .orgBookList li:nth-of-type(6),
	  #orgBookArea .orgBookList li:nth-of-type(7) {
		padding-top: calc(37 / 700 * 100vw);
	  }
	  #orgBookArea .orgCapLayout {
		padding-top: calc(45 / 700 * 100vw);
		text-align: left;
		padding-bottom: 4vw;
	  }
	  #orgBookArea .orgBookCap {
		padding-left: 0;
		padding-right: 0;
		max-width: 90vw;
		font-size: 2.8571428571vw;
		margin-left: 7.1428571429vw;
		margin-right: auto;
	  }
	  #orgBookArea .orgBookCap li {
		font-size: 2.8571428571vw;
		line-height: 137%;
	  }

	.bottom_copy {
		padding: 0;
		width: calc(610 / 700 * 100vw);
		margin: 0 auto;
		padding-bottom: 40px;
		font-size: calc(20 / 700 * 100vw);
		line-height: 1.2;
	}

	#orgBookArea .campNum {
		margin-right: calc(34 / 700 * 100vw);
		margin-top: calc(-10 / 700 * 100vw);
		padding-bottom: calc(13 / 700 * 100vw);
		text-align: end;
		font-size: calc(20 / 700 * 100vw);
	}

	.footer_inner {
		position: relative;
		padding: 0 22px;
		height: 85px;
	}

	.footer_copy {
		padding-top: 32px;
		font-size: 1rem;
		background-size: 50px;
	}

	.footer_page-top {
		width: 42px;
		height: 42px;
		background-size: 42px;
		top: -23px;
		margin-left: -21px;
	}

	#special {
		padding-top: 0;
		padding-bottom: calc(23 / 700 * 100vw);
	}

	#special h2 {
		margin: 0 auto;
		width: calc(620 / 700 * 100vw);
	}

	.special_btn {
		width: calc(339 / 700 * 100vw);
		position: absolute;
		bottom: calc(45 / 700 * 100vw);
	}
}
