@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap');

.fontMontserrat {
	font-family: "Montserrat", serif;
}

/*---------------------*/

.contents {
	font-family: "Noto Sans JP", serif;
	min-width: 1024px;
	overflow: hidden;
}
.contIn1024 {
	width: 1024px;
	position: relative;
	margin: auto;
}
.contIn800 {
	width: 800px;
	position: relative;
	margin: auto;
}
.posiRe {
	position: relative;
}
.mt_60 {
	margin-top: 60px;
}

.hover:hover {
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition-duration: 0.3s;
}


/*------------------*/

.mainvisualWrap01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/main_bg_wave01.png"), url("/attending/t/tyo-i/campaign_resort/images/pc/mainvisual_bg01.jpg");
	background-repeat: repeat-x, no-repeat;
	background-position: center bottom, center center;
	background-size: auto 44px, auto 850px;
	height: 850px;
}
.mainTit01 {
	padding-top: 368px;
	text-align: center;
}
.mainTit01 img {
	width: 717px;
	height: auto;
}

.mainBlock01 {
	background-color: #FFE970;
	padding: 110px 0px 276px;
	text-align: center;
	position: relative;
}

.mainText01 {
	font-size: 18px;
	line-height: 1.8em;
	font-weight: bold;
	color: #0A3393;
}
.mainText02 {
	margin: 28px auto;
}
.mainText02 img {
	width: 539px;
	height: auto;
}
.colRed01 {
	color: #E2243F;
}
.rubiWrap01 {
	display: inline-block;
	position: relative;
}
.rubi01 {
	white-space: nowrap;
	font-size: 10px;
	line-height: 1.0em;
	font-weight: normal;
	letter-spacing: -0.05em;
	position: absolute;
	top: -3px;
	left: 50%;
	transform: translateX(-50%);
}

.mainBox01 {
	width: 620px;
	margin: 50px auto 0px;
}

.mainCloudImg01 {
	mix-blend-mode: hard-light;
	width: 199px;
	position: absolute;
	top: 57px;
	left: -157px;
}
.mainCloudImg02 {
	mix-blend-mode: hard-light;
	width: 225px;
	position: absolute;
	bottom: -29px;
	right: -130px;
}

.mainCloudImg03 {
	mix-blend-mode: hard-light;
	width: 1093px;
	height: auto;
	position: absolute;
	top: 75px;
	left: 50%;
	transform: translateX(-50%);
}

.mainBlock01 .contIn1024 {
	z-index: 10;
}



.mainBgImg01 {
	width: 162px;
	position: absolute;
	top: 298px;
	left: 50%;
	margin-left: -490px;
}
.mainBgImg02 {
	width: 173px;
	position: absolute;
	top: 157px;
	left: 50%;
	margin-left: 330px;
}

/*-----------------------*/

.mainBlock02 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/cont_bg_wave01.png"), url("/attending/t/tyo-i/campaign_resort/images/pc/bg_blue01.jpg");
	background-repeat: repeat-x, repeat;
	background-position: center top, center top;
	background-size: auto 44px, 1300 auto;
	padding: 44px 0px 0px;
}
.mainBlock02In01 {
	position: relative;
	margin-top: -216px;
}
.mainMovie01 {
	width: 862px;
	margin: auto;
}
.mainTit02 {
	text-align: center;
	margin-bottom: 20px;
}
.mainTit02 img {
	width: auto;
	height: 39px;
}

.mainDayBlock01 {
	position: relative;
	margin-top: 120px;
}

.mainBgImg03 {
	width: 1201px;
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translateX(-50%);
}

.mainDayBlock01 .contIn1024 > div {
	position: relative;
}

.mainDayDl01 {
	text-align: center;
}
.mainDayDl01 dt {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 500px;
	height: 58px;
	margin: 0px auto 20px;
	border-radius: 80px;
	background-color: #125799;
	color: #ffffff;
	font-size: 24px;
	line-height: 1.5em;
	font-weight: bold;
}

.mainDayDl01 dd {
	font-family: "Montserrat", serif;
	color: #FFE970;
	font-size: 50px;
	line-height: 1.5em;
	font-weight: 600;
}
.mainDayDl01 dd .s01 {
	font-family: "Noto Sans JP", serif;
	font-size: 26px;
}

.mainLine01 {
	margin: 0px 10px;
}
.mainLine01 img {
	width: 67px;
	height: 1px;
	vertical-align: middle;
}

/*-------------------------*/

.ancBlock01 {
	background-color: #EFEDE2;
	padding: 60px 0px;
}

