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

#keyVisual { width: 100%; clear: both; margin-bottom: 0; }

#keyVisual h1 { text-indent: 0; width: 100%; }

#keyVisual h1 ul { width: 100%; }

#keyVisual h1 ul li { width: 100%; }

#keyVisual h1 ul li img { width: 100%; }

a:hover { opacity: 0.8 !important; }

#widewrapper { width: 100%; }

.w950 { width: 950px; margin: 0 auto; }

/****/
.jdsMegaMenu, .navi { overflow: hidden; padding: 20px 0; }

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

.jdsMegaMenu li, .navi li { width: 33.2%; font-size: 18px; text-align: center; float: left; }

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

.jdsMegaMenu li a, .navi li a { display: block; padding: 15px 0; border-right: 1px solid #999; margin: 0 !important; border-bottom: 6px solid #fff; }

.jdsMegaMenu li a:hover, .navi li a:hover { border-bottom: 6px solid #e71f10; text-decoration: none !important; }

.jdsMegaMenu .on a, .navi .on a { border-bottom: 6px solid #e71f10; }

.jdsMegaMenu .on a:hover, .navi .on a:hover { border-bottom: 6px solid #e71f10; }

ul.megamenu { overflow: visible; }
/*****/

.asaMenu, .navi { overflow: hidden; padding: 20px 0; }

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

.asaMenu li, .navi li { width: 33.2%; font-size: 18px; text-align: center; float: left; }

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

.secondstage .asaMenu li:nth-child(3),.secondstage .navi li:nth-child(3),.finalstage .asaMenu li:nth-child(3) {padding: 0 !important;background: none;}


.asaMenu li a, .navi li a { display: block; padding: 15px 0; border-right: 1px solid #999; margin: 0 !important; border-bottom: 6px solid #fff; }

.asaMenu li a:hover, .navi li a:hover { border-bottom: 6px solid #e71f10; text-decoration: none !important; }

.asaMenu .on a, .navi .on a { border-bottom: 6px solid #e71f10; background: #fff !important; color: #333 !important;}

.asaMenu .on a:hover, .navi .on a:hover { border-bottom: 6px solid #e71f10; background: #fff !important; color: #333 !important;}

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

#maintext { padding: 100px 0; position: relative; }

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

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

#maintext .w950 a.votebtn { display: block; padding: 110px 0 45px; }

#maintext .w950 .jdsCoponSwitch1 { cursor: pointer; padding-top: 40px; }

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

#maintext .w950 .win { padding: 30px 50px; font-size: 14px; }

#maintext .w950 .win p { padding-bottom: 20px; }

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

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

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

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

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

#maintext .food1 { position: absolute; top: 147px; right: -3%; }

#maintext .food2 { position: absolute; top: 103px; left: 0; }

#maintext .food3 { position: absolute; top: 488px; left: 10%; }

#steps { background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/bg.jpg) no-repeat top center; padding: 280px 0 120px; position: relative; }

#steps h2.sidettl { position: absolute; top: 40px; left: calc(50% - 599px); background: #fff; padding: 34px 47px; z-index: 99; }

#steps .linewrap { border-top: 1px solid #000; margin-top: 95px; width: 100%; position: relative; }

#steps .linewrap ul.stepdtl { width: 950px; overflow: hidden; top: -22px; margin: -20px auto 0; }

#steps .linewrap ul.stepdtl li { float: left; width: 279px; margin-right: 56px; font-size: 14px; line-height: 200%; }

#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 .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; }

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

.info div { margin: 0 20px; }

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

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

.recruit { padding: 70px 0; background: #fff5e0; }

.recruit dl { overflow: hidden; }

.recruit dl dt { float: left; width: 348px; margin-right: 25px; }

.recruit dl dd { float: left; width: 577px;}

.recruit dl dd h2 { border-bottom: 4px solid #ffcc66; margin-bottom: 20px; width: 410px;}

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

#sponsors { padding: 100px 0; }

#sponsors h2 { text-align: center; }

#sponsors ul { overflow: hidden; width: 600px; margin: 0 auto; }

#sponsors ul li { float: left; margin: 10px 20px 0 20px; width: 160px; }

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

#sponsors ul li a img { width: 100%; }

.hints { font-size: 14px; padding-top: 50px; width: 800px; margin: 0 auto; line-height: 150%; }
.hints_note { font-size: 14px; padding-bottom: 70px; width: 850px; margin: 0 auto; line-height: 150%; }

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

.jdsShowFix1 { position: fixed; bottom: 30px; right: 30px; z-index: 999999; }

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

#keyVisual.sub .festalogo { position: absolute; top: 20px; left: 20px; }

#keyVisual.sub span {width: 560px;font-size: 14px;margin: 0 auto;display: block;color: #985050;padding-top: 20px;line-height: 1.7;text-align: center;}


#keyVisual.sub h1 { font-size: 48px; color: #e71f10; text-align: center; padding-top: 80px; }

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

.votetime { padding: 40px 0; line-height: 1.8; }

.votetime h2 { font-size: 48px; text-align: center; margin-bottom: 40px; }

/* ------------------------------------------
1-1st
------------------------------------------ */
.votearea { padding: 40px 0; position: relative; width: 845px; }

.votearea h2 { padding-top: 50px; }

.votearea .note { text-align: right; font-size: 14px; margin-top: 300px; }

.votearea p { line-height: 2; }

.votearea .thisWarrp ul li a { display: block; position: absolute; text-align: center; line-height: 17px; font-size: 13px; }

.votearea .thisWarrp .blue a { width: 154px; height: 125px; font-size: 13px; line-height: 17px; text-align: center; position: absolute; left: 706px; top: 143px; }

.votearea .thisWarrp .blue a span { display: block; padding-top: 45px; }

.votearea .thisWarrp .sea a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .sea a.s1 { width: 102px; height: 39px; line-height: 39px; left: 706px; top: 288px; }

.votearea .thisWarrp .sea a.s2 { width: 49px; height: 39px; left: 706px; top: 331px; }

.votearea .thisWarrp .sea a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .sea a.s3 { width: 49px; height: 39px; left: 759px; top: 331px; }

.votearea .thisWarrp .sea a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .sea a.s4 { width: 49px; height: 39px; left: 706px; top: 374px; }

.votearea .thisWarrp .sea a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .sea a.s5 { width: 49px; height: 39px; left: 759px; top: 374px; }

.votearea .thisWarrp .sea a.s5 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .sea a.s6 { width: 102px; height: 39px; line-height: 39px; left: 706px; top: 417px; }

.votearea .thisWarrp .green a { font-size: 12px; white-space: nowrap; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .lev2 a.s1 { width: 49px; height: 39px; left: 547px; top: 417px; }

.votearea .thisWarrp .lev2 a.s1 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev2 a.s2 { width: 49px; height: 39px; left: 600px; top: 417px; }

.votearea .thisWarrp .lev2 a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev2 a.s3 { width: 49px; height: 39px; left: 653px; top: 417px; }

.votearea .thisWarrp .lev2 a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev2 a.s4 { width: 49px; height: 39px; left: 547px; top: 460px; }

.votearea .thisWarrp .lev2 a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev2 a.s5 { width: 49px; height: 39px; left: 653px; top: 460px; }

.votearea .thisWarrp .lev2 a.s5 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev2 a.s6 { width: 49px; height: 39px; left: 653px; top: 503px; }

.votearea .thisWarrp .lev2 a.s6 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s7 { width: 49px; height: 39px; left: 706px; top: 460px; }

.votearea .thisWarrp .green a.s7 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s8 { width: 49px; height: 39px; left: 759px; top: 460px; }

.votearea .thisWarrp .green a.s8 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s9 { width: 49px; height: 39px; left: 706px; top: 503px; }

.votearea .thisWarrp .green a.s9 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s10 { width: 49px; height: 39px; left: 759px; top: 503px; }

.votearea .thisWarrp .green a.s10 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s11 { width: 49px; height: 39px; left: 706px; top: 546px; }

.votearea .thisWarrp .green a.s11 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .green a.s12 { width: 49px; height: 82px; left: 759px; top: 546px; }

.votearea .thisWarrp .green a.s12 span { display: block; padding-top: 24px; }

.votearea .thisWarrp .green a.s13 { width: 49px; height: 39px; left: 706px; top: 589px; }

.votearea .thisWarrp .green a.s13 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .org2 a.s1 { width: 49px; height: 39px; left: 547px; top: 546px; }

.votearea .thisWarrp .org2 a.s1 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev a.s2 { width: 49px; height: 82px; left: 600px; top: 460px; }

.votearea .thisWarrp .lev a.s2 span { display: block; padding-top: 24px; }

.votearea .thisWarrp .lev a.s3 { width: 49px; height: 39px; left: 600px; top: 546px; }

.votearea .thisWarrp .lev a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .lev a.s4 { width: 49px; height: 39px; left: 653px; top: 546px; }

.votearea .thisWarrp .lev a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .org a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .org a.s1 { width: 49px; height: 39px; left: 494px; top: 460px; }

.votearea .thisWarrp .org a.s1 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .org a.s2 { width: 49px; height: 39px; left: 494px; top: 503px; }

.votearea .thisWarrp .org a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .org a.s3 { width: 49px; height: 39px; left: 547px; top: 503px; }

.votearea .thisWarrp .org a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .org a.s4 { width: 49px; height: 82px; left: 441px; top: 503px; }

.votearea .thisWarrp .org a.s4 span { display: block; padding-top: 24px; }

.votearea .thisWarrp .org a.s5 { width: 49px; height: 39px; left: 494px; top: 546px; }

.votearea .thisWarrp .org a.s5 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .org a.s6 { width: 102px; height: 39px; line-height: 39px; left: 441px; top: 589px; }

.votearea .thisWarrp .pink a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .pink a.s1 { width: 49px; height: 82px; left: 282px; top: 503px; }

.votearea .thisWarrp .pink a.s1 span { display: block; padding-top: 24px; }

.votearea .thisWarrp .pink a.s2 { width: 49px; height: 39px; left: 335px; top: 503px; }

.votearea .thisWarrp .pink a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pink a.s3 { width: 49px; height: 39px; left: 388px; top: 503px; }

.votearea .thisWarrp .pink a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pink a.s4 { width: 49px; height: 39px; left: 335px; top: 546px; }

.votearea .thisWarrp .pink a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pink a.s5 { width: 49px; height: 39px; left: 388px; top: 546px; }

.votearea .thisWarrp .pink a.s5 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pur a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .pur a.s1 { width: 49px; height: 39px; left: 325px; top: 599px; }

.votearea .thisWarrp .pur a.s1 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pur a.s2 { width: 49px; height: 39px; left: 378px; top: 599px; }

.votearea .thisWarrp .pur a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pur a.s3 { width: 49px; height: 39px; left: 325px; top: 642px; }

.votearea .thisWarrp .pur a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .pur a.s4 { width: 49px; height: 39px; left: 378px; top: 642px; }

.votearea .thisWarrp .pur a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .red a.s1 { width: 49px; height: 39px; left: 110px; top: 589px; }

.votearea .thisWarrp .red a.s1 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a.s2 { width: 49px; height: 39px; left: 163px; top: 546px; }

.votearea .thisWarrp .red a.s2 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a.s3 { width: 49px; height: 39px; left: 216px; top: 546px; }

.votearea .thisWarrp .red a.s3 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a.s4 { width: 49px; height: 39px; left: 110px; top: 546px; }

.votearea .thisWarrp .red a.s4 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a.s5 { width: 49px; height: 39px; left: 163px; top: 589px; }

.votearea .thisWarrp .red a.s5 span { display: block; padding-top: 4px; }

.votearea .thisWarrp .red a.s6 { width: 49px; height: 82px; left: 216px; top: 589px; }

.votearea .thisWarrp .red a.s6 span { display: block; padding-top: 24px; }

.votearea .thisWarrp .red a.s7 { width: 102px; height: 39px; line-height: 39px; left: 110px; top: 632px; }

.votearea .thisWarrp .red2 a { font-size: 13px; line-height: 17px; text-align: center; position: absolute; }

.votearea .thisWarrp .red2 a.s1 { width: 49px; height: 39px; left: 110px; top: 691px; }

.votearea .thisWarrp .red2 a.s1 span { display: block; padding-top: 4px; }

.hasbg { background: #fff5e0; }

#votesteps { padding: 40px 0; }

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

#votesteps h2:before { position: absolute; content: ""; display: block; width: 320px; border-bottom: 1px solid #000; left: 40px; top: 40%; }

#votesteps h2:after { position: absolute; content: ""; display: block; width: 320px; border-bottom: 1px solid #000; right: 40px; top: 40%; }

#votesteps ul { overflow: hidden; padding: 40px 0 0; }

#votesteps ul li { float: left; width: 33.3%; text-align: center; position: relative; }

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

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

.sidebar { position: fixed; right: 0;top: 250px; overflow: hidden; z-index: 10; }

.sidebar h2 { writing-mode: vertical-lr; float: left; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/searchicon.png) no-repeat 50% 90% #e71f10; font-size: 24px; padding: 20px 20px 70px 20px; border-radius: 5px 0 0 5px; cursor: pointer; color: #fff; box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3); width: 66px; box-sizing: border-box }

.sidebar ul { float: left; background: #fff; border: 1px solid #e71f10; padding: 5px; width: 200px; box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3); }

.sidebar ul li { float: left; font-size: 13px; }

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

/*modal*/
.asabox { width: 950px; margin: 0 auto 30px;}

.asabox h2 { text-align: center; font-size: 34px; padding: 40px 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: 100 !important; }

#contentsArea .asafes { margin: 0 auto 80px; }

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

#contentsArea .asafes .bfBox,#contentsArea .bfBox01 { padding: 10px 30px; margin: 0 auto 20px; position: relative; background: #fff; }

#contentsArea .asafes .bfBox h2,#contentsArea .bfBox01 h2 { text-align: center; padding: 20px 0 25px; font-size: 21px; 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: 15px; 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: 12px; background-size: contain; }

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

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

#contentsArea .asafes .bfBox .LR .L,#contentsArea .bfBox01 .LR .L { float: left; width: 416px; }

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

#contentsArea .asafes .bfBox .LR .R,#contentsArea .bfBox01 .LR .R { float: right; width: 312px; }

#contentsArea .asafes .bfBox .LR .R h3,#contentsArea .bfBox01 .LR .R h3 { font-size: 1rem; padding: 20px 20px 3px; }

#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: 25px; font-size: 14px; line-height: 1.6; color: #333; background: #f6f0e7 url(https://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; width: auto; 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; }

#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: 810px; height: auto; margin: 0; background-color: #ffffff; color: #666666; position: fixed; z-index: 101; }

#contentsArea .asafesItem { float: left; width: 180px; padding-bottom: 10px; margin: 0 5px 10px; }

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

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

#contentsArea .asafesItem .wrap { padding: 7px; background: #fff; }

#contentsArea .asafesItem .wrap h4 { background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/asalist.png) left 2px no-repeat; margin-bottom: 5px; padding-left: 14px; }

#contentsArea .asafesItem .wrap h4 a { color: #e71f10; font-size: 13px; line-height: 1.4; font-weight: normal; }

#contentsArea .asafesItem .wrap > a img { width: 100%; display: block; margin-bottom: 10px; }

#contentsArea .asafesItem .wrap p { color: #666; margin-bottom: 10px; line-height: 1.4; font-size: 12px; }

#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, #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; }

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

.voteOVER { padding: 100px 0; }

.voteOVER h2 { font-size: 39px; text-align: center; line-height: 150%; }

.voteOVER h2 span { display: block; font-size: 18px; font-weight: normal; }

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

.voteOVER p { text-align: center; font-size: 18px; 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;}
.lineLink img, .twitterLine img {width: 50px; height: 50px;}

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; width: 450px; color: #FFFFFF; padding: 20px 30px 20px; margin-bottom: 10px;}
.close_info strong{font-size: 22px; display: block;}
.close_title {text-align: center; margin: -20px 0 40px; font-size: 22px;}
#topinfo{margin: 70px 0 40px;}
#topinfo a {background-color: #e71f10; padding: 30px 0; color: #FFFFFF !important; font-size: 24px; display: block; width:480px; margin: 0 auto 20px;}
#topinfo span {line-height: 140%; color: #e71f10;}

/* ------------------------------------------
2nd_stage
------------------------------------------ */
.asabox.best8 p.subttl {
	text-align: center;padding-bottom: 30px;
}
.asabox.best8 h2{padding: 80px 0 10px;}

#contentsArea .asabox.best8 .asafesItem{width: 306px;}
#contentsArea .asabox.best8 .asafesItem .wrap h4{background: none;margin-bottom: 10px;text-align: center;padding-left: 0;}
#contentsArea .asabox.best8 .asafesItem .wrap h4 a{font-weight: bold;font-size:20px ;}
#contentsArea .asabox.best8 .asafesItem .wrap p b{display: block;font-size:18px;color: #333;padding-bottom: 5px;}
#contentsArea .asabox.best8 .asafesItem .wrap p{font-size: 14px;}
#contentsArea .asabox.best8 .asafesItem .wrap > a img{border-top: 4px solid #e71f10;}



.best3 {padding: 80px 0 40px; display: block !important;}
.best3 h2{text-align: center; font-size:34px ;}
.best3 .anchor {
	flex-wrap: wrap; padding: 20px;font-size: 14px;display: flex; justify-content: flex-start;
}
.best3 .anchor li{margin-bottom: 10px; border-right: 1px solid #000;}
.best3 .anchor li a{padding: 0 10px;}

.best3list{overflow: hidden; margin: 40px 0;}
.best3list>li{float: left; width: 23%; 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 {
padding: 20px 0;
}
.viewbf h2{text-align: center;font-size: 34px;}

.viewbf ul{display: table; padding: 20px 0;}
.viewbf ul li{font-size: 16px;float: left; width: 14.1%;text-align: center;border-top: 1px solid #000;border-left: 1px solid #000;}
.viewbf ul li span{font-size: 12px;}
.viewbf ul li a{padding: 10px;display: block;}
.viewbf ul li:nth-child(7n){border-right: 1px solid #000;}
.viewbf ul li.bottomborder{border-bottom: 1px solid #000 !important;}
.viewbf ul li.notop{border-top: none !important;}
.rightborder{border-right: 1px solid #000 !important;}
.finalstage .voteOVER p {
	line-height: 150%;padding-bottom: 20px;
}

.video{padding: 120px 0 40px;}
.video p {padding: 0 0 10px; font-weight: bold; font-size: 120%;}
.eventrecurit {
	padding: 40px 0 80px;
}
.eventrecurit h2 {
	text-align: center;font-size: 40px;line-height: 160%;
}
.eventrecurit>h3 {
	text-align: center;font-size: 30px;line-height: 160%;position: relative;padding-bottom: 50px;font-weight: normal;
}
.eventrecurit>h3:before{position: absolute; width: 300px; height: 1px; background: #000; display: block; content: "";top: 20%;left: 0;}
.eventrecurit>h3:after{position: absolute; width: 300px; height: 1px; background: #000; display: block; content: "";top: 20%;right: 0;}
.eventrecurit>h2 span{display: block;font-size: 24px;}
.eventrecurit .sub{text-align: center;font-size: 18px;line-height: 150%;padding-bottom: 100px;}
.eventrecurit .recuritdtl{overflow: hidden;}
.eventrecurit .recuritdtl li{float: left; width: 48%;padding: 1%;font-size: 14px;line-height: 150%;}


.asaslider {
	padding: 60px 0;
}

.asaslider h2 {
	text-align: center; font-size: 30px;margin-bottom:30px;font-weight: normal;
}
.swiper-slide a{display: block;font-size: 13px;}
.swiper-slide a img{width: 100%; display: block;margin-bottom: 10px;}
.swiper-slide a b{display: block; color: #e71f10;font-size: 16px;font-weight: normal;padding: 10px 0;}
.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;}


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

.obo_form h2 { font-size: 30px; text-align: center; margin-bottom: 30px; line-height: 1.6; font-weight: normal;}

.obo_form h3 { font-size: 20px; margin: 0 auto 20px; width: 950px; font-weight: normal; }

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

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

.obo_form table { width: 950px; margin: 0 auto 50px; font-size: 16px; }

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

.obo_form table td select { width: 70%; font-size: 14px; padding: 3px; }

.obo_form table td input.w100 { width: 69%; font-size: 14px; padding: 3px; }

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

.obo_form table.kakunin { text-align: center; font-weight: bold; font-size: 18px; }

.obo_form table.kakunin input { margin-right: 5px; }

.obo_form input.submit_btn { width: 476px; height:83px; background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/send.jpg) no-repeat; 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:#fff5e0; padding: 80px 0 50px; margin-bottom: 50px;  }

.obo_form .kakunin_box .w950{display: flex; justify-content: center; flex-wrap: wrap;}
.obo_form .kakunin_box h2 { width: 100%; }

.obo_form .kakunin_box dl { width:45%; margin: 0 20px; 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;padding: 20px 0;font-weight: normal;}

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

.video video-js { width:950px; height:535px;}

/***0828****/
.eventInfo { width: 800px; font-size: 16px;line-height: 150%; text-align: left; margin: 30px auto 0;}
.eventInfo span {font-size: 12px; display: block; margin: 5px 0 0;}



/*rsvp*/
.tosen{padding: 100px 0;}
.tosen > p{text-align: center; font-size:18px ;line-height: 150%;margin-bottom: 50px;}
.tosen > div{border: 1px solid #000; width: 748px; margin: 0 auto 50px;}
.tosen form{padding-top: 30px;}
.tosen form table{width: 100%;}
.tosen form table tr:nth-child(1) td{font-size: 34px;font-weight: bold;text-align: center;height: 80px; line-height: 80px;}
.tosen form .btn{width: 440px; 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: 50px 0; line-height: 1.6;}
.tosen h3{text-align: center;font-weight: normal;font-size: 18px;}

#keyVisual.finalkv{height: 522px; overflow: hidden;}
#keyVisual.finalkv ul{position: relative;z-index: 1;}
#keyVisual.finalkv ul li{font-size: 0; height: 522px; width: 100%;background-size: cover !important;}
#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;z-index: 10;right: calc(50% - 175px); top: 86px;}


/*決勝　結果発表*/
.winner>h2{text-align: center; font-size: 34px; padding: 44px 0;}
.winner{overflow: hidden;}

.firstplace{position: relative; border: 1px solid #e71f10;margin-top: 50px;padding: 100px 28px 28px 28px;margin-bottom: 100px;background: #fff;}
.firstplace .medal{position: absolute; top: -70px; right: 43%;}
.firstplace.double {margin-bottom: 50px;}
.firstplace.double .medal{position: absolute; top: -70px; right: 36%;}
.firstplace h2{font-size: 26px;text-align: center;padding-bottom: 20px;}
.firstplace h2 span{font-weight: normal;font-size: 22px; background: #ffcc66; padding:3px 5px;}
.firstplace .htlnm{text-align: center;font-size: 18px;padding-bottom: 20px;}
.firstplace .winnerphoto .rslides_nav{font-size: 0; position: absolute;z-index: 99; }
.firstplace .photowrap{overflow: hidden; }
.firstplace .winnerphoto{position: relative;float: right; width: 442px;}
.firstplace .winnerphoto li a img{width: 100%;}
.firstplace .FP{float: left; width: 442px;}
.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:136px; margin: 20px auto; background:#e71f10; position: relative;text-align: center;padding: 25px 70px;}
.firstplace a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 44px; top: 37%; color: #fff;transform: rotate(-90deg);font-size: 12px;}


.cl2{overflow: hidden;}
.cl2 .hotelswrap{float: left;position: relative; border: 1px solid #e71f10;margin-top: 50px; width: 40.7%; padding:10% 4% 4% 4%;margin-right: 2%;margin-bottom: 50px;background: #fff;}
.cl2 .hotelswrap:nth-child(2n){margin-right: 0;}
.cl2 .hotelswrap .medal{position: absolute; top: -70px; right: 38%;}
.cl2 .hotelswrap.double .medal{right: 20%;}
.cl2 .hotelswrap.double .medal img:nth-child(1){padding-right: 5px;}
.cl2 .hotelswrap h2{font-size: 22px;}
.cl2 .hotelswrap .htlnm{font-size:18px ; 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:14px ; padding: 10px 0;clear: both; line-height: 150%;}
.cl2 .hotelswrap a.winnerbtn{display: block; width:136px; margin: 20px auto; background:#e71f10; position: relative;text-align: center;padding: 25px 70px;}
.cl2 .hotelswrap a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 44px; top: 37%; color: #fff;transform: rotate(-90deg);font-size: 12px;}





.cl3{overflow: hidden;}
.cl3 .hotelswrap{float: left;position: relative;margin-top: 20px; width: 23%; padding:3% 1%;margin-bottom: 50px; background-color: #ffffff;}
.cl3 .hotelswrap:nth-child(3){margin-right: 0;}

.cl3 .hotelswrap h2{font-size: 18px;}
.cl3 .hotelswrap .htlnm{font-size:15px ; 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:14px ; padding: 10px 0;clear: both; line-height: 150%;}
.cl3 .hotelswrap a.winnerbtn{display: block; width:135px; margin: 20px 0; background:#e71f10; position: relative;text-align: center;padding: 25px 40px;}
.cl3 .hotelswrap a.winnerbtn img{width: 100%;}
.cl3 .hotelswrap a.winnerbtn:after{display: block;content: "▼";position: absolute; right: 24px; 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: 23.5%; margin-right: 2%;margin-bottom: 2%;}
.jdsBaguetteBox a:nth-child(4n){margin-right: 0;}
.jdsBaguetteBox a img{width: 100%;display: block;}

.winnerpage .eventInfo {text-align: center;font-size: 22px;}

.winnerpage .eventInfo span{font-size: 22px; border-bottom:4px solid #ffcc66;width: max-content; display: block; margin: 20px auto;}
.winnerpage .aboutevent{text-align: center; color: #E71F10; font-size: 18px; padding-bottom: 40px;line-height: 150%;}
.winnerpage .aboutevent span{font-size:12px ;}
.winnerpage .recuritdtl li:first-child{background: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/winnericon.png) no-repeat top right;padding-top: 65px;}
.winnerpage .recuritdtl li:last-child{padding-top: 30px;}
.winnerpage .schedule{margin-top: 100px;padding-bottom: 100px;}
.winnerpage .schedule:before,.winnerpage .schedule:after{width: 200px;}
.winnerpage .timeschedule{width: 850px;margin: 10px auto;display: block;}
.winnerpage p.timehint{text-align: center;font-size: 14px;margin-bottom: 50px;}
.winnerpage .judge{overflow: hidden;margin-top: 20px;}
.winnerpage .judge>li:first-child{float: left;width: 345px;font-size: 14px;line-height: 130%;}
.winnerpage .judge>li:last-child{float: right; width: 571px;}
.winnerpage .judge li dl dt{background:#ffcc66;font-size: 16px;text-align: center;padding: 10px 0;margin-bottom: 10px; }
.winnerpage .judge li dl dd>ul{overflow: hidden;}
.winnerpage .judge>li:first-child dl dd ul li{float: left; width: 195px;line-height: 150%; }
.winnerpage .judge>li:first-child dl dd ul li:first-child{width: 150px;}
.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: 14px;margin-right: 4px;}
.winnerpage .judge>li:last-child dl{overflow: hidden;margin-bottom: 10px;}
.winnerpage .judge>li:last-child dl dt{clear: both;}
.winnerpage .judge>li:last-child dl dd{float: left; width: 50%;}
.winnerpage .judge>li:last-child dl dd>ul{overflow: hidden;}
.winnerpage .judge>li:last-child dl dd>ul li{float: left;font-size: 12px;line-height: 130%;}
.winnerpage .judge>li:last-child dl dd>ul li:first-child{width:141px; margin-right: 5px; }
.winnerpage .judge>li:last-child dl dd>ul li:last-child{padding-right: 5px; width: 130px;line-height: 150%;}
.winnerpage .judge>li:last-child dl:last-child{border:2px dashed #ffcc66; padding: 10px 15px;}
.winnerpage .judge>li:last-child dl:last-child dt{background: none;text-align: left;font-size: 14px;margin-bottom: 0;padding-top: 0;}
.winnerpage .judge>li:last-child dl:last-child dd ul{overflow: hidden; width: 500px;}
.winnerpage .judge>li:last-child dl:last-child dd{font-size: 12px;width: auto;}
.winnerpage .judge>li:last-child dl:last-child dd:last-child{padding-top: 10px;}
.winnerpage .judge>li:last-child dl:last-child dd ul li{float: left;font-size: 14px;width: 33%;font-weight: bold;}

.winnerpage .obo_form{padding-top: 0;}
.winnerpage .obo_form .kakunin_box dl{width: 90%; margin: 0 auto;}
.winnerpage .obo_form .eventrecurit>h3{font-size: 30px;}
.winnerpage .obo_form .eventrecurit form{width: 700px; margin: 0 auto;}
.winnerpage .obo_form form h3{width: 100%;line-height: 140%;}
.winnerpage .obo_form table{width: 100%;}
.winnerpage .obo_form table.attendance{font-weight: bold;font-size: 34px;}
.winnerpage .obo_form h3 em{display: block;}
.winnerpage .obo_form .deadline{font-size: 14px;}
.winnerpage .obo_form p.welcome{font-size:18px ;text-align: center; padding: 20px 0;}

.eventrecurit.w950.mt100{margin-top: 100px;}

/**** 1002 Close ****/
.closeBox {position: relative;}
.closeBox img {position: absolute;top:60px; right:160px;}
.closeInfo {width: 700px; border: solid 1px #e71f10; margin: 50px auto 0; padding: 40px;}
.closeInfo strong {display:block; font-weight: bold; font-size: 24px; padding-bottom: 10px; 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;}
.winbg{background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/winbg.jpg), url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/winbg2.jpg), url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/winbg.jpg), url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/winbg2.jpg) ; background-size: 100%,100%,100%,100%; background-position: 0 400px,0 1200px,0 2000px,0 2800px;background-repeat: no-repeat,no-repeat,no-repeat,no-repeat;}

/**thank.html page**/
.w950 .title{
	padding: 0;
	margin-top: 60px;
	font-size: 40px;
}
.w950 .small-text{
	margin: 32px 0;
	text-align: center;
	color: #444444;
	font-size: 18px;
}
.w950 .common-btn{
	display: block;
	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;
	cursor: pointer;
}
.w950 .common-btn a{
	display: block;
	width: 400px;
	padding-top: 17.44%;
}
.w950 .food-list{
	margin-top: 150px;
}
.w950 .food-list.question{
	margin-top: 80px;
}
.w950 .food-list img{
	width: 100%;
}
/* questionaire page */
.w950 .details{
	width: 80%;
	margin: 0 auto;
	margin-top: 32px;
}
.w950 .details p{
	text-align: center;
	font-size: 18px;
	line-height: 165.6%;
	padding: 16px 0;
}
.w950 .common-btn.transparent{
	display: block;
	width: 100%;
	height: 70px;
	margin: 0 auto;
	border: 1px dashed #444444;
	background: none;
	text-align:  center;
	line-height: 70px;
	font-weight: bold;
	font-size: 16px;
}
.w950 .title-line{
	margin: 60px 0;
}
.w950 .title-line .line{
	width: 100%;
	height: 1px;
	background-color: #000000;
}
.w950 .title-line .title{
	width: 400px;
	height: 30px;
	margin: 0 auto;
	margin-top: -15px;
	line-height: 30px;	
	background-color: #ffffff;
	text-align: center;
	font-weight: normal;
	font-size: 30px;
}
.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: 580px;
	margin: 0 auto;
}
.questionare .form-item{
	margin-top: 16px;	
	margin-bottom: 32px;
	font-family: Roboto;
}
.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: 16px;
	line-height: 30px;
}
.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%;
}
.questionare .form-item .form-group{
	padding: 0 24px;
	font-size: 16px;
}
.questionare .form-item .radio input{
	width: 15px;
	height: 25px;
	margin-right: 8px;
	vertical-align: text-bottom;
}
.questionare .form-item textarea.form-control{
	width: 100%;
	height: 80px;
	padding: 16px;
	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;
	appearance:none;
	-moz-appearance:none;
	-webkit-appearance:none;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/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-justify-content:space-between;
	justify-content:space-between;
	-moz-box-pack:justify;
	-webkit--moz-box-pack: justify;
	-ms-flex-pack: justify;
	box-pack:justify;
}
.questionare .form-item .like-level label{
	width: 48px;
	height: 48px;
	cursor: pointer;
}
.questionare .form-item .like-level span{
	display: block;
	width: 100%;
	height: 46px;
	line-height:46px;
	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{
	display: block;
	width: 400px;
	padding-top: 17.44%;
	margin-top: 120px;
	background-image: url(https://img.travel.rakuten.co.jp/special/asafesta/2019/images/send.jpg);
	margin-bottom: 80px;
	background-color: #ffffff;
}
.question-survey{
	font-family: Meiryo;
}
.w950 .common-btn.thank-btn{
	margin-bottom: 150px;
}
.level-dir{
	display: flex;
	width: 100%;
	padding: 0 24px;
	margin-top: 8px;
	justify-content: space-between;
	font-size: 14px;
	line-height: 30px;
	box-sizing: border-box;
}