@charset "utf-8";

body {
	font-family: 'Noto Sans JP', sans-serif;
}

img {
	vertical-align: bottom;
}

a {
	color: #F85122;
	text-decoration: none;
}

a:hover {
	opacity: 0.7;
}

* {
	margin: 0;
}

@media screen and (min-width: 641px) {
	body {
		min-width: 1200px;
	}

	#wrapper {
		min-width: 1200px;
		overflow-x: hidden;
	}
}

/*-----------------------------------------------
 clearfix
-----------------------------------------------*/

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
}

/*-----------------------------------------------
 共通
-----------------------------------------------*/
.content .main_cont {
	margin: 20px;
}

.content .main_cont h2.main_cont_ttl {
	margin: 1px;
	padding-top: 1px;
	position: relative;
}


@media screen and (max-width:640px) and (min-width: 1px) {
	.content .main_cont {
		margin: 3.125vw;
	}
}

.main_cont_btn p {
	position: relative;
}

.main_cont_btn p a {
	position: relative;
	display: block;
	opacity: 1;
}

.main_cont_btn p a img {
	filter: drop-shadow(5px 5px 0 #222222);
	transition: all 0.3s;
}

.main_cont_btn p a:hover {
	animation: none;
}

.main_cont_btn p a img:hover,
.main_cont_btn p a img:active {
	filter: none;
	transform: translate3D(5px, 5px, 0);
}

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

.main_cont_btn .replay_btn a img {
	filter: none;
	width: 316px;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	.main_cont_btn .replay_btn a img {
		width: 49.375vw;
	}

}

.main_cont_btn .replay_btn a img:hover,
.main_cont_btn .replay_btn a img:active {
	transform: none;
}

.note {
	text-align: right;
	margin: -10px 10px;
	font-size: 12px;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	.note {
		margin: -1.562vw 1.563vw;
		font-size: 2.2vw;
	}
}



/*-----------------------------------------------
sp切り替え
-----------------------------------------------*/
#content .for-sp {
	display: none;
}

#content .for-pc {
	display: block;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#content .for-sp {
		display: block;
	}

	#content .for-pc {
		display: none;
	}
}

/*-----------------------------------------------
 topへ戻る
-----------------------------------------------*/
.back_top {
	text-align: center;
	margin: 70px 0 62px;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	.back_top {
		margin: 10.9375vw 0 9.688vw;
	}

	.back_top img {
		margin: 0 auto;
		max-width: 195px;
		width: 30.46875vw;
	}

}

/*-----------------------------------------------
 banner
-----------------------------------------------*/
.banner {
	background: url(../img/sns_bg.png) no-repeat top center/100% 100%;
	padding: 0 75px 20px;
	border-radius: 30px;
	width: 417px;
	margin: 0 auto 10px;
	position: relative;
	box-sizing: border-box;
}

.banner::before {
	content: "";
	width: 53px;
	height: 23px;
	background: url(../img/ribon.png) no-repeat top center/contain;
	position: absolute;
	left: calc(50% - 26px);
	top: -12px;
}

.bnr_txt {
	width: 216px;
	margin: 0 auto 12px;
}

.banner ul {
	display: flex;
	justify-content: center;
	gap: 35px;
	padding: 0;
	list-style: none;
}

.banner a {
	margin: 0;
	max-width: 48px;
	display: block;
}

.banner img {
	width: 100%;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	.banner {
		padding: 0;
		width: calc(580/640*100vw);
		background: url(../img/sns_bg-sp.png) no-repeat top center / 100% 100%;
		margin-bottom: calc(25/640*100vw);
	}

	.banner::before {
		width: calc(73 / 640 * 100vw);
		height: calc(33 / 640 * 100vw);
		left: calc(50% - calc(31 / 640 * 100vw));
		top: calc(-15 / 640 * 100vw);
	}

	.bnr_txt {
		width: calc(270 / 640 * 100vw);
		margin: 0 auto calc(13 / 640 * 100vw);
	}

	.banner ul {
		gap: calc(50 / 640 * 100vw);
		justify-content: center;
	}


	.banner a {
		width: calc(60/640*100vw);
		max-width: 90px;
	}
}


/*-----------------------------------------------
 page-top
-----------------------------------------------*/
#page-top {
	position: fixed;
	bottom: 30px;
	right: 25px;
	z-index: 10;
}

#page-top img {
	width: 62px;
}


#page-top a:hover img {
	content: url("../img/btn_top_hover.png");
}


@media screen and (max-width:1200px) {
	#page-top {
		right: 10px;
	}
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#page-top {
		right: calc(14/640*100vw);
	}

	#page-top img {
		width: calc(62/640*100vw);
	}
}

/*-----------------------------------------------
 footer
-----------------------------------------------*/
footer {
	font-size: 12px;
	line-height: 1.8;
	position: relative;
	background: #fff;
}

footer .inner {
	width: 419px;
	margin: 0 auto;
	text-align: center;
	padding: 50px 0 30px;
	color: #212121;
}

footer .inner a {
	color: #212121;
}

footer .btn {
	width: 208px;
	margin: 0 auto 10px;
}

footer .btn img {
	width: 100%;
}

footer p.copy {
	font-size: 14px;
}

@media screen and (max-width:640px) and (min-width: 1px) {

	footer {
		min-width: 100%;
	}

	footer .btn {
		width: 36%;
		margin: 0 auto calc(3/640*100vw);
	}

	footer .inner {
		width: 90%;
		margin: 0 auto;
		padding: calc(50/640*100vw) 0 calc(48/640*100vw);
	}

	footer p.copy {
		font-size: calc(18/640*100vw);
	}
}


/*-----------------------------------------------
 key-visual
-----------------------------------------------*/
h1,
h2 {
	padding: 0;
	margin: 0;
	font-size: 0;
}

img {
	width: 100%;
}


#key-visual {
	background: #FFF500;
	position: relative;
}

#key-visual .kv_bg {
	position: absolute;
	top: -130px;
	z-index: 1;
	margin-left: -1310px;
	left: 50%;
	height: calc(100% + 130px);
	overflow: hidden;
}

#key-visual .kv_bg img {
	width: 2610.5px;
	opacity: 0;
	transform: scale(0.6);
	animation: kvBgIn 0.3s ease-out forwards;
}


@keyframes kvBgIn {
	0% {
		opacity: 0;
		transform: scale(0.6);
	}

	100% {
		opacity: 1;
		transform: scale(1);
	}
}


#key-visual .inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}

#key-visual .inner .kv_illust {
	position: relative;
	width: 2000px;
	top: 0;
	left: -400px;
	z-index: 2;
	opacity: 0;
	transform-origin: 0 0;
	transform: rotate(-15deg) translateY(20px);
	animation: kvIllustIn 0.5s ease-out forwards;
	animation-delay: 0.3s;
}

#key-visual .inner .kv_illust_mask {
	position: absolute;
	width: 2000px;
	top: 0;
	left: -400px;
	z-index: 4;
	opacity: 0;
	transform-origin: 0 0;
	transform: rotate(-15deg) translateY(20px);
	animation: kvIllustMaskIn 0.5s ease-out forwards;
	animation-delay: 0.3s;
}


#key-visual .inner .kv_illust_mask img {
	position: absolute;
	width: 265px;
	top: 73px;
	left: 892px;
}

@keyframes kvIllustIn {
	0% {
		opacity: 0;
		transform: rotate(-15deg) translateY(20px);
	}

	100% {
		opacity: 1;
		transform: rotate(0deg) translateY(0);
	}
}


@keyframes kvIllustMaskIn {
	0% {
		opacity: 0;
		transform: rotate(-15deg) translateY(20px);
	}

	90% {
		opacity: 0;
	}

	100% {
		opacity: 1;
		transform: rotate(0deg) translateY(0);
	}
}

