
.pc { display: none !important; }
#keyVisual{margin-bottom:0;position:relative;}
#keyVisual h1 img.sp{display: block;}
#keyVisual h1 .beard{position:absolute;top:43%;left:0;right:0;bottom:0;transform:translateY(-50%);}
.butterfly1{position:absolute;width:40px;left:13px;bottom:40px;transform:rotate(24deg);}
.butterfly2{position:absolute;width:40px;left:68px;bottom:8px;transform:rotate(-35deg);}
.butterfly3{position:absolute;width:40px;right:69px;top:10px;transform:rotate(-15deg);}
.butterfly4{position:absolute;width:40px;right:14px;top:36px;transform:rotate(15deg);}
#keyVisual .fuki.sp{position: absolute;bottom: 24px;left: 8%;width: 65%;}
.vote .butterfly1{left: 3px;bottom: 110px;}
.vote .butterfly2{left: 8px;width: 32px;}

img { max-width: 100%; }
#contents {background: none; padding: 0; line-height: 1.5; color: #333333;}
.navi{display: flex; justify-content: space-between;margin-bottom: 24px;}
.navi li{box-sizing: border-box; width: 33.33%;overflow: hidden;}
.navi li:not(:last-of-type){border-right: 1px solid #ccc;}
.navi li a,.navi li em{display: flex;padding: 4px 0; height: 100%; font-size: 14px; text-align: center; justify-content: center; align-items: center;box-sizing: border-box;}
.navi li em, .navi li a.on{font-weight: bold; color: #fff !important; background: #E74247;font-style: normal;}
#contentsArea .navi li a{color: #bbb;}
#contentsArea .navi li a.naviLink{color: #333;}
#contentsArea .navi li a:hover{text-decoration: none;opacity: 0.8;}

.lead{background: url(../images/lead_bg_sp.png) no-repeat center center / auto 100%;padding: 24px 0;}
.viewOnly .lead {padding: 0;}
.ttl { font-family: 'Kosugi Maru', sans-serif; font-size: 18px; text-align: center; letter-spacing: 3px; }
.ttl span { color: #E74247; font-size: 24px;}
.ttl small{font-size: 16px;font-weight: normal;}
.ttl small em{font-style: normal; color: #E74247; font-size: 20px;}
.ttl a{font-weight: normal; font-size: 18px;color: #284EAE !important;text-decoration: underline !important;text-align: center;display: inline-block;margin-top: 8px;}


.standby{margin: 0 16px 40px;box-sizing: border-box;border: 1px solid #E74247;}
.standby h2{text-align: center; background: #E74247; color: #fff; font-size: 18px; padding: 16px 0;line-height: 1;}
.standby p{margin: 24px auto;font-size: 16px;text-align: center;color:#E74247;}
.standby p a{color:#E74247 !important;text-decoration: underline !important;}
.standby p b{display: block;margin-bottom: 8px;}

.catSnsBox{margin: 24px 8px 40px;background: url(../images/sns_bg_sp.png) no-repeat center / 100% 100%; aspect-ratio: 288 / 216; display: flex; justify-content: center;align-items: center;flex-direction: column;row-gap: 16px; position: relative;z-index: 1;}
.catSnsBox h3{font-size: 20px;text-align: center;}
.catSnsBox h3 span{ position: relative;padding: 0 8px;z-index: 1;}
.catSnsBox h3 span:after{position: absolute; content: ''; height: 8px; background: #FDD118; left: 0; right: 0; bottom: 4px;z-index: -1;}
.catSnsBox > div{display: flex;justify-content: center;gap: 20px;}
.catSnsBox > div a img{height: 60px;width: auto;}
.catSnsBox > div a{display: flex;flex-direction: column;justify-content: flex-start;align-items: center;}
.catSnsBox > div a:last-of-type img{width: 40px;height: auto;}
.catSnsBox > div a:last-of-type span{font-size: 12px;color: #1D54A7;}

.totalTime{font-size: 18px;color: #333;text-align: center;margin-bottom: 64px;}
.totalTime span{background: #E74247; color: #fff;padding: 6px 10px;margin:0 8px 16px 0;font-weight: bold;display: inline-block;}

.voteEndTtl{text-align: center;font-size: 20px;color: #333;margin-bottom: 24px;}
.voteTime{margin: 0 16px 64px;}
.voteTime p{font-size: 16px;text-align: center;}
p.time {color: #E74247; letter-spacing: 2px; margin: 16px 0; font-size: 18px;text-align: center;}
p.time span { background: #db4040; color: #fff; letter-spacing: 3px; padding: 6px; display: inline-block;margin-bottom: 12px;}
p.time em{transform: rotate(90deg);display: block;}
p.time small{display: block;}
.midashi{margin-bottom: 24px; text-align: center;}
.top20 ul{ margin: 0 16px 24px;}
.top20 ul li{display: flex;flex-direction: column; gap: 0;margin-bottom: 16px;}
.top20 ul li img{display: block; width: 100%;}
.top20 ul li div{background: url(../images/step_bg_sp.png) repeat-y center top / 100%;padding: 0 40px;font-size: 14px;}
.top20 ul li div p{margin-bottom: 12px;}
.top20 ul li div dt{font-weight: bold;padding-left: 20px;}
.top20 ul li div dt.icon_time{background: url(../images/icon_time.svg) no-repeat left center;}
.top20 ul li div dt.icon_access{background: url(../images/icon_access.svg) no-repeat left center;}
.top20 ul li div dt.icon_special{background: url(../images/icon_special.svg) no-repeat left center;}
.top20 ul li div dd{margin-bottom: 12px;padding-left: 20px;}

.howtovote {background: #FFF5F6 url(../images/bowl.png) no-repeat 92% 90%; padding: 24px 16px; margin: 24px auto 40px;}
.howtovote h2 { text-align: center; background: url(../images/paw.png) no-repeat 4px bottom; font-size: 22px; padding-bottom: 25px; width: 290px; margin: 0 auto;}
.howtovote h2:nth-of-type(2){margin: 40px auto 24px;}
.howtovote h2:nth-of-type(2) + p{text-align: center;font-size: 16px;}
.howtovote h2:nth-of-type(2) + p em{transform: rotate(90deg);display: block;}
.voteRule{overflow-x: scroll;}
.howtovote ul{display: flex; justify-content: center; margin-top: 40px;gap: 28px; width: 656px;padding-bottom: 16px;}
.howtovote ul li{width: 200px;background: #fff;}
.howtovote ul li p{padding: 0 8px 14px;font-size: 12px;}
.howtovote ul li img{display: block; width: 100%;}
.howtovote ul li:nth-child(2){position: relative;}
.howtovote ul li:nth-child(2):before{position: absolute;content: ''; width: 0; height: 0; border-width: 10px 14px 10px 14px; border-style: solid; border-color: transparent transparent transparent #E74247;  left: -20px; top: 50%; transform: translateY(-50%);}
.howtovote ul li:nth-child(2):after{position: absolute;content: ''; width: 0; height: 0; border-width: 10px 14px 10px 14px; border-style: solid; border-color: transparent transparent transparent #E74247;  right: -36px; top: 50%; transform: translateY(-50%);}

.stepTtl{padding-bottom: 32px; background: url(../images/line.png) center bottom no-repeat; background-size: auto 20px; font-size: 24px; color: #E74247; text-align: center;font-family: 'Kosugi Maru', sans-serif; font-weight: normal; margin-bottom: 24px; line-height: 1.3;}
.stepTtl span{font-size: 16px;}
#vote { margin: 24px 16px;}
#vote form > p { font-size: 12px; line-height: 160%; margin: 20px 0; text-align: center;}
#vote form > p b { font-size: 22px; display: block; padding-bottom: 10px;color: #E74247;line-height: 150%; }
#vote .submitbtn { font-size: 24px; font-weight: bold; background: #E74247; border-radius: 100px; padding: 20px 0; border: none; color: #fff; text-align: center; width: 90%; margin: 20px auto; display: block; cursor: pointer; border: 2px solid #E74247; }
#vote .submitbtn:hover { color: #E74247; background: #fff; border: 2px solid #E74247; }
ul.voteform {display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 40px;}
ul.voteform li {padding: 0; width: 48.5%; line-height: 160%; position: relative; margin-bottom: 20px; z-index: 10;min-height: 266px;}
ul.voteform li img { width: 100%; }
ul.voteform li img + span { font-size: 13px;  padding: 0 16px;}
ul.voteform li h3 { font-size: 16px; padding: 10px 16px; }
ul.voteform li img { position: relative; z-index: 4;display: block; width: 100%;}
ul.voteform li dl.hotelpr {font-size: 14px; z-index: 99; padding: 0 8px;}
ul.voteform li dl.hotelpr dt { background: #FADDE0; padding: 4px 8px; border-radius: 4px; font-weight: bold; display: inline; color: #E74247; }
ul.voteform li dl.hotelpr dd { padding: 8px 0; }
ul.voteform li dl.hotelpr dd span { display: block; padding-bottom: 5px; }
ul.voteform li dl.hotelpr dd a { color: #1D54BB; text-decoration: underline; }
ul.voteform li dl.hotelpr dd a:hover { text-decoration: none; }
ul.voteform li .link{font-size: 13px;margin: 8px 16px;}
ul.voteform li .link span{display: block;}
ul.voteform li .link a{ color: #1D54BB; text-decoration: underline;}
ul.voteform li input { opacity: 0;}
ul.voteform li .spot { color: #E74247; font-weight: bold; font-size: 14px; border: 1px solid #E74247; padding: 4px 16px; border-radius: 100rem;font-style: normal;}
ul.voteform .checkedbox .spot{color: #fff;background: #E74247;}
ul.voteform .checkedbox:after{position: absolute; content: ''; left: 0; right: 0; bottom: 0; top: 0; background: rgba(230,117,43,.32); z-index: 1;margin-top: 100%;}
ul.voteform .checkedbox:before{position: absolute; content: url(../images/checked.png); left: calc(50% - 60px); bottom: calc((100% - 299px) / 2 - 8px); z-index: 2;}
#vote p.stepNote{color: #333; text-align: left; font-size: 16px;}
#vote p.stepNote{text-align: center;}
.commentBox {margin-bottom: 40px;}
.commentBox textarea{width: 100%; outline: 4px solid #FFF5F6; border: 1px solid #E74247; height: 110px; padding: 10px; box-sizing: border-box;background: url(../images/claw.png) 97% 97% no-repeat; background-size: 58px auto; line-height: 1.5;}
.closebtn { background: none; font-size: 20px; padding: 10px 80px; border-radius: 100px; display: block; margin: 20px auto; border: 1px solid #000; cursor: pointer; }
.closebtn:hover { background: #000; color: #fff; }

h2.others { text-align: center; margin: 40px 0; line-height: 150%; font-size: 18px; position: relative; }

h2.others:after { display: block; content: ""; border: 50px solid transparent; width: 0; height: 0; right: calc(50vw - 70px); position: absolute; border-top-color: #ccc; }
.bnr { margin: 80px 0 0; }
.bnr li { margin-bottom: 10px; }
.bnr li a { display: block; }
.bnr li a img { width: 100%; }
.bnr li a:hover { opacity: 0.8; text-decoration: none !important; }
.bnr li a img { width: 100%; display: block; }
.bnr li a span { display: block; background: #F7F7F7; font-size: 12px; padding: 8px; }
#contents .pagetop{z-index: 999;}

.enterCat{text-align: center; font-size: 18px;color: #333;margin-bottom: 40px;}
.enterCat em{font-weight: bold;color: #E74247;}

p.over { color: #E74247; font-weight: bold; text-align: center; font-size: 22px; margin: 32px 16px; line-height: 150%; }
.closebtn { background: none; font-size: 20px; padding: 10px 80px; border-radius: 100px; display: block; margin: 20px auto; border: 1px solid #000; cursor: pointer; }
.closebtn:hover { background: #000; color: #fff; }

h2.others { text-align: center; margin: 40px 0; line-height: 150%; font-size: 18px; position: relative; }

h2.others:after { display: block; content: ""; border: 50px solid transparent; width: 0; height: 0; right: calc(50vw - 70px); position: absolute; border-top-color: #ccc;bottom: -120px; }
.bnr { margin: 80px 0 0; }
.bnr li { margin-bottom: 10px; }
.bnr li a { display: block; }
.bnr li a img { width: 100%; }
.bnr li a:hover { opacity: 0.8; text-decoration: none !important; }
.bnr li a img { width: 100%; display: block; }
.bnr li a span { display: block; background: #F7F7F7; font-size: 14px; padding: 8px; }
#link {padding: 0 32px 32px;}

#link p { font-size: 16px; text-align: center; padding-bottom: 40px;}

#link dl dt { font-size: 20px; text-align: center; padding-bottom: 20px; }
#link dl dd a { display: block; font-size: 22px; padding: 17px 24px; border: 2px solid #333333; position: relative; margin-bottom: 20px; }
#link dl dd a:after { position: absolute; content: ""; display: block; border-right: 1px solid #333; border-bottom: 1px solid #333; width: 15px; height: 15px; top: 35%; right: 24px; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
#link dl dd a:hover { background: #000; color: #fff !important; text-decoration: none !important; }
#link dl dd a:hover:after { border-color: #fff; }
#contents.column1.over ul.voteform li label{display: none;}
#contents.column1.over ul.voteform li{padding-bottom:60px;}
#contents.column1.over .overTtl{text-align: center;font-family: 'Kosugi Maru', sans-serif; font-size: 18px; color: #333; margin-bottom: 24px;}

.rtNavi{position: fixed; right: 8px; bottom: 8px; z-index: 100;}
.rtNavi li a{display: block; margin-top: 8px; width: 56px;}
.rt-footer{z-index: 10 !important;}


a.red_btn {display: block; background: #E74247 url(../images/arr_white.png) 90% center no-repeat; color: #fff !important;border-radius: 100px;padding: 18px 0; letter-spacing: 0.4em; font-size: 12px; font-weight: bold; margin: 0 auto; font-family: 'Kosugi Maru', sans-serif; text-decoration: none !important; width: 90%; text-align: center;}
.petBnr{display: flex; align-items: center; flex-direction: column; gap: 24px; margin-bottom: 80px;padding: 0 16px;}
.petBnr h3{font-size: 18px;text-align: center;}
.petBnr img{display: block; width: 100%;}

#guide{position: relative;padding: 56px 0 0;margin: 0 auto 72px;box-sizing: border-box;}
#guide:before{position: absolute; content: ''; width: 50%;height: 1px;background: #ccc;left: 50%;top: 0;transform: translateX(-50%);}
#guide .txt{text-align: center;margin-bottom: 40px;font-size: 16px;}
#guide h2{text-align: center;font-size: 20px;margin-bottom: 32px;color: #333;}

.swp{position: relative;padding: 0 20px;}
#guide .swiper-container{padding-bottom: 16px;}
#guide .swiper-button-next{background:url(https://img.travel.rakuten.co.jp/pet/sem/images/next.png) no-repeat;background-size:100% auto;width:40px;height:40px;right:0;margin-top:-8px;transform: translateY(-50%);}
#guide .swiper-button-prev{background:url(https://img.travel.rakuten.co.jp/pet/sem/images/prev.png) no-repeat;background-size:100% auto;width:40px;height:40px;left:0;margin-top:-8px;transform: translateY(-50%);}

#petinfo .swiper-slide{width:100%;}
#petinfo .swiper-slide a{display:block;border-radius:5px;overflow:hidden;border:1px solid #888;}
#petinfo .swiper-slide a:hover{text-decoration: none; opacity: .8;}
#petinfo .swiper-slide a p.petimg{background-size:cover;height:130px;background-position:center center;}
#petinfo .swiper-slide a p{padding:10px;font-size:16px;color:#333;font-weight:bold;}
#petinfo .swiper-slide a p b{display:block;min-height:50px;}
#petinfo .swiper-slide a p span{display:block;color:#fff;background-color:#FB9215;text-align:center;padding:10px 0;margin-top:15px;}

#petRank{margin-bottom: 80px;padding: 0 32px;}
#petRank h2{text-align: center;font-size: 20px;margin-bottom: 32px;}
#petRank h2 small{display: block;font-size: 12px;font-weight: normal;margin-top: 8px;}
#petRank ul{display: flex;flex-direction: column;row-gap: 16px;}
#petRank ul li p{font-size: 16px;}
#petRank ul li a{display: flex;gap: 16px;align-items: center;}
#petRank ul li a:hover{text-decoration: none !important; opacity: .8 !important;}
#petRank ul li img{width: 30%;}


.checkBtn label{display: flex; justify-content: center; align-items: center;gap: 8px;font-size: 15px !important;color: #333;}
.checkBtn input:hover, .checkBtn label:hover{cursor: pointer;}
.checkBtn input{background: #ccc; width: 16px;height: 16px; appearance: none;margin: 0;}
.checkBtn input[type="checkbox"]:checked{background: url(../images/check.png) no-repeat center / 16px;}

ul.voteform li .catMain{border: 1px solid #E5E5E5; position: relative;}
ul.voteform li .catMain.selected{background: #FADDE0;}
ul.voteform li .catMain input{position: absolute; background: url(../images/unselected.png) no-repeat center / 32px;top: 8px;left: 8px;appearance: none;width: 32px;height: 32px;opacity: 1;z-index: 8;margin: 0;}
ul.voteform li .catMain input[type="checkbox"]:checked{background: url(../images/selected.png) no-repeat center / 32px;}
ul.voteform li .catMain h3{font-size: 14px;padding: 8px 16px;}
ul.voteform li .catMain .htlName{margin: 0 16px 12px; color: #767676; font-size: 12px;line-height: 1.5;}

.modal-overlay {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4);
}
.modal-content {
    background-color: #fefefe;
    margin: 10% auto;
    border: 1px solid #888;
    width:80%;
    position: relative;
    max-height: 90%;
    overflow-y: scroll;
}
.close-button {
	position: absolute;right: 8px;
	top: 8px;
    color: #666;
    font-size: 28px;
    font-weight: bold;
    z-index: 10;
    background: rgba(255,255,255,.5);
    width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    border-radius: 100rem;
}
.close-button:hover,
.close-button:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
    opacity: 1;
}

.catDetails{position: relative; border: 1px solid #E5E5E5;line-height: 1.5;}

.catCheck{position: relative;overflow: hidden;}
.catName{display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; padding: 8px 16px; position: relative;z-index: 10;}

#modal-body img + span {font-size: 13px; padding: 0 16px;}
#modal-body h3 {font-size: 20px; padding: 10px 0;}
#modal-body img {width: 100%;display: block;}
#modal-body dl.hotelpr {font-size: 14px; padding: 0 16px;line-height: 1.5;}
#modal-body dl.hotelpr dt {background: #FADDE0; padding: 8px 16px; border-radius: 4px; font-weight: bold; display: inline-block; color: #E74247;}
#modal-body dl.hotelpr dd {padding: 12px 0; font-size: 16px;}
#modal-body dl.hotelpr dd span {display: block; padding-bottom: 5px;}
#modal-body dl.hotelpr dd a {color: #1D54BB; text-decoration: underline;}
#modal-body dl.hotelpr dd a:hover {text-decoration: none;}
#modal-body .link{font-size: 13px;margin: 0 0 16px;z-index: 11;line-height: 1.5;position: relative;z-index: 2;width: 100%;}
#modal-body .link span{display: block;}
#modal-body .link a {color: #1D54BB; text-decoration: underline;}
#modal-body .link a:hover {text-decoration: none;}
#modal-body input {opacity: 0;cursor: pointer; margin: 0;z-index: 90; pointer-events: none;width: 0;}


#modal-body .spot {color: #E74247; font-weight: bold; font-size: 16px; border: 2px solid #E74247; padding: 8px 16px; border-radius: 100rem;cursor: pointer;font-style: normal;white-space: nowrap; display: inline-block;margin-bottom: 16px;}
#modal-body .checkedbox .spot{color: #fff;background: #E74247;}
#modal-body .checkedbox:after{position: absolute; content: ''; left: 0; right: 0; bottom: 0; top: 0; background: rgba(250,221,224,.6); z-index: 3;}
#modal-body  .checkedbox:before{position: absolute; content: url(../images/checked.png); left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 4;}

.viewOnly ul.voteform li .catMain input{display: none;}
.viewOnly  .catName label{display: none !important;}



.resultsPage ul.voteform li{width: 100%;margin-bottom: 40px;}
.resultsPage ul.voteform li img{border-radius: 10px;}
.resultsPage #vote{margin: 24px;}
.resultsPage ul.voteform li .catMain{display: none !important;}
.resultsPage .catDetails{display: block !important;position: static;border: none;}
.resultsPage ul.voteform li{position: relative;padding-top: 48px;}
.resultsPage .catName, .resultsPage .catCheck{position: static;padding: 0;}
.resultsPage .catName .link{margin: 0;}
.resultsPage .catName .link a{text-decoration: underline !important; color: #1D54BB !important;}
.resultsPage ul.voteform li h3{position: absolute; top: 0;left: 50%; transform: translateX(-50%); background-image: url(../images/rank.svg); background-repeat: no-repeat; padding: 2px 16px 0 48px;line-height: 42px;height: 42px;white-space: nowrap;font-size: 24px;background-size: 40px auto; box-sizing: border-box;}
.resultsPage ul.voteform li:nth-of-type(2) h3{background-position: 0 -40px;}
.resultsPage ul.voteform li:nth-of-type(3) h3{background-position: 0 -80px;}
.resultsPage ul.voteform li:nth-of-type(4) h3{background-position: 0 -80px;}
/* .resultsPage ul.voteform li:nth-of-type(4) h3{background-position: 0 -120px;} */
.resultsPage ul.voteform li:nth-of-type(5) h3{background-position: 0 -160px;}
.resultsPage ul.voteform li:nth-of-type(6) h3{background-position: 0 -200px;}
.resultsPage ul.voteform li:nth-of-type(7) h3{background-position: 0 -240px;}
.resultsPage ul.voteform li:nth-of-type(8) h3{background-position: 0 -280px;}
.resultsPage ul.voteform li:nth-of-type(9) h3{background-position: 0 -320px;}
.resultsPage ul.voteform li:nth-of-type(10) h3{background-position: 0 -360px;}
.resultsPage ul.voteform li:nth-of-type(11) h3{background-position: 0 -400px;}
.resultsPage ul.voteform li:nth-of-type(12) h3{background-position: 0 -440px;}
.resultsPage ul.voteform li:nth-of-type(13) h3{background-position: 0 -480px;}
.resultsPage ul.voteform li:nth-of-type(14) h3{background-position: 0 -520px;}
.resultsPage ul.voteform li:nth-of-type(15) h3{background-position: 0 -560px;}
.resultsPage ul.voteform li:nth-of-type(16) h3{background-position: 0 -600px;}
.resultsPage ul.voteform li:nth-of-type(17) h3{background-position: 0 -640px;}
.resultsPage ul.voteform li:nth-of-type(18) h3{background-position: 0 -680px;}
.resultsPage ul.voteform li:nth-of-type(19) h3{background-position: 0 -680px;}
/* .resultsPage ul.voteform li:nth-of-type(19) h3{background-position: 0 -720px;} */
.resultsPage ul.voteform li:nth-of-type(20) h3{background-position: 0 -760px;}
.resultsPage ul.voteform li:nth-of-type(21) h3{background-position: 0 -760px;}
.resultsPage ul.voteform li:nth-of-type(n+22){display: none;}

.resultsPage .catCheck{display: flex;flex-direction: column;line-height: 1.5;}
.resultsPage .catCheck .hotelpr{order: 1;padding: 0;}
.resultsPage .catCheck .hotelpr dt{display: none;}
.resultsPage .catCheck .hotelpr dd:first-of-type{font-weight: bold;padding: 16px 0 8px;}
.resultsPage .catCheck .catName{order: 2;}

.resultsPage #vote ul.voteform li:nth-of-type(-n+4){display: none;}

.resultsPage ul.voteform.rankList{margin-bottom: 0;}
.resultsPage ul.voteform.rankList li{background-image: url(../images/ribon_sp.png), linear-gradient(to bottom, #fff 0%, #FFE5E8 56%);background-repeat: no-repeat,no-repeat; background-position:center top, 0 0;background-size: 100% auto, 100% auto; padding: 0 24px 56px;position: relative;margin-bottom: 24px;}
.resultsPage ul.voteform.rankList li:after{position: absolute;content: '';width: 100%; aspect-ratio: 320 / 20; background: url(../images/wave_sp.png) no-repeat center bottom / 100%; left: 0; bottom: 0;}
.resultsPage ul.voteform.rankList li h3{background: none;position: static; height: auto;padding: 0;margin-bottom: 16px;width: 100%;transform: none;display: flex;justify-content: center;}
.resultsPage ul.voteform.rankList li h3 img{width: 100px;}

.resultsPage ul.voteform.rankList li .userComment{font-size: 14px;margin-top: 16px;line-height: 1.5;order: 3;}
.resultsPage ul.voteform.rankList li .catWaku{background: #fff;border-radius: 16px;box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);padding: 16px;}
.resultsPage ul.voteform.rankList li .catName{justify-content: center;padding: 0 0 16px;}
.resultsPage ul.voteform.rankList li .catName2{justify-content: flex-start;padding: 0;}
.resultsPage ul.voteform.rankList li .catName .link{text-align: center;}
.resultsPage ul.voteform.rankList li .catName .link strong{display: block;font-size: 18px;}
.resultsPage ul.voteform.rankList li .catName .link a{color: #333 !important;text-decoration: none !important;font-size: 0;display: block;}
.resultsPage ul.voteform.rankList li .catName .link2{font-size: 14px;}
.resultsPage ul.voteform.rankList li .catName .link2 span{display: block;}
.resultsPage ul.voteform.rankList li .catName .link2 a{color: #1D54BB !important;text-decoration: underline !important;}

.rankBox h2{margin-bottom: 32px;padding: 0 16px;}
.rankBox h2 span{background: url(../images/h2_results_bg_sp.png) no-repeat center;display: flex;justify-content: center;align-items: center;text-align: center;font-size: 23px;color: #E74247;font-family: 'Kosugi Maru', sans-serif;width: 100%;aspect-ratio: 736 / 185;box-sizing: border-box;padding-top: 5%;}

.palace{padding:48px 24px 24px;border: 4px solid #D38D23;margin: 0 16px 80px;position: relative;}
.palace div:first-of-type img{width:156px;position: absolute;top: -27px;left: 50%;transform: translateX(-50%);}
.palace div:first-of-type p{font-size: 14px; color: #D38D23;margin-bottom: 8px;}
.palace div:nth-of-type(2) img{width: 100%;display: block;border-radius: 10px;margin-bottom: 12px;}

.palace .palaceName{font-size: 22px;margin-bottom: 8px;font-weight: bold;text-align: center;}
.palace div:nth-of-type(3) .comment {font-size: 14px;margin-bottom: 12px;}
.palace div:nth-of-type(3) .comment em{font-size: 16px;font-weight: bold;font-style: normal;color: #D38D23;display: block;margin-bottom: 8px;}
.palace div:nth-of-type(3) .link{font-size: 13px;}
.palace div:nth-of-type(3) .link span{display: block;}
.palace div:nth-of-type(3) .link a{color: #1D54BB !important; text-decoration: underline !important;}

.goVote {position: relative;padding: 0 24px 56px;margin-bottom: 56px;}
.goVote a{display: block; position: relative; margin: 0 auto; border: 2px solid #333; box-sizing: border-box; font-size: 18px; color: #333; padding: 16px 64px 16px 24px; text-align: center;}
.goVote a:before{position: absolute; content: ''; width: 12px; height: 12px; border-top: 1px solid #333; border-right: 1px solid #333; transform: rotate(45deg); right: 32px; top: 50%; margin-top: -6px;}
.goVote:after{position: absolute; content: '';bottom: 0; left: 50%; transform: translateX(-50%); width:195px; height: 1px; background: #ccc;}
.goVote a:hover{text-decoration: none !important; opacity: .8;}

.commentBox textarea {
  font-size: 16px !important;
  -webkit-text-size-adjust: 100% !important;
}