/* CSS for PC @date     2018 @author   sarahchan */
/* ------------------------------------------
0-top
------------------------------------------ */
.pc { display: none !important; }

img { max-width: 100%; }

#keyVisual { margin-bottom: 0; }

/****/
ul.megamenu li.clear-fix { border-bottom: none !important; }

.jdsMegaMenu, .navi { font-size: 78%; width: 100%; display: table; }

.jdsMegaMenu .clear-fix, .navi .clear-fix { border-right: none; }

.jdsMegaMenu li, .navi li { text-align: center; padding: 10px 0 !important; float: left; width: 33%; display: table; border-right: 1px solid #cecece; }

.asaMenu li:nth-child(2), .navi li:nth-child(2) { padding: 19px 0 !important; }

/*.jdsMegaMenu li:nth-child(3), .navi li:nth-child(3) { background: #f2f2f2; color: #b6b6b6; border-right: none; padding: 19px 0 !important; }*/


.jdsMegaMenu li a, .navi li a { display: table-cell; vertical-align: middle; }

.jdsMegaMenu .on, .navi .on { background: #e71f18; color: #fff !important;}

.jdsMegaMenu .on a, .navi .on a { color: #fff !important; }

.jdsMegaMenu li:nth-child(3), .navi li:nth-child(3) { border-right: none !important;}

/*****/


.asaMenu, .navi { font-size: 78%; width: 100%; display: table; }

.asaMenu .clear-fix, .navi .clear-fix { border-right: none; }

.asaMenu li, .navi li { text-align: center; padding: 10px 0 !important; float: left; width: 33%; display: table; border-right: 1px solid #cecece; }

.asaMenu li:nth-child(2), .navi li:nth-child(2) { padding: 19px 0 !important; }

.asaMenu li:nth-child(3), .navi li:nth-child(3) { background: none; border-right: none; padding: 19px 0 !important; }
.secondstage .asaMenu li:nth-child(3),.secondstage .navi li:nth-child(3),.finalstage .asaMenu li:nth-child(3) {background: none;}
.asaMenu li a, .navi li a { display: table-cell; vertical-align: middle; }

.asaMenu .on, .navi .on { background: #e71f18 !important; color: #fff !important;}

.asaMenu .on a, .navi .on a { color: #fff !important; }

/*#contentsArea ul.megamenu div.mm-item-content { width: 90%; left: 5% !important; top: 44px !important; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base { position: relative; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base:before { display: block; position: absolute; width: 15px; height: 15px; background: #e71f10; transform: rotate(-45deg); top: 3px; content: ""; right: 49%; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base ul { background: #e71f10; overflow: hidden; padding: 20px; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base ul li { float: left !important; width: auto; font-size: 12px; padding: 0 !important; border-right: none !important; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base ul li:nth-child(3) { padding: 0 !important; background: none !important; }

#contentsArea ul.megamenu div.mm-item-content .mm-content-base ul li a { display: block; border-bottom: none; border-right: 1px solid #fff; color: #fff !important; padding: 5px; margin-bottom: 5px !important; }
*/

#maintext { padding: 40px 4%; position: relative; overflow: hidden; }

#maintext .w950 { text-align: center; }

#maintext .w950 p { padding: 20px 0; position: relative; font-size: 14px; line-height: 1.6; text-shadow: -1px 1px 0px #fff, 0px -1px 0px #fff, -4px 2px 0px #fff; }

#maintext .w950 img { z-index: 999; position: relative; }

#maintext .w950 a.votebtn { display: block; padding: 50px 0 20px; }

#maintext .w950 .jdsCoponSwitch1 { cursor: pointer; width: 70%; margin: 10px auto; }

#maintext .w950 .jdsCoponSwitch1:hover { opacity: 0.8; }

#maintext .w950 .win { padding: 2%; font-size: 14px; }

#maintext .w950 .win p { padding-bottom: 20px; font-size: 78%; }

#maintext .w950 .win table { width: 100%; text-align: left; line-height: 150%; margin-bottom: 40px; font-size: 78%; }

#maintext .w950 .win table:last-child { margin-bottom: 0; }

#maintext .w950 .win table tr td:nth-child(1) { width: 13%; vertical-align: top;}

#maintext .w950 .win table tr td:nth-child(2) { width: 13%; vertical-align: top;}

#maintext .w950 .win table tr td:nth-child(3) { width: 74%; vertical-align: top;}

#maintext .food1 { position: absolute; top: 170px; right: -5%; width: 30%; }

#maintext .food2 { position: absolute; top: 110px; left: 0; width: 20%; }

#maintext .food3 { position: absolute; top: 270px; left: -10%; width: 30%; }

#steps { position: relative; }

#steps .linewrap { padding: 2% 5% 2% 2%; border-left: 1px solid #000; margin-left: 8%; }

#steps .linewrap ul.stepdtl li { font-size: 14px; line-height: 200%; margin-bottom: 20px; }

#steps .linewrap ul.stepdtl li:last-child { margin-right: 0; }

#steps .linewrap ul.stepdtl li img { display: block; padding-bottom: 20px; }

#steps .linewrap ul.stepdtl li img:first-child { margin-left: -7%; width: 10%; }

#steps .linewrap ul.stepdtl li img:nth-child(2) { width: 70%; }

#steps .linewrap ul.stepdtl li .stepimg { margin: 0 auto; }

#steps .linewrap ul.stepdtl li span { padding-bottom: 20px; display: block; }

#steps .linewrap ul.stepdtl li a { display: block; color: red; font-weight: bold; text-decoration: underline; }

.recruit { padding: 40px 20px; background: #fff5e0; }

.recruit dl dt { margin-bottom: 20px; }

.recruit dl dd h2 { margin-bottom: 20px; text-align: center; }

.recruit dl dd p { line-height: 1.6; font-size: 14px; }

#sponsors { padding: 30px 20px; }

#sponsors h2 { text-align: center; }

#sponsors ul { overflow: hidden; padding-top: 20px; }

#sponsors ul li { float: left; width: 27%; margin: 3%; }

#sponsors ul li a { display: block; border-bottom: 1px solid #aaaaaa; }

#widewrapperW { clear: both; position: relative; }

.jdsShowFix1 { position: fixed; bottom: 0; right: 0; width: 50px; z-index: 9999999; }

.info { background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/bg2.jpg) top center no-repeat; padding-top: 20%; display: flex; justify-content: center; flex-wrap: wrap; padding-bottom: 40px; background-size: 150%; }

.info div { margin: 10px 10px; }

.info p { font-size: 78%; width: 100%; text-align: center; margin-top: 40px; line-height: 1.4; }

.info p a { display: inline-block; margin-bottom: 30px; }

.hints { font-size: 78%; padding: 30px 0; width: 90%; margin: 0 auto; line-height: 150%; }
.hints_note { font-size: 78%; padding: 30px 0; width: 90%; margin: 0 auto; line-height: 150%; }


/* ------------------------------------------
0-1st
------------------------------------------ */
#keyVisual.sub { background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/subkvSP.jpg) no-repeat top center; background-size: cover; position: relative; padding: 20px 14%; }

#keyVisual.sub .festalogo { position: absolute; top: 2%; left: 2%; width: 20%; }

#keyVisual.sub span { font-size: 68%; margin: 0 auto; display: block; color: #985050; padding-top: 10px; line-height: 1.7; }

#keyVisual.sub h1 { font-size: 168%; color: #e71f10; text-align: center; }

#keyVisual.sub h1 span { display: block; font-size: 68%; padding-top: 0; color: #e71f10; }

.votetime { padding: 20px; line-height: 1.8; font-size: 78%; }

.votetime h2 { font-size: 250%; text-align: center; margin-bottom: 20px; }

.votetime h2 span { font-size: 70%; }

.votetime p { font-size: 128%; }

/* ------------------------------------------
1-1st
------------------------------------------ */
.votearea { padding: 3% 3% 10%; line-height: 1.8; font-size: 100%; }

.votearea .thisWarrp ul { display: flex; justify-content: flex-start; flex-wrap: wrap; }

.votearea .thisWarrp ul li { width: calc(50% - 1px); margin: 0 2px 2px 0; }

.votearea .thisWarrp ul li:nth-child(even) { margin-right: 0; }

.votearea .thisWarrp ul li a { display: block;  padding: 7px 20px 7px 10px; position: relative; }

.votearea .thisWarrp ul li a:after { position: absolute; content: ''; width: 10px; height: 10px; border-top: 2px solid #e71f10; border-right: 2px solid #e71f10; transform: rotate(45deg); top: 12px; right: 10px; }

.votearea .note { font-size: 14px; margin: 15px 0; }

.hasbg { background: #fff5e0; }

#votesteps { padding: 10% 3% 0; }

#votesteps h2 { text-align: center; font-weight: bold; font-size: 128%; position: relative; }

#votesteps h2:before,.eventrecurit>h3:before { position: absolute; content: ""; display: block; width: 30%; border-bottom: 1px solid #000; left: 0; top: 40%; }

#votesteps h2:after,.eventrecurit>h3:after { position: absolute; content: ""; display: block; width: 30%; border-bottom: 1px solid #000; right: 0; top: 40%; }

#votesteps ul { padding: 10% 0 0; }

#votesteps ul li { text-align: center; position: relative; padding-bottom: 20%; }

#votesteps ul li:after { display: block; position: absolute; content: ""; width: 10px; height: 10px; border-bottom: 1px solid #333; border-left: 1px solid #333; right: 50%; bottom: 24px; transform: rotate(-45deg); }

#votesteps ul li:nth-child(3):after { border: none; }

/*modal*/
.asabox h2 { text-align: center; font-size: 168%; padding: 30px 0; }

.modal-main { display: none; width: 60%; height: auto; margin: 0; background-color: #ffffff; color: #666666; position: fixed; z-index: 2; }

#modal-bg { display: none; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); position: fixed; top: 0; left: 0; z-index: 9998; }

#contentsArea .asafes { margin: 0 auto; }

#contentsArea .asafes > a { display: block; }

#contentsArea .asafes .bfBox,#contentsArea .bfBox01 { padding: 10px; position: relative; background: #fff; }

#contentsArea .asafes .bfBox h2,#contentsArea .bfBox01 h2 { text-align: center; padding: 10px 0 15px; font-size: 16px; border-bottom: 2px solid #e71f10; position: relative; }

#contentsArea .asafes .bfBox h2:before,#contentsArea .bfBox01 h2:before { position: absolute; content: ''; width: 10px; height: 10px; bottom: -6px; left: 0; border-radius: 5px; background: #e71f10; }

#contentsArea .asafes .bfBox h2:after,#contentsArea .bfBox01 h2:after { position: absolute; content: ''; width: 10px; height: 10px; bottom: -6px; right: 0; border-radius: 5px; background: #e71f10; }

#contentsArea .asafes .bfBox h2 span,#contentsArea .bfBox01 h2 span { padding: 5px 15px; font-size: 13px; color: #fff; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/icon_ribon2l.gif) left center no-repeat, url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/icon_ribon2r.gif) right center no-repeat; background-color: #e71f10; margin-right: 10px; background-size: contain; }

#contentsArea .asafes .bfBox h2 a,#contentsArea .bfBox01 h2 a { color: #e71f10; }

#contentsArea .asafes .bfBox .LR,#contentsArea .bfBox01 .LR { overflow: hidden; padding: 15px 0 0; }

#contentsArea .asafes .bfBox .LR .L,#contentsArea .bfBox01 .LR .L { width: 90%; margin: 0 auto 10px; }

#contentsArea .asafes .bfBox .LR .L img,#contentsArea .bfBox01 .LR .L img { width: 100%; }

#contentsArea .asafes .bfBox .LR .R,#contentsArea .bfBox01 .LR .R { margin: 0 0 10px; }

#contentsArea .asafes .bfBox .LR .R h3,#contentsArea .bfBox01 .LR .R h3 { font-size: 14px; text-align: center; padding: 10px 0 0; }

#contentsArea .asafes .bfBox .LR .R h3 a,#contentsArea .bfBox01 .LR .R h3 a { color: #666; font-size: 14px; }

#contentsArea .asafes .bfBox .LR .R p,#contentsArea .bfBox01 .LR .R p { padding: 10px 15px; font-size: 12px; line-height: 1.4; color: #333; background: #f6f0e7 url(//img.travel.rakuten.co.jp/special/asafesta/2019/images/paper.gif) no-repeat right bottom; }

#contentsArea .asafes .bfBox .LR .R ol,#contentsArea .bfBox01 .LR .R ol { border-radius: 10px; padding: 10px; list-style: none; text-align: center; margin: 5px 0; }

#contentsArea .asafes .bfBox .LR .R ol li,#contentsArea .bfBox01 .LR .R ol li { float: none; margin-top: 10px 0 0 0; text-align: center; }

#contentsArea .asafes .bfBox .LR .R ol li img,#contentsArea .bfBox01 .LR .R ol li img { display: none; }

#contentsArea .asafes .bfBox .LR .R ol li a,#contentsArea .bfBox01 .LR .R ol li a { display: block; border-radius: 4px; font-size: 20px; text-align: center; padding: 7px; font-weight: 700; }

#contentsArea .asafes .bfBox .LR .R ol li a.vote ,#contentsArea .bfBox01 .LR .R ol li a.vote { display: none; width: 100%; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/list-arrow.png) no-repeat 90% 50% #ffcc66; text-align: center; color: #e71f10 !important; font-weight: bold; border-radius: 3px; padding: 10px 0; font-size: 15px; margin: 5px 0; }

#contentsArea .asafes .bfBox .LR .R ol li a.i,#contentsArea .bfBox01 .LR .R ol li a.i { border: 2px solid #f39517; background: #fff; color: #f39517 !important; }

.asafesList { overflow: hidden; }

.asa_modal_main,.asa_modal_main01 { display: none; width: 96%; height: auto; margin: 10px 0 0; background-color: #ffffff; color: #666666; position: fixed; z-index: 99999 !important; }

#contentsArea .asafesItem { float: left; width: 47%; margin: 0 0 10px 2%; }

#contentsArea .asafesItem .parameter { display: none; }

#contentsArea .asafesItem h3 img { display: block; margin-bottom: 10px; }

#contentsArea .asafesItem .wrap h4 { display: none; }

#contentsArea .asafesItem .wrap h4 a { display: none; }

#contentsArea .asafesItem .wrap > a img { width: 100%; display: block; }

#contentsArea .asafesItem .wrap p {font-size: 78%;}

#contentsArea .asafesItem .wrap ol { padding: 0; }

#contentsArea .asafesItem .wrap ol li { float: none; width: auto; margin-right: 0px; margin-bottom: 0px; text-align: center; }

#contentsArea .asafesItem .wrap ol li img { vertical-align: middle; }

#contentsArea .asafesItem .wrap ol li a { display: block; border-radius: 4px; font-size: 15px; text-align: center; padding: 7px; font-weight: 700; }

#contentsArea .asafesItem .wrap ol li a.vote { display: none; }

.asafesItem.last { margin-right: 0; }

.sidebar { padding: 5%; }

.sidebar h2 { color: #fff; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/searchicon.png) no-repeat 11% 50% #e71f10; padding: 10% 10% 10% 20%; text-align: center; font-size: 158%; }

.sidebar ul { border: 1px solid #e71f10; width: calc(90% - 2px); padding: 5%; overflow: hidden; }

.sidebar ul li { float: left; font-size: 88%; }

.sidebar ul li a { display: block; padding: 5px; }

.voteOVER { padding: 40px 20px 60px; }

.voteOVER h2 { font-size: 250%; text-align: center; line-height: 140%; }

.voteOVER h2 span { display: block; font-size: 18px; font-weight: normal; line-height: 140%; padding: 20px 0 0; }

.voteOVER a { text-align: center; display: block; }

.voteOVER p { text-align: center; font-size: 88%; padding-top: 40px; }

.voteOVER p a { display: inline; color: #e71f10 !important; text-decoration: underline !important; font-weight: bold; }


/***0601****/
div.votearea li.blue a { background-color: #9A9BD3;}
div.votearea li.sea a { background-color: #4FC6CC;}
div.votearea li.green a { background-color: #4DD354;}
div.votearea li.lev a, div.votearea li.lev2 a { background-color: #C8F53C;}
div.votearea li.org a, div.votearea li.org2 a { background-color: #F1E542;}
div.votearea li.pink a { background-color: #F5AFCE;}
div.votearea li.pur a { background-color: #E997F8;}
div.votearea li.red a, div.votearea li.red2 a { background-color: #FF9093;}

.fbLink img, .instaLink img, .viberLink img, .lineLink img {width: 40px; height: 40px;}

span#closemodal,span#closemodal01{position: absolute; top: -4%; right: -5px; display: block; background: #000; color: #fff; padding: 10px 15px;border-radius: 50px;}


.close_info{background-color: #e71f10; color: #FFFFFF; padding: 20px; margin-bottom: 10px;font-size: 14px; line-height: 1.6;}
.close_info strong{font-size: 140%; display: block;}
.close_title {text-align: center; margin: -20px 0 30px; line-height: 1.6;}
#topinfo{margin: 30px 0 40px;}
#topinfo a {background-color: #e71f10; padding: 30px 0; color: #FFFFFF !important; font-size: 110%; display: block; margin: 0 auto 20px;}
#topinfo span { color: #e71f10;}
.jdsSlides { position: relative;}
.jdsSlides li {position: absolute; top:0;}


/* ------------------------------------------
2nd_stage
------------------------------------------ */
.jdsTabNav{border-bottom: 2px solid #e71f18; padding: 0 5%;display: flex;}
.jdsTabNav li{align-items: center;display: flex; width: 45.5%;justify-content: center; color: #e71f18;margin-bottom: -2px; padding:2%;text-align: center;font-weight: bold;font-size: 128%;}
.jdsTabNav li.here{border-style: solid; border-color: #e71f18;border-width: 2px 2px 0 2px;background: #Fff;}



.jdsTabNavDown{border-top: 2px solid #e71f18; padding: 0 5%;display: flex;}
.jdsTabNavDown li{align-items: center;display: flex; width: 45.5%;justify-content: center; color: #e71f18;margin-top: -2px; padding:2%;text-align: center;font-weight: bold;font-size: 128%;border-style: solid; border-color: #e71f18;border-width: 2px 2px 2px 2px;background: #Fff;}
.jdsTabNavDown li:nth-child(1).here{border-style: solid; border-color: #e71f18;border-width: 0 0 2px 2px;background: #Fff;}
.jdsTabNavDown li:nth-child(2).here{border-style: solid; border-color: #e71f18;border-width: 0 2px 2px 0;background: #Fff;}

.jdsTab{margin: 10px 0 20px;}

.asabox.best8 {
	padding: 20px;
}

.asabox.best8 .subttl,.best3>h2 {
	text-align: center;margin: 20px auto 40px;border-bottom: 3px solid #ffcc66; width: 70%;font-weight: bold;font-size: 108%;
}
.best3>h2{padding-top: 20px;padding-bottom: 10px;}

#contentsArea .asabox.best8 .asafesItem{width: 100%;padding-top: 30px;}
#contentsArea .asabox.best8 .asafesItem .wrap{padding-bottom: 10px;}
#contentsArea .asabox.best8 .asafesItem .wrap h4{display: block;background: none;margin-bottom: 10px;text-align: center;padding-left: 0;}
#contentsArea .asabox.best8 .asafesItem .wrap h4 a{display: block;font-weight: bold;font-size:20px ;}
#contentsArea .asabox.best8 .asafesItem .wrap p b{display: block;font-size:120%; padding: 5px 0;}
#contentsArea .asabox.best8 .asafesItem .wrap p{font-size: 98%;}
#contentsArea .asabox.best8 .asafesItem .wrap > a img{border-top: 4px solid #e71f10;}
.best3 .selectarea {
	background:#e2e2e2; margin: 5% 5% 50px; padding: 20px 10px;
}
.best3 .selectarea select{width: 100%; padding: 5px; background: #fff; border-radius: 5px;}


.best3list{margin: 20px;}
.best3list>li{width: 100%; margin:0 1% 20px;}
.best3list li h3{text-align: center;font-size: 20px; border-bottom: 2px solid #000;}
.best3list li .ranking { padding: 10px 0;}
.best3list li .ranking li{margin-left: 20px;/*border-left: 1px solid #999;*/padding-left: 10px; margin-bottom: 20px;position: relative;line-height: 150%;}
.best3list li .ranking li p a{display: block; font-size: 14px;}
.best3list li .ranking li p a.popup {
	font-weight: bold;color: #e71f10 !important;
}
.best3list li .ranking li:nth-child(1) img{width: 100%;}
.best3list li .ranking li:nth-child(1):before{content: "1"; display: block;position: absolute;top: 0; left: -18px;font-style: italic;font-weight: bold;}
.best3list li .ranking li:nth-child(2):before{content: "2"; display: block;position: absolute;top: 0; left: -18px;font-style: italic;font-weight: bold;}
.best3list li .ranking li:nth-child(3):before{content: "3"; display: block;position: absolute;top: 0; left: -18px;font-style: italic;font-weight: bold;}

.viewbf {
	margin: 5%; 
}
.viewbf h2 {
	text-align: center; font-size: 168%; padding: 20px 0;
}
.viewbf h2 span{display: block;font-size: 78%;}

.viewbf .selectarea {
	background:#e2e2e2;  padding: 20px 10px;
}

.viewbf .selectarea select{width: 100%; padding: 5px; background: #fff; border-radius: 5px;}

.finalstage .voteOVER p {
	line-height: 150%;padding-bottom: 20px;
}

 .obo_form { background: #fff; padding: 40px 0 60px; }

.obo_form h2 { font-size: 18px; text-align: center; margin-bottom: 40px; line-height: 1.4; padding: 0 10px;}

 .obo_form h2.ouboH2 { position: relative;}

 .obo_form h2.ouboH2:before,.eventrecurit>h3:before { position: absolute; content: ""; display: block; width: 30%; border-bottom: 1px solid #000; left: 0; top: 40%; }

 .obo_form h2.ouboH2:after,.eventrecurit>h3:after { position: absolute; content: ""; display: block; width: 30%; border-bottom: 1px solid #000; right: 0; top: 40%; }

 .obo_form h3 { padding: 0 10px; font-size: 16px; margin: 0 auto 15px; font-weight: normal; }

 .obo_form h3 span { background: #000; width: 24px; height: 24px; border-radius: 50%; line-height: 24px; text-align: center; font-size: 14px; display: inline-block; color: #fff; margin-right: 5px; }

 .obo_form h3 em { font-style: normal; font-size: 12px; padding-left: 30px; font-weight: normal; }

 .obo_form table { margin: 0 3% 10%; font-size: 14px; width: 94%;}

 .obo_form table td { width: 50%; padding: 10px; box-sizing: border-box; }

 .obo_form table td select { width: 100%; }

 .obo_form table td input.w100 { width: 98%; }

 .obo_form table td span { font-size: 90%; color: #ea381c; }

 .obo_form table.kakunin { text-align: center; }

 .obo_form input.submit_btn { width: 80%; height: 50px; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/send.jpg) center center no-repeat;background-size: cover;text-align: center; display: block; margin: 0 auto; font-size:0; border: none; }

 .obo_form input.submit_btn:hover { opacity: 0.8; cursor: pointer; }

 .obo_form .kakunin_box { background: #fff8ec; padding: 40px 0 20px; margin: 70px 10px 20px; }

 .obo_form .kakunin_box h2 { width: 100%; padding: 0; }

 .obo_form .kakunin_box dl { margin: 0 10px; line-height: 1.6; font-size: 14px; }

 .obo_form .kakunin_box dl dt { font-weight: bold; }

 .obo_form .kakunin_box dl dd { margin-bottom: 15px; }

 .obo_form .kakunin_box dl dd a { text-decoration: underline; }
.deadline{text-align: center;font-size: 88%;padding-top: 10px;}


.eventrecurit h2{font-size: 188%;text-align: center;padding: 20px 0;}
.eventrecurit h2 span{display: block;font-size: 58%;}

.eventrecurit .sub{text-align: center;font-size: 88%;}

.eventrecurit h3{font-size: 128%;text-align: center;margin: 40px 0 0;position: relative;}
.recuritdtl{padding: 10px 10px 0 10px;}
.recuritdtl>li:last-child{height: 450px;}
.recuritdtl li>ul {padding: 3%;font-size: 88%;line-height: 150%;}
.recuritdtl li>ul li b{display: block;}
.recuritdtl li>ul li{padding: 20px 0 ; border-bottom: 1px solid #ccc;}

.asaslider{padding: 40px 10px;}
.asaslider h2{font-size: 128%;text-align: center;font-weight: normal; padding: 10px 0 20px}

.swiper-slide a{display: block;font-size: 68%;}
.swiper-slide a img{width: 100%; display: block;margin-bottom: 10px;}
.swiper-slide a b{display: block; color: #e71f10;font-size: 88%;}
.swiper-button-prev{background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/prev.png) !important; width: 42px !important; height: 42px !important; background-size: 42px 42px !important;}
.swiper-button-next{background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/next.png) !important;width: 42px !important; height: 42px !important;background-size: 42px 42px !important;}

#keyVisual.sub.application{padding: 20px 20%;}

.swiper-wrapper {
        transition-timing-function: linear !important;
        -o-transition-timing-function: linear !important;
        -webkit-transition-timing-function: linear !important;
    }


/***0828****/
.eventInfo { text-align: left; margin: 20px 20px 0;line-height: 150%;}
.eventInfo span {font-size: 12px; display: block; margin: 5px 0 0;line-height: 140%; }

/***0906****/
/*.video { padding: 10px 0;  position: relative;width: 100%;padding-top: 56.25%;}
.video iframe {position: absolute;top: 0;right: 0;width: 100% !important;height: 100% !important;}*/

.video video-js {
	position: relative;
    padding-bottom: 56.25%;
    overflow: hidden;
	width: 100%;
    height: 0;
}

.video { padding: 20px 0 20px;}
.video p {padding: 0; font-weight: bold;}

/*rsvp*/
.tosen{padding: 30px 0;}
.tosen > p{text-align: center; font-size:14px ;line-height: 150%;margin-bottom: 50px;}
.tosen > div{border: 1px solid #000;margin: 0 10px 30px;}
.tosen form{padding-top: 10px;}
.tosen form table{width: 100%;}
.tosen form table tr:nth-child(1) td{font-size: 26px;font-weight: bold;text-align: center;height: 80px; line-height: 80px;}
.tosen form .btn{width: 85%; background: #E71F10 url(https://img.travel.rakuten.co.jp/special/asafesta/2018/images/arrow.png) 94% center no-repeat;margin: 20px auto -20px; color: #fff; display: block; font-size: 24px;text-align: center;line-height: 1.3;border-radius: 5px;padding: 15px 0; font-weight: bold;border: none;}
.tosen p:last-child{font-size: 14px;color: #333;text-align: center;margin: 30px 0; line-height: 1.6;}
.tosen h3{text-align: center;font-weight: normal;font-size: 14px;}

/*決勝　結果発表*/
#keyVisual.finalkv{overflow: hidden; padding-top: 80%;height: 0;}

#keyVisual.finalkv ul li{font-size: 0; width: 100%;background-size: cover !important;padding-top: 80%;}
#keyVisual.finalkv ul li.finalkv1{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/dami01.jpg) no-repeat center center; }
#keyVisual.finalkv ul li.finalkv2{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/dami02.jpg) no-repeat center center; }
#keyVisual.finalkv ul li.finalkv3{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/dami03.jpg) no-repeat center center; }
#keyVisual.finalkv ul li.finalkv4{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/dami04.jpg) no-repeat center center; }

#keyVisual.finalkv p.festalogo{position: absolute;width: 65%;top: 9%; z-index: 10; right: 17%;}
#keyVisual.finalkv h1{z-index: 1; position: absolute; top: 0;}
.winner{padding: 2%;}
.winner>h2{text-align: center;padding: 20px 0; font-size: 188%;}

.firstplace{position: relative; border: 1px solid #e71f10;margin-top: 70px;padding: 67px 20px 20px 20px;margin-bottom: 30px;}
.firstplace .medal{position: absolute; top: -60px; right: 36%; width: 30%}
.firstplace.double {margin-bottom: 30px;}
.firstplace.double .medal{position: absolute; top: -70px; right: 21%; width: 61%}
.firstplace.double .medal img{width: 49.5%;}
.firstplace.double .medal img:first-child{margin-right: 1%;}
.firstplace h2{font-size: 120%;padding-bottom: 20px;}
.firstplace h2 span{font-weight: normal;font-size: 98%; background: #ffcc66; padding:3px 5px;}
.firstplace .htlnm{font-size: 98%;padding-bottom: 20px;}
.firstplace .winnerphoto .rslides_nav{font-size: 0; position: absolute;z-index: 99; }
.firstplace .photowrap{overflow: hidden;}
.firstplace .winnerphoto{position: relative;width: 100%;float: left;}
.firstplace .FP{ width: 100%;float: left;margin-bottom: 5px;}
.firstplace .winnerphoto .rslides_nav.prev{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/prevB.png) no-repeat;width: 36px; height: 34px; left: 0; top: 40%;}
.firstplace .winnerphoto .rslides_nav.next{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/nextB.png) no-repeat;width: 36px; height: 34px; right: 0; top: 40%;}
.firstplace .pr{padding: 20px 0;font-size: 14px;line-height: 150%;}
.firstplace a.winnerbtn{display: block; width:70%; margin: 20px auto; background:#e71f10; position: relative;text-align: center;padding: 7% 10%;}
.firstplace a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 8%; top: 37%; color: #fff;transform: rotate(-90deg);font-size: 12px;}


.cl2{overflow: hidden;}
.cl2 .hotelswrap{position: relative; border: 1px solid #e71f10;margin-top: 19%;padding:82px 20px 20px 20px;margin-bottom: 25%;}
.cl2 .hotelswrap:last-child{margin-bottom: 20px;}
.cl2 .hotelswrap .medal{position: absolute; top: -60px; right: 36%; width: 30%}
.cl2 .hotelswrap.double .medal{width: 62%;right: 19%;}
.cl2 .hotelswrap.double .medal img:nth-child(1){padding-right: 2%;}
.cl2 .hotelswrap.double .medal img{width: 49%;}
.cl2 .hotelswrap h2{font-size: 110%;}
.cl2 .hotelswrap .htlnm{font-size:94% ; padding: 15px 0;}
.cl2 .hotelswrap .jdsSlides img{width: 100%;}
.cl2 .hotelswrap .winnerphoto .rslides_nav{font-size: 0; position: absolute;z-index: 99; }
.cl2 .hotelswrap .winnerphoto{position: relative;width: 100%;float: left;}
.cl2 .hotelswrap .rslides_nav.prev{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/prevB.png) no-repeat;width: 36px; height: 34px; left: 0; top: 40%;}
.cl2 .hotelswrap .rslides_nav.next{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/nextB.png) no-repeat;width: 36px; height: 34px; right: 0; top: 40%;}
.cl2 .hotelswrap p.pr{font-size:78%; padding: 10px 0;clear: both;}
.cl2 .hotelswrap a.winnerbtn{display: block; width:70%; margin: 20px auto; background:#e71f10; position: relative;text-align: center;padding: 7% 10%;}
.cl2 .hotelswrap a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 8%; top: 37%; color: #fff;transform: rotate(-90deg);font-size: 12px;}



.cl3{overflow: hidden;}
.cl3 .hotelswrap{position: relative; padding: 20px;margin-bottom: 20px;}

.cl3 .hotelswrap h2{font-size: 110%;}
.cl3 .hotelswrap .htlnm{font-size:94% ; padding: 15px 0;}
.cl3 .hotelswrap .jdsSlides img{width: 100%;}
.cl3 .hotelswrap .winnerphoto .rslides_nav{font-size: 0; position: absolute;z-index: 99; }
.cl3 .hotelswrap .winnerphoto{position: relative;width: 100%;float: left;}
.cl3 .hotelswrap .rslides_nav.prev{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/prevB.png) no-repeat;width: 36px; height: 34px; left: 0; top: 40%;}
.cl3 .hotelswrap .rslides_nav.next{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/nextB.png) no-repeat;width: 36px; height: 34px; right: 0; top: 40%;}
.cl3 .hotelswrap p.pr{font-size:78%; padding: 10px 0;clear: both;}
.cl3 .hotelswrap a.winnerbtn{display: block; width:70%; margin: 20px auto; background:#e71f10; position: relative;text-align: center;padding: 7% 10%;}
.cl3 .hotelswrap a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 8%; top: 37%; color: #fff;transform: rotate(-90deg);font-size: 12px;}


.rundown{font-size: 14px;line-height: 150%;padding: 20px 0;}


.jdsBaguetteBox{overflow: hidden;padding: 20px 0;}
.jdsBaguetteBox a{display: block; float: left; width: 49%; margin-right: 2%;margin-bottom: 2%;}
.jdsBaguetteBox a:nth-child(2n){margin-right: 0;}
.jdsBaguetteBox a img{width: 100%;display: block;}

.winnerpage .eventInfo{text-align: center;font-size: 14px;}
.winnerpage .eventInfo span{border-bottom:4px solid #ffcc66;width: max-content; display: block; margin: 10px auto;}
.winnerpage .aboutevent{color: #E71F10;font-size: 88%; padding:5%;text-align: left;}
.winnerpage .aboutevent span{font-size: 78%;}
.winnerpage .schedule{margin-top: 40px;}
.winnerpage .schedule:before,.winnerpage .schedule:after{width: 10%;}
.winnerpage .timeschedule{margin: 2%;width: 96%;}
.winnerpage .timehint{font-size: 78%;padding: 2%;}

.winnerpage .judge{padding: 2%;}
.winnerpage .judge li dl dt{background:#ffcc66;font-size: 16px;text-align: center;padding: 10px 0;margin: 20px 0;}
.winnerpage .judge li dl dd ul{overflow: hidden;}
.winnerpage .judge li dl dd ul li{float: left; width: 58%;margin-bottom: 10px;}
.winnerpage .judge li dl dd ul li:first-child{margin-right: 2%; width: 40%;}
.winnerpage .judge li dl dd ul li:last-child{padding-top: 5px;}
.winnerpage .judge>li:first-child dl dd ul li{font-size: 13px;}
.winnerpage .judge>li dl dd ul li span{display: block; color: #444;font-size: 12px;margin-bottom: 10px;}
.winnerpage .judge>li dl dd ul li span b{color: #000; font-size: 16px;margin-right: 4px;}
.winnerpage .judge>li:last-child dl dd>ul li{float: left;font-size: 12px;line-height: 130%;}
.winnerpage .judge>li:last-child dl:last-child dt{background: none;text-align: left;font-size: 14px;margin-bottom: 0;margin-top: 0;}
.winnerpage .judge>li:last-child dl:last-child{border: 2px dashed #ffcc66; padding:5px 15px 15px 15px;}
.winnerpage .judge>li:last-child dl:last-child dd ul li{float: left;font-size: 14px;width: 50%;font-weight: bold;margin-right: 0;margin-bottom:0 ;}
.winnerpage .judge>li:last-child dl:last-child dd{font-size: 12px;}
.winnerpage .obo_form h3 em{display: block;text-align: left;}
.winnerpage .obo_form table{width: 80%; margin: 0 auto;}
.winnerpage .obo_form table.attendance{font-weight: bold;font-size: 26px;}
.winnerpage .obo_form .deadline{font-size: 14px;}
.winnerpage .obo_form p.welcome{font-size:18px ;text-align: center; padding: 20px 0;}
.winnerpage .obo_form .eventrecurit>h3{font-weight: bold;font-size: 128%;text-align: center;}
.winnerpage .obo_form .eventrecurit>h3:before,.winnerpage .obo_form .eventrecurit>h3:after{width: 20%;}
.winnerpage .obo_form .eventrecurit form h3{text-align: left;overflow: hidden;}
.winnerpage .obo_form table td select{padding: 10px 0;font-size: 128%;margin: 20px 0;}

/**** 1002 Close ****/
.closeBox {position: relative;}
.closeBox img {position: absolute;top:80px; right:0;}
.closeInfo {border: solid 1px #e71f10; margin: 30px auto 0; padding: 20px;}
.closeInfo strong {display:block; font-weight: bold; font-size: 24px; line-height:160%;  padding-bottom: 20px; color: #e71f10; text-align: center;}
.closeInfo p {padding-bottom: 20px;font-size: 15px;}
.closeInfospan {font-size: 14px;}
.delete {text-decoration: line-through;}

p.tr{text-align: right;font-size: 12px;padding:0 4% 2%;}
.winnerpage b.tlt{font-style: normal;display:inline-block;float: left;width: 90%;}
.winnerpage .obo_form h3 span{float: left;}
.winnerpage .eventmap{padding: 5% 2% 2% 2%;}
.winnerpage .eventmap img{width: 100%;}
.winnerpage .obo_form .kakunin_box{margin-top: 0;}

.fadeInUp{display: block !important;animation-play-state:unset;}
.baguetteBox-button#next-button, .baguetteBox-button#previous-button{display: block !important;}

/**thank.html page**/
.w950 .title{
	padding: 0;
	margin-top: 2rem;
  font-size: 120%;
}
.w950 .small-text{
	text-align: center;
	font-size: 1.6rem;
	line-height: 2.4rem;
	color: #444444;
	margin: 2.4rem 0;
}
.w950 .common-btn{
	display: block;
	width: 100%;
	margin: 0 auto;
	border: 0;
	outline: none;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/backtoasatop.jpg);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-color: #ffffff;
}
.w950 .common-btn a{
	display: block;
	width: 100%;
	padding-top: 17.44%;
}
.w950 .food-list{
	margin-top: 3rem;
}
.w950 .food-list.question{
	margin-top: 2rem;
}
.w950 .food-list img{
	width: 100%;
}
/* questionaire page */
.w950 .details{
	width: 100%;
	margin: 0 auto;
	margin-top: .6rem;
}
.w950 .details p{
	text-align: center;
	font-size: 1.2rem;
	line-height: 2rem;
	padding: 1rem 0;
}
.w950 .common-btn.transparent{
	display: block;
	width: 100%;
	height: 4rem;
	margin: 1rem auto;
	border: 1px dashed #444444;
	background: none;
	text-align:  center;
	line-height: 4rem;
	font-weight: bold;
	font-size: 1.2rem;
}
.w950 .title-line{
	margin-top: 6rem;
	margin-bottom: 1rem;
}
.w950 .title-line .line{
	width: 100%;
	height: 1px;
	background-color: #cccccc;
}
.w950 .title-line .title{
	width: 80%;
	height: 30px;
	margin: 0 auto;
	margin-top: -15px;
	line-height: 30px;	
	background-color: #ffffff;
	text-align: center;
	font-weight: 500;
	font-size: 1.4rem;
	letter-spacing: .2rem;
}
.number{
	display: inline-block;
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	font-size: 10px;
	color: #ffffff;
	background-color: #000000;
	border-radius: 50%;
	vertical-align: baseline;
	margin-right: 8px;
	margin-left: -24px;
}
.questionare{
	width: 100%;
	margin: 0 auto;
}
.questionare .form-item{
	margin-top: 1.6rem;
	margin-bottom: 3.2rem;
}
.questionare input{
	width: 100%;
	height:  80px;
	padding: 0 16px;
	line-height: 80px;
	border: 1px solid #cccccc;
}
.questionare .form-item .label{
	padding: 8px 0;
	padding-left: 24px;
	font-size: 1.2rem;
}
.questionare .form-item .grey{
	color: #444444;
	font-size: 10px;
	line-height: 20px;
	padding: 0 24px;
	text-align: justify;
	padding-bottom: 24px;
	box-sizing: border-box;
}
.questionare .form-item .radio{
	display: inline-block;
	width: 31%;
	height: 2rem;
	font-size: 1.2rem;
	line-height: 2rem;
	vertical-align: middle;
}
.questionare .form-item .form-group{
	padding: 0 24px;
	font-size: .6rem;
}
.questionare .form-item .radio input{
	width: 15px;
	height: 25px;
	margin-right: 8px;
	vertical-align: bottom;
}
.questionare .form-item textarea.form-control{
	width: 100%;
	height: 6rem;
	padding: .6rem;
	box-sizing: border-box;
	border: 1px solid #cccccc;
	resize:none;
}
.questionare .form-item .select-control{
	width: 60%;
	height: 32px;
	padding-left: 8px;
	padding-right: 24px;
	line-height: 32px;
	font-size: 1rem;
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/images/dropdown-arrow-black.svg);
	background-position: 96% center;
	-webkit-background-size: 24px auto;
		-moz-background-size: 24px auto;
			-o-background-size: 24px auto;
					background-size: 24px auto;
	background-repeat: no-repeat;
}
.mark{
	color: #E71F10;
	margin-left: 8px;
}
.questionare .form-item .like-level{
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap:wrap;
	-webkit-box-lines:multiple;
	-moz-flex-wrap:wrap;
	flex-wrap:wrap;
}
.questionare .form-item .like-level label{
	width: 100%;
	margin: 4px 1px;
	font-size: 1rem;
	cursor: pointer;
}
.questionare .form-item .like-level span{
	display: block;
	width: 100%;
	height: 3rem;
	line-height: 3rem;
	text-align:center;
	border-radius: 4px;
	border: 1px solid #bbbbbb;
	cursor: pointer;
}
.questionare .form-item .like-level input[type="radio"]{
	display: none;
}
.questionare .form-item .like-level input[type="radio"]:checked ~ span{
	color: #ffffff;
	background-color:#E71F10;
	border-color: #E71F10;
}
.questionare .submit{
	width: 100%;
	margin-top: 5rem;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/send.jpg);
}
.level-dir{
	width: 100%;
}
.level-dir span{
	display: block;
	width: 100%;
	text-align: center;
	font-size: 13px;
	line-height: 30px;
	color: #000000;
}
.level-dir .icon{
	display: block;
	width: 2rem;
	height: 2rem;
	margin: 0 auto;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/top-arrow.png);
	background-position: top center;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.level-dir .icon.bottom-arrow{
	transform: scale(-1);
}
.margt-8{
	margin-top: 8px;
}
.margb-8{
	margin-bottom: 8px;
}
.question-survey { margin-bottom: 50px;}