#key-visual .inner .kv_title {
	position: absolute;
	width: 550.5px;
	top: 103px;
	right: 7px;
	z-index: 3;
	opacity: 0;
	transform: rotate(15deg) translateY(20px);
	animation: kvTitleIn 0.3s ease-out forwards;
	animation-delay: 0.6s;
}


@keyframes kvTitleIn {
	0% {
		opacity: 0;
		transform: rotate(15deg) translateY(20px);
	}

	100% {
		opacity: 1;
		transform: rotate(0deg) translateY(0);
	}
}

#key-visual .inner .kv_logo {
	position: absolute;
	width: 259px;
	top: 520px;
	z-index: 3;
}

#key-visual .inner .kv_prize {
	position: absolute;
	animation-delay: 0.1s;
	width: 608px;
	top: 328px;
	right: 0;
	z-index: 2;
}

#key-visual .inner .term {
	position: absolute;
	width: 1200px;
	bottom: -40px;
	left: 0;
	z-index: 2;
}

.kv_deco01,
.kv_deco02,
.kv_deco03,
.kv_deco04,
.kv_deco05 {
	animation: decoSwing 2.2s ease-in-out infinite;
	transform-origin: center;
}

@keyframes decoSwing {
	0% {
		transform: rotate(-15deg);
	}

	50% {
		transform: rotate(15deg);
	}

	100% {
		transform: rotate(-15deg);
	}
}

#key-visual .inner .kv_deco01 {
	position: absolute;
	width: 119.5px;
	top: -28px;
	left: 848px;
	z-index: 1;
}

#key-visual .inner .kv_deco02 {
	position: absolute;
	width: 142px;
	top: -40px;
	left: 545px;
	z-index: 1;
}

#key-visual .inner .kv_deco03 {
	position: absolute;
	width: 140.5px;
	top: 128px;
	right: -94px;
	z-index: 1;
}

#key-visual .inner .kv_deco04 {
	position: absolute;
	width: 90.5px;
	top: 316px;
	left: 39px;
	z-index: 1;
}

#key-visual .inner .kv_deco05 {
	position: absolute;
	width: 137.5px;
	top: 398px;
	right: -137px;
	z-index: 1;
}


@keyframes blinking {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#wrap {
		min-width: inherit;
	}

	#key-visual {
		width: 100%;
	}

	#key-visual .kv_bg {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		margin-left: 0;
		z-index: 1;
	}

	#key-visual .kv_bg img {
		position: absolute;
		width: calc(1161/640*100vw);
		top: calc(-105/640*100vw);
		left: calc(-309/640*100vw);
	}

	#key-visual .inner {
		min-width: 100%;
	}

	#key-visual .inner .kv_illust {
		width: 100%;
		top: 0;
		left: 0;
		animation: none;
		opacity: 1;
		transform: none;
		overflow: hidden;
	}

	#key-visual .inner .kv_illust img {
		opacity: 0;
		animation: kvIllustIn 0.5s ease-out forwards;
		animation-delay: 0.3s;
	}

	#key-visual .inner .kv_illust_mask {
		display: none;
	}

	#key-visual .inner .kv_title {
		width: calc(540 / 640 * 100vw);
		top: calc(9 / 640 * 100vw);
		right: calc(50 / 640 * 100vw);
		z-index: 2;
	}

	#key-visual .inner .kv_logo {
		width: calc(167 / 640 * 100vw);
		top: calc(672 / 640 * 100vw);
		left: calc(17 / 640 * 100vw);
	}

	#key-visual .inner .kv_prize {
		position: absolute;
		width: calc(608 / 640 * 100vw);
		left: calc(17 / 640 * 100vw);
		right: auto;
		top: calc(744 / 640 * 100vw);
	}

	#key-visual .inner .term {
		position: absolute;
		width: 100%;
		bottom: calc(-46 / 640 * 100vw);
	}

	#key-visual .kv_deco {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
	}

	#key-visual .inner .kv_deco01 {
		width: calc(119 / 640 * 100vw);
		top: calc(-50 / 640 * 100vw);
		left: calc(505 / 640 * 100vw);
	}

	#key-visual .inner .kv_deco02 {
		display: none;
	}

	#key-visual .inner .kv_deco03 {
		width: calc(140.5 / 640 * 100vw);
		top: calc(249 / 640 * 100vw);
		right: calc(-33 / 640 * 100vw);
	}

	#key-visual .inner .kv_deco04 {
		width: calc(90.5 / 640 * 100vw);
		top: calc(346 / 640 * 100vw);
		left: calc(-2 / 640 * 100vw);
	}

	#key-visual .inner .kv_deco05 {
		display: none;
	}

}


/*-----------------------------------------------
 content
-----------------------------------------------*/
#content {
	margin-top: 0;
}

#content .mb10 {
	margin-bottom: 10px;
}

#content .mb20 {
	margin-bottom: 20px;
}

#content .mb30 {
	margin-bottom: 30px;
}

#content .mb40 {
	margin-bottom: 40px;
}

#content .mt10 {
	margin-top: 10px;
}

#content .mt20 {
	margin-top: 20px;
}

#content .mt30 {
	margin-top: 30px;
}

#content .fs24 {
	font-size: 24px;
}

#content .pk {
	color: #fb4b92;
}

#content .bold {
	font-weight: bold;
}

#content p {
	margin: 0;
}

#content .inner {
	max-width: 640px;
	margin: 0 auto;
	text-align: center;
}

#content h2 {
	margin-bottom: 24px;
}

#content .under {
	text-decoration: underline;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#content {
		min-width: 100%;
		position: relative;
		z-index: 1;
	}

	#content p {
		text-align: left;
	}

	#content .inner {
		width: 100%;
		margin: 0 auto;
	}

	#content h2 {
		margin: 0 5% 4%;
	}

	#content .mb10 {
		margin-bottom: 3%;
	}

	#content .mb20 {
		margin-bottom: 4%;
	}

	#content .fs24 {
		font-size: 5.5vw;
	}

	#content .sp-mt20 {
		margin-top: 20px;
	}
}


/*-----------------------------------------------
 共通
-----------------------------------------------*/
.title-deco {
	width: 75px;
	height: 75px;
	flex-shrink: 0;
	animation: decoSwing 2.2s ease-in-out infinite;
	transform-origin: center;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	.title-deco {
		width: calc(75/640*100vw);
		height: calc(75/640*100vw);
	}

}

/*-----------------------------------------------
 トップページ
-----------------------------------------------*/
/*応募方法*/
#content .howto {
	background: #FFA800;
	padding: 30px;
}

#content .howto .inner {
	max-width: none;
	margin: 50px auto;
	padding: 42px 0 20px;
	z-index: 1;
	position: relative;
	background-color: #fff2d9;
	background-image: linear-gradient(90deg, #ffa80033 1px, transparent 1px), linear-gradient(#ffa80033 1px, transparent 1px);
	background-position: 10px 10px;
	background-size: 31px 31px;
	border-radius: 70px;
	max-width: 1200px;
}

#content .howto .inner .howto_deco01 {
	display: block;
	position: absolute;
	top: -2px;
	left: -2px;
	width: 320px;
	height: 320px;
	background: url(../img/howto_bg_top.png) no-repeat center top/cover;
}

#content .howto .inner .howto_deco02 {
	display: block;
	position: absolute;
	top: -2px;
	right: -2px;
	width: 320px;
	height: 320px;
	background: url(../img/howto_bg_top.png) no-repeat center top/cover;
	transform: scaleX(-1);
}

#content .howto .inner .howto_deco03 {
	display: block;
	position: absolute;
	bottom: -2px;
	left: -2px;
	width: 82px;
	height: 82px;
	background: url(../img/howto_bg_bottom.png) no-repeat center top/cover;
}

#content .howto .inner .howto_deco04 {
	display: block;
	position: absolute;
	bottom: -2px;
	right: -2px;
	width: 82px;
	height: 82px;
	background: url(../img/howto_bg_bottom.png) no-repeat center top/cover;
	transform: scaleX(-1);
}