.ancBtn01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/anc_btn_bg01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% auto;
	width: 320px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #ffffff;
	font-size: 20px;
    font-weight: bold;
	line-height: 1.6em;
	position: relative;
	cursor: pointer;
}

.ancDeco01 {
	width: 83px;
	position: absolute;
	top: 9px;
	left: -16px;
}
.ancDeco02 {
	width: 77px;
	position: absolute;
	bottom: -29px;
	left: -18px;
}
.ancDeco03 {
	width: 64px;
	position: absolute;
	top: -7px;
	left: 21px;
}

.accordion02:hover .acContWrap01 {
	height: 170px;
	transition: all 0.3s ease-out;
}

.acContWrap01 {
	overflow: hidden;
	height: 0px;
	transition: all 0.3s ease-out;
	box-sizing: border-box;
	padding: 0px 5px;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 100px;
	z-index: 10;
}

.acCont01 {
	border: 1px solid #cccccc;
	padding: 0px 4px;
	background-color: #ffffff;
}
.acCont01 a {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	padding: 5px;
	height: 40px;
	font-size: 16px;
	line-height: 1.0em;
	font-weight: bold;
	border-top: 1px solid #cccccc;
}
.acCont01 a:first-child {
	border-top: none;
}

.ancFlex01 {
	display: flex;
	justify-content: space-between;
}
.ancFlex01 li {
	width: 320px;
}
.ancFlex01 li:nth-child(3) {
	position: relative;
}
.ancFlex01 li:nth-child(3) a {
	pointer-events: none;
}

/*-----------------------*/

.contBlock01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_green.jpg");
	padding: 50px 0px 100px;
}

.contH201 {
	text-align: center;
}
.contH201 img {
	width: 618px;
	height: auto;
}
.contBlockIn01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_green_dark.jpg");
	background-repeat: repeat;
	background-position: center top;
}

.pledgeTop01Wrap01 {
	padding: 15px;
}
.pledgeTop01 {
	display: flex;
	border: 2px solid #FFFFFF;
}
.pledgeTop01 .box01 {
	background-color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	width: 150px;
	flex-shrink: 0;
	padding: 3px 5px 3px 3px;
}
.pledgeTop01 .box01 .p01 {
	background-color: #333333;
	color: #ffffff;
	font-size: 14px;
	line-height: 1.6em;
	font-weight: 500;
	border-radius: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	height: 24px;
	margin-bottom: 3px;
	padding: 0 8px;
}
.pledgeTop01 .box01 .p02 {
	font-size: 16px;
	line-height: 1.3em;
	font-weight: bold;
}

.pledgeTop01 .box02 {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #ffffff;
	font-size: 28px;
	line-height: 1.5em;
	font-weight: bold;
	box-sizing: border-box;
	width: 100%;
	padding: 5px;
}

/*-------------*/

.slick-dots {
	display: flex;
	margin-left: 60px;
}
.slick-dots li {
	margin-right: 10px;
}
.slick-dots li button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    border: none;
    background: transparent;
	background-color: #ffffff;
	width: 12px;
	height: 12px;
	border-radius: 30px;
	font-size: 0px;
	line-height: 0px;
	text-indent: -9999px;
}
.slick-dots li.slick-active button {
	background-color: #FFE970;
}

/*-------------*/

.pledgeBlockIn01 {
	padding: 0px 60px 60px;
}
.pledgeBox01 {
	position: relative;
	margin-top: -90px;
}
.pledgeText01 {
	font-size: 18px;
	line-height: 1.6em;
	font-weight: bold;
	width: 384px;
	position: absolute;
	top: 270px;
	left: 144px;
}
.pledgeBox02 {
	border: 4px solid #FFFFFF;
	background-color: #FFE970;
	border-radius: 30px;
	padding: 40px 40px 0px 40px;
	margin-bottom: 60px;
}
.pledgeText02 {
	text-align: center;
	margin-bottom: 25px;
}
.pledgeText02 img {
	width: 237px;
	height: auto;
}

.pledgeFlex01 {
	display: flex;
	justify-content: flex-end;
	gap: 0px 30px;
}
.pledgeFlex01 .box01 {
	text-align: center;
	width: 420px;
}
.pledgeFlex01 .box02 {
	width: 320px;
	flex-shrink: 0;
}
.pledgeText03 {
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	margin-bottom: 10px;
}
.pledgeText04 {
	color: #E2243F;
	font-size: 26px;
	line-height: 1.6em;
	font-weight: 900;
}
.pledgeText04 .s01 {
	font-size: 15px;
	font-weight: 500;
}
.pledgeText04 .line01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/cont_text01_line01.png");
	background-repeat: repeat-x;
	background-position: center bottom;
	background-size: auto 18px;
}