#content .howto .inner .howto_title {
	margin: 0 auto;
	position: relative;
	z-index: 1;
	width: 306px;
	display: flex;
	gap: 17px;
	align-items: center;
}

#content .howto .inner .howto_txt {
	width: 1140px;
	margin: 12px auto 8px;
}

#content .howto .inner .howto_txt img {
	width: 100%;
	height: auto;
}

#content .howto .inner .howto_btn {
	position: absolute;
	bottom: 185px;
	left: 50%;
	margin-left: -223px;
	width: 446px;
	line-height: 1;
	z-index: 2;
}

#content .howto_btn a {
	display: block;
	background: #2B8AE8;
	border-radius: 30px;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform .25s ease;
}

#content .howto_btn a img {
	width: 336px;
	margin-left: -15px;
}

#content .howto_btn a::after {
	content: "";
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	right: 25.3px;
	display: block;
	position: absolute;
	transition: right .25s ease;
}

#content .howto_btn a:hover {
	background: #fff;
	box-shadow: none;
	opacity: 1;
	transform: translateY(5px);
}

#content .howto_btn a:hover::after {
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	right: 5.3px;
}

#content .howto_btn a:hover img {
	content: url("../img/howto_btn_hover.png");
}



@media screen and (max-width:640px) and (min-width: 1px) {
	#content .howto {
		padding: calc(84/640*100vw) 0 calc(57/640*100vw);
		position: relative;
		z-index: 2;
	}

	#content .howto .inner .howto_title {
		width: calc(306/640*100vw);
		margin: 0 auto;
		gap: calc(17/640*100vw);
	}

	#content .howto .inner {
		margin: 0 auto;
		padding: calc(42/640*100vw) 0 calc(30/640*100vw);
		border-radius: calc(70/640*100vw);
		background-position: calc(10/640*100vw) calc(10/640*100vw);
		background-size: calc(31/640*100vw) calc(31/640*100vw);
		width: 100%;
		overflow-x: hidden;
	}

	#content .howto .inner .howto_deco01 {
		top: calc(-9/640*100vw);
		left: calc(-9/640*100vw);
		width: calc(210/640*100vw);
		height: calc(210/640*100vw);
		background: url(../img/howto_bg_top-sp.png) no-repeat center top/cover;
	}

	#content .howto .inner .howto_deco02 {
		top: calc(-9/640*100vw);
		right: calc(-9/640*100vw);
		width: calc(210/640*100vw);
		height: calc(210/640*100vw);
		background: url(../img/howto_bg_top-sp.png) no-repeat center top/cover;
	}

	#content .howto .inner .howto_deco03 {
		bottom: calc(-2/640*100vw);
		left: calc(-2/640*100vw);
		width: calc(82/640*100vw);
		height: calc(82/640*100vw);
	}

	#content .howto .inner .howto_deco04 {
		bottom: calc(-2/640*100vw);
		right: calc(-2/640*100vw);
		width: calc(82/640*100vw);
		height: calc(82/640*100vw);
		transform: scaleX(-1);
	}

	#content .howto .inner .howto_txt {
		width: calc(750/640*100vw);
		margin: calc(11/640*100vw) 0 0 calc(-52/640*100vw);
	}

	#content .howto .inner .howto_btn {
		width: calc(560 / 640 * 100vw);
		bottom: calc(184 / 640 * 100vw);
		margin-left: calc(-280 / 640 * 100vw);
	}

	#content .howto_btn a {
		border-radius: calc(30 / 640 * 100vw);
		box-shadow: 0px calc(5 / 640 * 100vw) 0px 0px rgba(0, 0, 0, 0.1);
		height: calc(60 / 640 * 100vw);
	}

	#content .howto_btn a img {
		width: calc(446 / 640 * 100vw);
		margin-left: 0;
	}

	#content .howto_btn a::after {
		width: calc(33 / 640 * 100vw);
		height: calc(9.5 / 640 * 100vw);
		right: calc(25.3 / 640 * 100vw);
	}

	#content .howto_btn a:hover {
		transform: translateY(calc(5 / 640 * 100vw));
	}

	#content .howto_btn a:hover::after {
		right: calc(5.3 / 640 * 100vw);
	}

}

/*応募規約*/
#content .rules {
	background: #FFA800;
	padding: 0 50px;
	position: relative;
}

#content .rules .inner {
	background: #2B8AE8;
	border-radius: 70px 70px 0 0;
	padding: 40px 40px 56px;
	position: relative;
	max-width: 100%;
}

#content .rules .inner.animated {
	opacity: 1;
}

#content .rules .inner .rules_title {
	position: relative;
	width: 213px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 16px;
}

#content .rules .inner .rules_box {
	text-align: left;
	padding: 33px 100px 39px;
	height: 250px;
	max-width: 1200px;
	margin: 36px auto 0;
	background: #fff;
	border-radius: 40px;
	box-sizing: border-box;
	position: relative;
}

#content .rules .inner .rules_box .rules_box_deco01 {
	position: absolute;
	width: 165.5px;
	left: -15px;
	top: -45px;
}

#content .rules .inner .rules_box .rules_box_deco02 {
	width: 165.5px;
	position: absolute;
	right: -44px;
	bottom: -53px;
	transform: scale(1, -1);
}

#content .rules .inner .scroll_inner {
	max-height: 175px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

#content .rules .inner .rules_box .scroll_inner::-webkit-scrollbar {
	width: 12px;
}

#content .rules .inner .rules_box .scroll_inner::-webkit-scrollbar-track {
	background: transparent;
	border-radius: 6px;
}

#content .rules .inner .rules_box .scroll_inner::-webkit-scrollbar-thumb {
	background-color: #2B8AE8;
	border-radius: 6px;
	border: none;
}

#content .rules .inner .scroll_inner .rules_text {
	padding: 0 40px 0 0;
}

#content .rules .inner .rules_box h3 {
	color: #2B8AE8;
	font-size: 16px;
	line-height: 1.875;
}

#content .rules .inner .rules_box p {
	line-height: 1.875;
	margin-bottom: 2em;
	color: #212121;
	font-size: 16px;
}

#content .rules .inner .rules_box ul {
	padding: 0;
}

#content .rules .inner .rules_box ul li {
	list-style: none;
	color: #212121;
	font-size: 14px;
}

#content .rules .inner .rules_box ul li::before {
	content: "・";
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#content .rules {
		padding: 0;
	}

	#content .rules .inner {
		border-radius: calc(70/640*100vw) calc(70/640*100vw) 0 0;
		box-sizing: border-box;
		padding: calc(40/640*100vw) calc(40/640*100vw) calc(72/640*100vw);
		overflow: hidden;
	}

	#content .rules .inner .rules_title {
		top: 0;
		width: calc(213/640*100vw);
		margin-bottom: calc(23/640*100vw);
		gap: calc(16/640*100vw);
	}

	#content .rules .inner .rules_box {
		padding: calc(35/640*100vw) calc(20/640*100vw) calc(48/640*100vw) calc(20/640*100vw);
		margin: calc(38/640*100vw) auto 0;
		height: calc(305/640*100vw);
		background: #fff;
	}

	#content .rules .inner .rules_box .rules_box_deco01 {
		width: calc(165.5/640*100vw);
		left: calc(-83/640*100vw);
		top: calc(-45/640*100vw);
	}

	#content .rules .inner .rules_box .rules_box_deco02 {
		width: calc(165.5/640*100vw);
		right: calc(-85/640*100vw);
		bottom: calc(1/640*100vw);
	}

	#content .rules .inner .rules_box h3 {
		font-size: calc(20/640*100vw);
		line-height: 1.6;
	}

	#content .rules .inner .rules_box p {
		font-size: calc(20/640*100vw);
		line-height: 1.6;
		margin-bottom: 1.6em;
	}

	#content .rules .inner .rules_box ul li {
		font-size: calc(20/640*100vw);
		line-height: 1.6;

	}

	#content .rules .inner .scroll_inner {
		max-height: calc(249/640*100vw);
	}

	#content .rules .inner .scroll_inner .rules_text {
		padding: 0 calc(30/640*100vw) 0 0;
	}

}

/*投票リスト*/
#content .episode {
	background-color: #ffa800;
	background-image: linear-gradient(90deg, #ffffff33 1px, transparent 1px), linear-gradient(#ffffff33 1px, transparent 1px),
		url("../img/episode_deco_top-left.png"),
		url("../img/episode_deco_top-right.png"),
		url("../img/episode_deco_bottom-left.png");
	;
	background-position: 10px 10px, 10px 10px,
		left -166px top 0,
		right -762px top 0,
		left -286px bottom 0;
	background-size: 31px 31px, 31px 31px,
		683px 362px,
		1288px 580px,
		622px 320px;
	position: relative;
	background-repeat:
		repeat,
		repeat,
		no-repeat,
		no-repeat,
		no-repeat;
}

#content .episode .inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 0 81px;
	position: relative;
}

#content .episode .inner .episode_deco01 {
	position: absolute;
	width: 146px;
	top: 50px;
	left: 140px;
}

#content .episode .inner .episode_deco02 {
	position: absolute;
	width: 136px;
	top: 42px;
	right: 165px;
}

#content .episode .inner .episode_title {
	width: 385px;
	margin: 0 auto;
	display: flex;
	align-items: baseline;
	gap: 17px;
}

#content .episode .inner .episode_txt {
	width: 524px;
	margin: 27px auto 0;
	position: relative;
}

#content .episode .inner .episode_lists {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 55px 53px;
	margin: 0 auto;
	padding: 62px 0 0;
}

#content .episode .inner .episode_lists .episode_list {
	list-style: none;
	position: relative;
}

#content .episode .inner .episode_lists .episode_list a {
	display: block;
	position: relative;
}

/* エピソードカード */

#content .episode .inner .episode_card {
	overflow: hidden;
	position: relative;
	width: 260px;
}

#content .episode .inner .episode_card__link:hover {
	opacity: 1;
}

#content .episode .inner .ep_card_top {
	position: relative;
	background: #F4F4F4;
	border: solid 4px #2B8AE8;
	border-radius: 40px 0 40px 0;
	height: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
	margin-bottom: 17px;
}

#content .episode .inner .episode_card__link:hover .ep_card_top {
	border: solid 10px #2B8AE8;
	transition: all .3s ease;
	box-shadow: none;
	margin-top: 5px;
	margin-bottom: 12px;

}

#content .episode .inner .ep_frame {
	position: relative;
	text-align: center;
	z-index: 1;
}

#content .episode .inner .ep_frame img {
	width: 153px;
	border: solid 1px #b0b0b0;
}

#content .episode .inner .ep_frame.thin01 img {
	width: 97px;
}

#content .episode .inner .ep_frame.thin02 img {
	width: 131px;
}

#content .episode .inner .ep_frame.wide img {
	width: 216px;
}

#content .episode .inner .ep_frame.square img {
	width: 170px;
}

#content .episode .inner .ep_card_bottom {
	width: 100%;
	padding: 0;
	text-align: left;
	flex: 1;
	display: flex;
	flex-direction: column;
}

#content .episode .inner .ep_title {
	font-size: 16px;
	line-height: 1.5;
	color: #000000;
}

#content .episode .close_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(190, 224, 255, 0.8);
}

#content .episode .close_overlay p {
	font-size: 20px;
	line-height: 1.6;
	font-weight: bold;
	margin: 250px auto;
	background: rgba(190, 224, 255, 0.8);
	text-align: center;
	color: #ff1970;
}

#content .episode .rimacomi {
	background-color: #d2e9ff;
	padding: 20px 0;
}

#content .episode .rimacomi_box {
	width: 539px;
	height: 196px;
	background: #fff;
	margin: 0 auto;
	padding-top: 48px;
	border-radius: 50%;
}

#content .episode .rimacomi_text {
	width: 306px;
	margin: 0 auto 20px;
}

#content .episode .rimacomi_btn {
	width: 260px;
	margin: 0 auto;
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#content .episode {
		background-image: linear-gradient(90deg, #ffffff33 1px, transparent 1px), linear-gradient(#ffffff33 1px, transparent 1px),
			url("../img/episode_deco_top-left.png"),
			url("../img/episode_deco_top-right.png"),
			url("../img/episode_deco_bottom-left.png");
		;
		background-position: calc(10/640*100vw) calc(10/640*100vw), calc(10/640*100vw) calc(10/640*100vw),
			left calc(-66/640*100vw) top 0,
			right calc(-20/640*100vw) top 0,
			left calc(-90/640*100vw) bottom 0;
		background-size: calc(31/640*100vw) calc(31/640*100vw), calc(31/640*100vw) calc(31/640*100vw),
			calc(235/640*100vw) calc(124/640*100vw),
			calc(442/640*100vw) calc(200/640*100vw),
			calc(214/640*100vw) calc(110/640*100vw);
		background-repeat:
			repeat,
			repeat,
			no-repeat,
			no-repeat,
			no-repeat;
		width: 100%;
		overflow-x: hidden;
	}

	#content .episode .inner {
		padding: calc(82/640*100vw) 0 calc(73/640*100vw);
	}

	#content .episode .inner .episode_deco01 {
		width: calc(106/640*100vw);
		top: calc(23/640*100vw);
		left: calc(-5/640*100vw);
	}

	#content .episode .inner .episode_deco02 {
		width: calc(86/640*100vw);
		top: calc(9/640*100vw);
		right: calc(-7/640*100vw);
	}

	#content .episode .inner .episode_title {
		width: calc(385/650*100vw);
		gap: calc(17/650*100vw);
	}

	#content .episode .inner .episode_txt {
		width: calc(316/650*100vw);
		margin: calc(24/650*100vw) auto 0;
	}

	#content .episode .inner .ep_title {
		font-size: calc(20 / 650 * 100vw);
		line-height: 1.4;
	}

	#content .episode .inner .episode_lists {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: calc(39 / 640 * 100vw) calc(40 / 640 * 100vw);
		padding: calc(90 / 640 * 100vw) calc(40 / 640 * 100vw) 0;
	}

	#content .episode .inner .episode_card {
		width: auto;
	}

	#content .episode .inner .ep_card_top {
		height: calc(305 / 650 * 100vw);
		padding: 0 calc(20 / 650 * 100vw);
		border-radius: calc(40 / 650 * 100vw) 0 calc(40 / 650 * 100vw) 0;
		margin-bottom: calc(23 / 650 * 100vw);
	}

	#content .episode .inner .ep_frame img {
		width: calc(184 / 650 * 100vw);
	}

	#content .episode .inner .ep_frame.thin01 img {
		width: calc(116 / 650 * 100vw);
	}

	#content .episode .inner .ep_frame.thin02 img {
		width: calc(157 / 650 * 100vw);
	}

	#content .episode .inner .ep_frame.wide img {
		width: calc(260 / 650 * 100vw);
	}

	#content .episode .inner .ep_frame.square img {
		width: calc(220 / 650 * 100vw);
	}

	#content .episode .rimacomi {
		padding: calc(20 / 650 * 100vw) 0;
	}

	#content .episode .rimacomi_box {
		width: calc(539 / 650 * 100vw);
		height: calc(210 / 650 * 100vw);
		padding-top: calc(64 / 650 * 100vw);
	}

	#content .episode .rimacomi_text {
		width: calc(323 / 650 * 100vw);
		margin: 0 auto calc(20 / 650 * 100vw);
	}

	#content .episode .rimacomi_btn {
		width: calc(260 / 650 * 100vw);
	}

}

/*コミックス情報*/
#content .comics_area {
	background: #FFF14D;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}