.pledgeFlex02 {
	display: flex;
	align-items: center;
}
.pledgeFlex02 .box01 {
	width: 274px;
}
.pledgeFlex02 .box02 {
	width: 554px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	background-color: #ffffff;
	border-radius: 15px;
	box-sizing: border-box;
	padding: 20px;
	position: relative;
    font-size: 18px;
    font-weight: bold;
}
.pledgeFlex02 .box02::before {
	content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-right: 30px solid #ffffff;
  border-left: 0;
	position: absolute;
	left: -28px;
	top: 50%;
	transform: translateY(-50%);
}

.pledgeMovieWrap01 {
	position: relative;
	text-align: center;
}

.pledgeH301 {
	text-align: center;
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	color: #ffffff;
	margin-bottom: 15px;
}
.pledgeH301 .s01 {
	font-size: 16px;
	font-weight: 500;
}
.pledgeMovie01 {
	width: 600px;
	margin: auto;
}

.pledgeMovieBg01 {
	mix-blend-mode: hard-light;
	width: 930px;
	position: absolute;
	top: 0px;
	left: 50%;
	transform: translateX(-50%);
}
.pledgeBtnWrap01 {
	width: 500px;
	margin: 50px auto auto;
}
.pledgeBtnWrap01 li {}

/*-----------------------------*/

#anc01_02.contBlock01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_light_blue.jpg");
}
#anc01_02 .contBlockIn01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_light_blue02.jpg");
}
#anc01_02 .pledgeText01 {
	top: 266px;
	left: 116px;
}

/*-----------------------------*/

#anc01_03.contBlock01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_orange.jpg");
}
#anc01_03 .contBlockIn01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_orange_dark.jpg");
}
#anc01_03 .pledgeText01 {
	top: 216px;
    left: 109px;
}
#anc01_03 .pledgeBox01 {
	margin-top: -30px;
}

/*-----------------------------*/

#anc01_04.contBlock01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_purple.jpg");
}
#anc01_04 .contBlockIn01 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/bg_purple_dark.jpg");
}
#anc01_04 .pledgeText01 {
	top: 160px;
	left: 116px;
}
#anc01_04 .pledgeBox01 {
	margin-top: 0px;
}
#anc01_04 .pledgeFlex02 .box01 img {
	width: 212px;
	height: auto;
}

/*-----------------------------*/

.contBlock02 {
	background-color: #EFEDE2;
	padding: 70px 0px 120px;
	text-align: center;
}
.contDl01 {
	width: 100%;
	position: absolute;
	left: 0px;
	top: 450px;
}
.contDl01 dt {
	color: #ffffff;
	font-size: 24px;
	line-height: 1.6em;
	font-weight: bold;
	margin-bottom: 15px;
}
.contDl01 dt .s01 {
	font-size: 30px;
}

.contDl01 dd {
	color: #FFE970;
	font-size: 36px;
	line-height: 1.6em;
	font-weight: bold;
}

/*-----------------------*/

.contBlock03 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/cont_bg_wave02.png"), url("/attending/t/tyo-i/campaign_resort/images/pc/bg_blue01.jpg");
	background-repeat: repeat-x, repeat;
	background-position: center top, center top;
	background-size: auto 44px, auto auto;
	padding: 80px 0px 100px;
}
.contBlock03 .contIn1024 > div:not([class]) {
	position: relative;
}
.methodCloud01 {
	text-align: center;
}
.methodCloud01 img {
	mix-blend-mode: hard-light;
	width: 602px;
	height: auto;
}

.contH202 {
	text-align: center;
	margin: -30px auto 30px;
}
.contH202 img {
	width: 329px;
	height: auto;
}

.methodFlex01 {
	display: flex;
	justify-content: space-between;
}
.methodFlex01 .box01 {
	width: 480px;
}
.methodStep {
	color: #FFE970;
	font-size: 60px;
	line-height: 1.0em;
	font-weight: bold;
	font-style: italic;
	text-align: center;
}
.methodStep .s01 {
	font-size: 20px;
	margin-right: 5px;
}

.methodStepBox01 {
	width: 480px;
	background-color: #ffffff;
	border-radius: 25px;
	padding: 40px 50px;
	position: relative;
}
.methodTextBox01 {
	text-align: center;
	background-color: #FFE970;
	border-radius: 15px;
	padding: 5px 15px;
}
.methodText01 {
	font-size: 24px;
	line-height: 1.6em;
	font-weight: bold;
}