#content .comics_area .inner {
	position: relative;
	max-width: none;
	background-image: url(../img/comics_deco-line.png), url(../img/comics_deco-line.png), url(../img/comics_deco.png), url(../img/comics_deco.png);
	background-position: left top -18px, right top -18px, left 405px top -7px, left 70px bottom -9px;
	background-size: 34px 496px, 34px 496px, 168px 168px, 232px 232px;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
	z-index: 2;
	max-width: 1200px;
	padding-bottom: 40px;
}

#content .comics_area .inner .comics_box {
	display: flex;
	justify-content: space-between;
	gap: 52px;
	width: 770px;
	margin: 0 auto;
	padding: 40px 0 0 30px;
}

#content .comics_area .inner .comics_box .comics_cover {
	position: relative;
	width: 267px;
	border: 2px solid #2B8AE8;
}

#content .comics_area .inner .comics_box .comics_text {
	margin: 0 -10px 0 0;
	flex: 1;
	text-align: center;
}


#content .comics_area .inner .comics_box .comics_text .comics_title-deco {
	margin: 0 auto;
}

#content .comics_area .inner .comics_box .comics_text .comics_title {
	padding-top: 14px;
	margin: 0 auto;
	width: 277.5px;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn {
	margin: 19px auto 0;
	width: 436px;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn02 {
	margin: 14px auto 0;
}


#content .comics_area .inner .comics_box .comics_text .comics_btn a {
	display: block;
	background: #2B8AE8;
	border-radius: 30px;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform .25s ease;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn01 a img {
	width: 302px;
	margin-left: -60px;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn02 a img {
	width: 328px;
	margin-left: -60px;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn a::after {
	content: "";
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	right: 25.3px;
	display: block;
	position: absolute;
	transition: right .25s ease;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn a:hover {
	background: #fff;
	box-shadow: none;
	opacity: 1;
	transform: translateY(5px);
}

#content .comics_area .inner .comics_box .comics_text .comics_btn a:hover::after {
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	right: 5.3px;
}

#content .comics_area .inner .comics_box .comics_text .comics_btn01 a:hover img {
	content: url("../img/comics_btn01_hover.png");
}


#content .comics_area .inner .comics_box .comics_text .comics_btn02 a:hover img {
	content: url("../img/comics_btn02_hover.png");
}



@media screen and (max-width:640px) and (min-width: 1px) {
	#content .comics_area {
		padding: calc(20/640*100vw);
		width: 100%;
		overflow-x: hidden;
	}

	#content .comics_area::before,
	#content .comics_area::after {
		content: "";
		position: absolute;
		width: calc(690/640*100vw);
		height: calc(109/640*100vw);
		background: url(../img/comics_deco-line-sp.png) no-repeat;
		background-size: contain;
	}

	#content .comics_area::before {
		left: 0;
		top: calc(-40/640*100vw);
	}

	#content .comics_area::after {
		left: 0;
		bottom: calc(-70/640*100vw);
	}

	#content .comics_area .inner {
		width: auto;
		background-image: url(../img/comics_deco.png), url(../img/comics_deco.png);
		background-position: right calc(-10/640*100vw) top calc(163/640*100vw), left calc(-37/640*100vw) bottom calc(89/640*100vw);
		background-size: calc(170/640*100vw) calc(170/640*100vw), calc(236/640*100vw) calc(236/640*100vw);
		background-repeat: no-repeat, no-repeat;
		padding-bottom: 0;
		position: relative;
	}

	#content .comics_area .inner .comics_deco {
		width: calc(82/640*100vw);
		height: calc(82/640*100vw);
		background: url(../img/comics_frame-sp.png) no-repeat center top/cover;
	}

	#content .comics_area .inner .comics_deco01 {
		top: calc(-2/640*100vw);
		left: calc(-2/640*100vw);
	}

	#content .comics_area .inner .comics_deco02 {
		top: calc(-2/640*100vw);
		right: calc(-2/640*100vw);
		transform: scaleX(-1);
	}

	#content .comics_area .inner .comics_deco03 {
		bottom: calc(-2/640*100vw);
		left: calc(-2/640*100vw);
		transform: scaleY(-1);
	}

	#content .comics_area .inner .comics_deco04 {
		bottom: calc(-2/640*100vw);
		right: calc(-2/640*100vw);
		transform: scale(-1);
	}

	#content .comics_area .inner .comics_deco05 {
		display: none;
	}

	#content .comics_area .inner .comics_deco06 {
		display: none;
	}

	#content .comics_area .inner .comics_box {
		flex-direction: column;
		gap: calc(31/640*100vw);
		width: calc(560/640*100vw);
		padding: calc(32/640*100vw) 0 0 0;
	}

	#content .comics_area .inner .comics_title {
		width: calc(277/640*100vw);
		margin: 0 auto;
		justify-items: center;
	}

	#content .comics_area .inner .comics_title.for-pc {
		display: none;
	}

	#content .comics_area .inner .comics_title>img {
		padding-top: calc(11/640*100vw);
		margin: 0 auto;
		width: calc(277/640*100vw);
	}

	#content .comics_area .inner .comics_box .comics_cover {
		width: calc(430/640*100vw);
		margin: 0 auto;
	}

	#content .comics_area .inner .comics_box .comics_cover::after {
		top: calc(36/640*100vw);
		left: calc(-48/640*100vw);
		width: calc(496/640*100vw);
		height: calc(462/640*100vw);
	}

	#content .comics_area .inner .comics_box .comics_text {
		margin: calc(15/640*100vw) auto;
	}

	#content .comics_area .inner .comics_box .comics_text .comics_btn {
		margin: 0 auto calc(14/640*100vw);
		width: calc(560/640*100vw);
	}

	#content .comics_area .inner .comics_box .comics_text .comics_btn01 a img {
		width: calc(405/640*100vw);
		margin-left: calc(-47/640*100vw);
	}

	#content .comics_area .inner .comics_box .comics_text .comics_btn02 a img {
		width: calc(433/640*100vw);
		margin-left: calc(-51/640*100vw);
	}
}

/*-----------------------------------------------
 投票確認
-----------------------------------------------*/
#confirm {
	background: #FFF500;
	position: relative;
	padding-bottom: 63px;
	overflow: hidden;
}

#confirm .inner {
	max-width: 1200px;
	position: relative;
	margin: 0 auto;
	padding: 17px 0 0;
	box-sizing: border-box;
	z-index: 0;
}

#confirm .kv_bg {
	position: absolute;
	width: 3000px;
	top: 0;
	left: 50%;
	margin-left: -1500px;
	z-index: 1;
}

#confirm .inner .kv_deco01 {
	position: absolute;
	width: 119.5px;
	top: -28px;
	left: 848px;
	z-index: 1;
}

#confirm .inner .kv_deco02 {
	position: absolute;
	width: 142px;
	top: -40px;
	left: 29px;
	z-index: 1;
}

#confirm .inner .kv_deco03 {
	position: absolute;
	width: 140.5px;
	top: 128px;
	right: 66px;
	z-index: 1;
}

#confirm .inner .kv_deco04 {
	position: absolute;
	width: 90.5px;
	top: 316px;
	left: 39px;
	z-index: 1;
}

#confirm .inner .kv_deco05 {
	position: absolute;
	width: 137.5px;
	top: 398px;
	right: 35px;
	z-index: 1;
}


#confirm .confirm_title {
	position: relative;
	margin: 0 auto;
	width: 358px;
}

#confirm .confirm_title img {
	position: relative;
	z-index: 2;
}

#confirm .confirm_subtitle {
	margin: 0 auto;
	width: 203.5px;
}

.vote_confirm {
	margin: 0 0 0;
}

.vote_image_area {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	width: 700px;
	height: 640px;
	margin: 15px auto 13px;
	background: #FFA800;
	border-radius: 40px 0 40px 0;
	padding: 30px 60px;
	box-sizing: border-box;
}

.vote_image_area img {
	width: auto;
	max-width: 580px;
	max-height: 580px;
	border: solid 1px #707070;
}

.vote_image_area.wide {
	align-items: flex-start;
	margin: 28px auto 0;
	padding-top: 45px;
}

.vote_image_area.wide img {
	width: 560px;
	height: 396px;
}

.vote_image_area.square {
	margin: -2px auto 68px;
	padding-top: 0;
}

.vote_image_area.square img {
	width: 480px;
	height: 480px;
}

.vote_text_area {
	width: 369px;
	margin: 0 auto;
}

#confirm .confirm_txt {
	position: relative;
	width: 260px;
	margin: 0 auto;
}

#confirm .vote_btn {
	margin: 20px auto 25px;
	width: 380px;
	position: relative;
	z-index: 2;
}

#confirm .vote_btn a {
	display: block;
	background: #2B8AE8;
	border-radius: 40px;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform .25s ease;
}

#confirm .vote_btn a::after {
	content: "";
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	right: 25.3px;
	display: block;
	position: absolute;
	transition: right .25s ease;
}

#confirm .vote_btn a:hover {
	background: #fff;
	box-shadow: none;
	opacity: 1;
	transform: translateY(5px);
}

#confirm .vote_btn a:hover::after {
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	right: 5.3px;
}

#confirm .vote_btn a img {
	display: block;
	width: 120px;
}

#confirm .vote_btn a:hover img {
	content: url("../../common/img/confirm/vote_btn_hover.png");
}

#confirm .select-back_btn {
	position: relative;
	width: 380px;
	margin: 0 auto;
	z-index: 2;
}


#confirm .select-back_btn a {
	display: block;
	background: #fff;
	border: solid 4px #2B8AE8;
	border-radius: 40px;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform .25s ease;
}

#confirm .select-back_btn a::after {
	content: "";
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	left: 25.3px;
	display: block;
	position: absolute;
	transition: left .25s ease;
	transform: scaleX(-1);
}

#confirm .select-back_btn a:hover {
	background: #2B8AE8;
	box-shadow: none;
	opacity: 1;
	transform: translateY(5px);
}

#confirm .select-back_btn a:hover::after {
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	left: 5.3px;
}

#confirm .select-back_btn img {
	display: block;
	width: 120px;
}

.select-back_btn a:hover img {
	content: url("../../common/img/confirm/select-back_btn_hover.png");
}


.top-back_btn {
	margin: 0 auto;
	width: 100%;
	background: #FFA800;
	padding: 35px 0;
}

.top-back_btn a {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 164px;
	margin: 0 auto;
}

.top-back_btn a::after {
	content: "";
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	left: 0;
	display: block;
	position: absolute;
	transition: left .25s ease;
	transform: scaleX(-1);
}

.top-back_btn a:hover {
	opacity: 1;
}

.top-back_btn a:hover::after {
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	left: -20px;
}

.top-back_btn a img {
	display: block;
	width: 121px;
	margin: 0 0 0 auto;
}

.top-back_btn a:hover img {
	content: url("../../common/img/top-back_btn_hover.png");
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#confirm {
		padding-bottom: calc(41/640*100vw);
		overflow: visible;
	}

	#confirm .inner {
		max-width: 100%;
		padding: calc(29/640*100vw) calc(30/640*100vw) 0;
	}


	#confirm .kv_bg {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		margin-left: 0;
		z-index: 0;
	}


	#confirm .kv_deco {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
	}

	#confirm .inner .kv_deco01 {
		width: calc(119 / 640 * 100vw);
		top: calc(-50 / 640 * 100vw);
		left: calc(505 / 640 * 100vw);
	}

	#confirm .inner .kv_deco02 {
		display: none;
	}

	#confirm .inner .kv_deco03 {
		width: calc(140.5 / 640 * 100vw);
		top: calc(249 / 640 * 100vw);
		right: calc(-33 / 640 * 100vw);
	}

	#confirm .inner .kv_deco04 {
		width: calc(90.5 / 640 * 100vw);
		top: calc(346 / 640 * 100vw);
		left: calc(-2 / 640 * 100vw);
	}

	#confirm .inner .kv_deco05 {
		display: none;
	}

	#confirm .confirm_subtitle {
		text-align: center;
		width: calc(203.5/640*100vw);
	}

	.vote_confirm {
		display: block;
	}

	.vote_image_area {
		width: calc(560/640*100vw);
		height: calc(568/640*100vw);
		margin: calc(24/640*100vw) auto calc(31/640*100vw);
		padding: calc(20/640*100vw);
		border-radius: calc(40/640*100vw) 0 calc(40/640*100vw) 0;
	}

	.vote_image_area img {
		max-width: calc(520/640*100vw);
		max-height: calc(520/640*100vw);
	}

	.vote_image_area.wide {
		height: calc(470/640*100vw);
		margin: calc(70/640*100vw) auto calc(90/640*100vw);
		padding-top: calc(84/640*100vw);
	}

	.vote_image_area.wide img {
		max-width: none;
		max-height: none;
		width: calc(560/640*100vw);
		height: auto;
	}

	.vote_image_area.square {
		margin: calc(67/640*100vw) auto calc(82/640*100vw);
		padding-top: 0;
	}

	.vote_image_area.square img {
		width: calc(460/640*100vw);
		height: calc(460/640*100vw);
	}

	.vote_text_area {
		width: 100%;
	}

	#confirm .confirm_txt {
		margin: 0 auto calc(20/640*100vw);
		width: calc(310/640*100vw);
	}

	#confirm .vote_btn {
		width: calc(380/640*100vw);
		margin: 0 auto calc(25/640*100vw);
	}

	#confirm .vote_btn a {
		border-radius: calc(40/640*100vw);
		height: calc(80/640*100vw);
	}

	#confirm .vote_btn a::after {
		width: calc(33/640*100vw);
		height: calc(9.5/640*100vw);
		right: calc(25.3/640*100vw);
	}

	#confirm .vote_btn a:hover::after {
		right: calc(5.3/640*100vw);
	}

	#confirm .vote_btn a img {
		width: calc(136/640*100vw);
	}

	#confirm .select-back_btn {
		width: calc(380/640*100vw);
	}

	#confirm .select-back_btn a {
		border: solid calc(4/640*100vw) #2B8AE8;
		border-radius: calc(40/640*100vw);
		height: calc(52/640*100vw);
	}

	#confirm .select-back_btn a::after {
		width: 33px;
		height: calc(9.5/640*100vw);
		left: calc(25.3/640*100vw);
	}

	#confirm .select-back_btn a:hover {
		transform: translateY(calc(5/640*100vw));
	}

	#confirm .select-back_btn a:hover::after {
		left: calc(5.3/640*100vw);
	}

	#confirm .select-back_btn img {
		width: calc(140/640*100vw);
	}

	.top-back_btn {
		text-align: center;
		padding: calc(55/640*100vw) 0 calc(60/640*100vw);
	}

	.top-back_btn a {
		width: calc(164/640*100vw);
		margin: 0 auto;
	}

	.top-back_btn a::after {
		width: calc(33/640*100vw);
		height: calc(9.5/640*100vw);
	}

	.top-back_btn a:hover::after {
		left: calc(-20/640*100vw);
	}

	.top-back_btn a img {
		width: calc(121/640*100vw);
	}
}

/*-----------------------------------------------
投票完了
-----------------------------------------------*/
#thanks {
	background: #FFF500;
	position: relative;
	padding-bottom: 67px;
	overflow: hidden;
}

#thanks .inner {
	max-width: 1200px;
	position: relative;
	margin: 0 auto;
	padding: 17px 0 0;
	box-sizing: border-box;
	z-index: 0;
}

#thanks .kv_bg {
	position: absolute;
	width: 3000px;
	top: 0;
	left: 50%;
	margin-left: -1500px;
	z-index: 1;
}

#thanks .inner .kv_deco01 {
	position: absolute;
	width: 119.5px;
	top: -28px;
	left: 848px;
	z-index: 1;
}