.methodFlex02 {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0px 9px;
	margin: 25px auto 15px;
}
.methodFlex02 .flex02Box01 {
}
.methodFlex02 .flex02Box01 img {
	width: 48px;
	height: auto;
}
.methodFlex02 .flex02Box02 {
	color: #06C755;
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	text-decoration: underline;
	text-align: center;
}
.methodText02 {
	font-size: 18px;
	line-height: 1.6em;
	font-weight: 500;
}
.methodTextBox02 {
	margin-top: 15px;
}
.methodText03 {
	font-size: 18px;
	line-height: 1.6em;
	font-weight: bold;
    text-decoration: underline;
}
.methodQr01 {
	text-align: center;
	margin-top: 20px;
}
.methodQr01 img {
	width: 168px;
	height: auto;
}
.methodText04 {
	font-size: 22px;
	line-height: 1.6em;
	font-weight: bold;
}
.methodTextBox03 {
	margin: 25px auto 30px;
}
.methodTextBox04 {
	color: #E2243F;
	font-size: 16px;
	line-height: 1.6em;
	font-weight: 500;
}
.methodTextBox04 .p01 {
	margin-bottom: 5px;
	font-weight: bold;
}
.methodBox01 {
	border: 2px solid #FFFFFF;
	border-radius: 30px;
	padding: 30px 30px 48px;
	color: #ffffff;
	text-align: center;
	margin-top: 70px;
}

.methodH301 {
	font-size: 26px;
	line-height: 1.6em;
	font-weight: bold;
	margin-bottom: 30px;
}
.methodText05 {
	font-size: 20px;
	line-height: 1.6em;
	font-weight: 500;
}
.methodAr01 {
	width: 92px;
	position: absolute;
	left: -92px;
	top: 50%;
	transform: translateY(-50%);
}

.contBlock04 {
	background-image: url("/attending/t/tyo-i/campaign_resort/images/pc/method_bg01.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 1200px auto;
	box-sizing: border-box;
	height: 970px;
	padding-top: 100px;
	text-align: center;
}
.block04Deco01 {}
.block04Deco01 img {
	width: 118px;
	height: auto;
}
.contText01 {
	color: #FFE970;
	font-size: 32px;
	line-height: 1.8em;
	font-weight: bold;
}

.rubi02 {
	white-space: nowrap;
	font-size: 14px;
	line-height: 1.0em;
	font-weight: bold;
	letter-spacing: -0.05em;
	position: absolute;
	top: -3px;
	left: 50%;
	transform: translateX(-50%);
}
.block04Bg01 {
	mix-blend-mode: screen;
	width: 575px;
	position: absolute;
	left: -200px;
	top: -170px;
}

.contBlock05 {
	padding-top: 140px;
}
.block05H301 {
	text-align: center;
	color: #ffffff;
	font-size: 22px;
	line-height: 1.8em;
	font-weight: bold;
	margin-bottom: 30px;
}
.block05Box01 {
	background-color: #ffffff;
	padding: 50px 60px;
}
.block05Dl01 {
	margin-top: 22px;
}
.block05Dl01:first-child {
	margin-top: 0px;
}
.block05Dl01 dt {
	font-size: 16px;
	line-height: 1.8em;
	font-weight: bold;
	margin-bottom: 8px;
}
.block05Dl01 dd {
	font-size: 16px;
	line-height: 1.7em;
}

.contLink01 {
	color: #2B7BCA;
	text-decoration: underline;
	font-weight: bold;
}

.HalfBlk {
    position: relative;
}
.HalfBlk:before {
    position: absolute;
    background: rgba(0, 0, 0, 0.7);
    display: block;
    content: "";
    top: -4%;
    left: -10%;
    width: 120%;
    height: 110%;
    z-index: 100;
}
.HalfBlk .announce {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    width: 100%;
    line-height: 1.5;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin: 0 auto;
    text-align: center;
    z-index: 110;
}


/* 選挙終了時対応 */

/* .finish-wrapper {
	position: relative;
}
.finish {
	display: grid;
    width: calc(100% + 80px);
    height: calc(100% + 80px);
    place-content: center;
    gap: 64px;
    color: #fff;
    font-size: 24px;
    font-weight: 500;
	text-align: center;
    background: rgb(0 0 0 / .7);
    position: absolute;
    top: -40px;
    left: -40px;
}
.ancFlex01 li:nth-child(3)::after {
	content: "";
	display: block;
	width: calc(100% + 30px);
	height: calc(100% + 30px);
	background: rgb(0 0 0 /.7);
	position: absolute;
	left: -15px;
	top: -15px;
}
.block05Dl01 dd s {
	text-decoration: line-through;
	text-decoration-thickness: 3px;
	text-decoration-color: #e2243f;
} */
/* 選挙終了時対応 */