#thanks .inner .kv_deco02 {
	position: absolute;
	width: 142px;
	top: -40px;
	left: 29px;
	z-index: 1;
}

#thanks .inner .kv_deco03 {
	position: absolute;
	width: 140.5px;
	top: 128px;
	right: 66px;
	z-index: 1;
}

#thanks .inner .kv_deco04 {
	position: absolute;
	width: 90.5px;
	top: 316px;
	left: 39px;
	z-index: 1;
}

#thanks .inner .kv_deco05 {
	position: absolute;
	width: 137.5px;
	top: 398px;
	right: 35px;
	z-index: 1;
}


#thanks .thanks_title {
	position: relative;
	margin: 0 auto;
	width: 358px;
}

#thanks .thanks_title img {
	position: relative;
	z-index: 2;
}

#thanks .thanks_subtitle {
	margin: 0 auto;
	width: 203.5px;
}

.thanks_confirm {
	margin: 0 0 0;
}

.thanks_image_area {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	width: 700px;
	height: 640px;
	margin: 15px auto 40px;
	background: #FFA800;
	border-radius: 40px 0 40px 0;
	padding: 30px 60px;
	box-sizing: border-box;
}

.thanks_image_area img {
	width: auto;
	max-width: 580px;
	max-height: 580px;
	box-shadow: 10px 10px 0 0px rgba(0, 0, 0, 0.1);
}

.thanks_image_area.wide {
	align-items: flex-start;
	margin: 28px auto 0;
	padding-top: 45px;
}

.thanks_image_area.wide img {
	width: 560px;
	height: 396px;
}

.thanks_image_area.square {
	margin: -2px auto 68px;
	padding-top: 0;
}

.thanks_image_area.square img {
	width: 480px;
	height: 480px;
}

.thanks_text_area {
	width: 369px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}

#thanks .thanks_txt {
	position: relative;
	width: 260px;
	margin: 0 auto;
}

#thanks .x_btn {
	width: 380px;
}

#thanks .x_btn a {
	display: block;
	background: #2B8AE8;
	border-radius: 55px;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	height: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	transition: transform .25s ease;
}

#thanks .x_btn a::after {
	content: "";
	background: url(../img/btn_arrow.png) no-repeat 0 0 / contain;
	width: 33px;
	height: 9.5px;
	right: 25.3px;
	display: block;
	position: absolute;
	transition: right .25s ease;
}

#thanks .x_btn a:hover {
	background: #fff;
	box-shadow: none;
	opacity: 1;
	transform: translateY(5px);
}

#thanks .x_btn a:hover::after {
	background: url(../img/btn_arrow_hover.png) no-repeat 0 0 / contain;
	right: 5.3px;
}

#thanks .x_btn a img {
	display: block;
	width: 239px;
}

#thanks .x_btn a:hover img {
	content: url("../../common/img/thanks/x_btn_hover.png");
}

@media screen and (max-width:640px) and (min-width: 1px) {
	#thanks {
		width: 100%;
		padding-bottom: calc(40/640*100vw);
		overflow: visible;
	}

	#thanks .inner {
		max-width: 100%;
		padding: calc(29/640*100vw) calc(30/640*100vw) calc(41/640*100vw);
	}

	#thanks .kv_bg {
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		margin-left: 0;
		z-index: 0;
	}

	#thanks .kv_deco {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
	}

	#thanks .inner .kv_deco01 {
		width: calc(119 / 640 * 100vw);
		top: calc(-50 / 640 * 100vw);
		left: calc(505 / 640 * 100vw);
	}

	#thanks .inner .kv_deco02 {
		display: none;
	}

	#thanks .inner .kv_deco03 {
		width: calc(140.5 / 640 * 100vw);
		top: calc(249 / 640 * 100vw);
		right: calc(-33 / 640 * 100vw);
	}

	#thanks .inner .kv_deco04 {
		width: calc(90.5 / 640 * 100vw);
		top: calc(346 / 640 * 100vw);
		left: calc(-2 / 640 * 100vw);
	}

	#thanks .inner .kv_deco05 {
		display: none;
	}

	#thanks .confirm_subtitle {
		text-align: center;
		width: calc(203.5/640*100vw);
	}

	.thanks_confirm {
		display: block;
	}

	.thanks_image_area {
		width: calc(560/640*100vw);
		height: calc(568/640*100vw);
		margin: calc(24/640*100vw) auto 0;
		padding: calc(12/640*100vw) calc(20/640*100vw) calc(20/640*100vw) calc(20/640*100vw);
		border-radius: calc(40/640*100vw) 0 calc(40/640*100vw) 0;
	}

	.thanks_image_area img {
		max-width: calc(520/640*100vw);
		max-height: calc(520/640*100vw);
		box-shadow: calc(5/640*100vw) calc(5/640*100vw) 0 0px rgba(0, 0, 0, 0.1);
	}

	.thanks_image_area.wide {
		height: calc(470/640*100vw);
		margin: calc(70/640*100vw) auto calc(90/640*100vw);
		padding-top: calc(84/640*100vw);
	}

	.thanks_image_area.wide img {
		max-width: none;
		max-height: none;
		width: calc(560/640*100vw);
		height: auto;
	}

	.thanks_image_area.square {
		margin: calc(67/640*100vw) auto calc(82/640*100vw);
		padding-top: 0;
	}

	.thanks_image_area.square img {
		width: calc(460/640*100vw);
		height: calc(460/640*100vw);
	}

	.thanks_text_area {
		width: 100%;
	}

	#thanks .confirm_txt {
		margin: 0 auto calc(20/640*100vw);
		width: calc(310/640*100vw);
	}

	#thanks .x_btn {
		width: calc(450/640*100vw);
		margin: 0 auto;
	}

	#thanks .x_btn a {
		border-radius: calc(65/640*100vw);
		height: calc(130/640*100vw);
	}

	#thanks .x_btn a::after {
		width: calc(33/640*100vw);
		height: calc(9.5/640*100vw);
		right: calc(25.3/640*100vw);
	}

	#thanks .x_btn a:hover::after {
		right: calc(5.3/640*100vw);
	}

	#thanks .x_btn a img {
		width: calc(286/640*100vw);
	}

}

/*-----------------------------------------------
結果発表
-----------------------------------------------*/
/*結果発表kv*/

.result_kv#key-visual .inner .kv_title {
	z-index: 3;
}

.result_kv#key-visual .inner .kv_illust {
	z-index: 2;
}

.result_kv#key-visual .inner .kv_result_title {
	position: absolute;
	width: 397px;
	bottom: 265px;
	right: 55px;
	z-index: 2;
}

.result_kv#key-visual .inner .kv_result_comment {
	position: absolute;
	width: 498px;
	bottom: 93px;
	right: 35px;
	z-index: 2;
}


@media screen and (max-width:640px) and (min-width: 1px) {

	.result_kv#key-visual .inner .kv_title {
		bottom: calc(122/640*100vw);
		z-index: 2;
	}

	.result_kv#key-visual .inner .kv_result_title {
		bottom: calc(128 / 640 * 100vw);
		width: calc(463 / 640 * 100vw);
		right: calc(89 / 640 * 100vw);
		z-index: 3;
	}

	.result_kv#key-visual .inner {
		padding-bottom: 0;
	}

	.result_kv#key-visual .inner .kv_result_comment {
		width: calc(600 / 640 * 100vw);
		bottom: calc(-41 / 640 * 100vw);
		right: calc(20 / 640 * 100vw);
		z-index: 2;
	}
}


.result_comment {
	position: relative;
	background: #fff9ed;
	border-top: 3px solid #bce7db;
	border-bottom: 3px solid #bce7db;
	padding: 26px 0;
	width: 100%;
	text-align: center;
	color: #6f2c29;
	font-size: 18px;
	line-height: 1.44;
	font-feature-settings: "palt";
}

@media screen and (max-width:640px) and (min-width: 1px) {
	/* .result_comment_wrap {
		padding: calc(40 / 640 * 100vw) 0 0;
	}

	.result_comment {
		padding: calc(44 / 640 * 100vw) calc(57 / 640 * 100vw) calc(37 / 640 * 100vw);
		font-size: calc(32 / 640 * 100vw);
		width: auto;
		line-height: 1.375;
	}

	.result_comment:before {
		width: calc(73 / 640 * 100vw);
		height: calc(33 / 640 * 100vw);
		left: calc(50% - calc(36 / 640 * 100vw));
		top: calc(-15 / 640 * 100vw);
	} */

}

/*結果発表メイン*/
#result {
	background-color: #ffa800;
	background-image: linear-gradient(90deg, #ffffff33 1px, transparent 1px), linear-gradient(#ffffff33 1px, transparent 1px), url(../img/episode_deco_top-left.png), url(../img/episode_deco_top-right.png), url(../img/episode_deco_bottom-left.png);
	background-position: 10px 10px, 10px 10px, left -166px top 0, right -762px top 0, left -286px bottom 0;
	background-size: 31px 31px, 31px 31px, 683px 362px, 1288px 580px, 622px 320px;
	position: relative;
	background-repeat: repeat, repeat, no-repeat, no-repeat, no-repeat;
	position: relative;
}

#content #result .inner {
	max-width: 900px;
	padding: 88px 0 97px;
	position: relative;
}

#content #result .inner .result_title {
	width: 385px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 17px;
}

#content #result .inner .result_txt {
	width: 635px;
	margin: 0 auto;
	position: relative;
}

#content #result .inner .result_lists {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 51px 0;
	padding: 0 50px 0 46px;
	margin: 66px auto 0;
}

#content #result .inner .result_lists .first {
	grid-column: span 2 / span 2;
	padding: 111px 0 0 0;
}

#content #result .inner .result_lists .other {
	padding: 99px 0 15px 0;
}

#content #result .inner .result_lists li {
	list-style: none;
	position: relative;
}

#content #result .inner .result_lists .result_img {
	box-sizing: border-box;
	position: relative;
	margin: 0 auto;
	z-index: 2;
	background: #F4F4F4;
	border: solid 4px #2B8AE8;
	border-radius: 40px 0 40px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
}

#content #result .inner .result_lists .first .result_img {
	width: 630px;
	padding: 30px;
	height: 622px;
	margin-bottom: 17px;
}

#content #result .inner .result_lists .first .result_img img {
	max-width: 356px;
	max-height: 506px;
	width: auto;
	height: auto;
	border: solid 1px #999;
}

#content #result .inner .result_lists .other .result_img {
	width: 315px;
	height: 360px;
	padding: 20px;
}

#content #result .inner .result_lists .other .result_img img {
	max-width: 250px;
	max-height: 295px;
	width: auto;
	border: solid 1px #2B8AE8;
}

#content #result .inner .result_lists li .num {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

#content #result .inner .result_lists .first .num {
	top: 5px;
	width: 162px;
}

#content #result .inner .result_lists .other .num {
	top: 0;
	width: 127px;
}

#content #result .inner .episode_deco01 {
	position: absolute;
	width: 146px;
	top: 50px;
	left: -68px;
}

#content #result .inner .episode_deco02 {
	position: absolute;
	width: 136px;
	top: 42px;
	right: -39px;
}


@media screen and (max-width:640px) and (min-width: 1px) {
	#result {
		border-top: solid calc(40 / 640 * 100vw) #ffa800;
		background-image: linear-gradient(90deg, #ffffff33 1px, transparent 1px), linear-gradient(#ffffff33 1px, transparent 1px), url(../img/episode_deco_top-left.png), url(../img/episode_deco_top-right.png), url(../img/episode_deco_bottom-left.png);
		background-position: calc(10 / 640 * 100vw) calc(10 / 640 * 100vw), calc(10 / 640 * 100vw) calc(10 / 640 * 100vw), left calc(-66 / 640 * 100vw) top 0, right calc(-230 / 640 * 100vw) top 0, left calc(-90 / 640 * 100vw) bottom 0;
		background-size: calc(31 / 640 * 100vw) calc(31 / 640 * 100vw), calc(31 / 640 * 100vw) calc(31 / 640 * 100vw), calc(235 / 640 * 100vw) calc(124 / 640 * 100vw), calc(442 / 640 * 100vw) calc(200 / 640 * 100vw), calc(214 / 640 * 100vw) calc(110 / 640 * 100vw);
		background-repeat: repeat, repeat, no-repeat, no-repeat, no-repeat;
		width: 100%;
		overflow-x: hidden;
	}

	#result::after {
		height: calc(22 / 640 * 100vw);
	}

	#content #result .inner {
		padding: calc(88 / 640 * 100vw) 0 calc(60 / 640 * 100vw);
		overflow: hidden;
	}

	#content #result .inner .result_title {
		width: calc(389 / 650 * 100vw);
		margin: 0 auto;
		gap: calc(17 / 650 * 100vw);
	}

	#content #result .inner .result_deco {
		position: absolute;
		width: 100%;
		top: calc(13 / 650 * 100vw);
		left: 0;
	}

	#content #result .inner .result_txt {
		width: calc(564 / 650 * 100vw);
		margin: 0 auto calc(30 / 650 * 100vw);
	}

	#content #result .inner .result_lists {
		display: block;
		padding: 0 calc(20 / 640 * 100vw);
		margin: calc(36 / 640 * 100vw) auto 0;
	}

	#content #result .inner .result_lists li {
		margin: 0 0 calc(103/640*100vw);
	}

	#content #result .inner .result_lists .first {
		padding: calc(107 / 640 * 100vw) 0 0;
		margin: 0 0 calc(60/640*100vw);
	}

	#content #result .inner .result_lists .other {
		margin: 0 0 calc(60/640*100vw);
		padding: calc(98/640*100vw) 0 0 0;
	}

	#content #result .inner .result_lists li:last-child {
		margin-bottom: 0;
	}

	#content #result .inner .result_lists .result_img {
		border-radius: calc(40 / 640 * 100vw) 0 calc(40 / 640 * 100vw) 0;
		min-height: calc(360 / 640 * 100vw);
	}

	#content #result .inner .result_lists .first .result_img img {
		max-height: calc(506 / 640 * 100vw);
		max-width: none;
		width: auto;
	}

	#content #result .inner .result_lists .other .result_img img {
		max-height: calc(295 / 640 * 100vw);
		max-width: calc(250 / 640 * 100vw);
		width: auto;
	}

	#content #result .inner .result_lists .first .result_img {
		padding: calc(54 / 640 * 100vw);
		margin: 0 auto calc(44/640*100vw);
		width: calc(600/640*100vw);
	}

	#content #result .inner .result_lists .other .result_img {
		margin-bottom: calc(19/640*100vw);
		padding: calc(30 / 640 * 100vw);
		width: calc(315 / 640 * 100vw);
		height: calc(360 / 640 * 100vw);
	}

	#content #result .inner .result_lists .first .num {
		top: calc(0 / 640 * 100vw);
		width: calc(162 / 640 * 100vw);
	}

	#content #result .inner .result_lists .other .num {
		top: 0;
		width: calc(127/640*100vw);
	}

	#content #result .inner .result_lists .comment_text {
		font-size: calc(26/640*100vw);
		margin: 0 calc(15/640*100vw);
	}

	#content #result .inner .result_lists .comment_text span {
		font-size: calc(24/640*100vw);
	}

	#content #result .inner .episode_deco01 {
		width: calc(106/640*100vw);
		top: calc(23/640*100vw);
		left: calc(-5/640*100vw);
	}

	#content #result .inner .episode_deco02 {
		width: calc(86/640*100vw);
		top: calc(9/640*100vw);
		right: calc(-7/640*100vw);
	}

}


.js-animate {
	opacity: 0;
}

.js-animate.animated {
	opacity: 1;
}