@charset "utf-8";
/*
* ★★CSS for smartphone
* @date 2021.4
*/
.pc { display: none;}
#widewrapper, #contentsArea { width:100%; overflow:hidden; background:none; margin: 0; padding:0;}
ul.navi li a:hover,ul.areas li a:hover,ul.types li a:hover,.column1 #search-box p.searchSubmit a:hover,a.dtlbtn:hover,a.cpnbtn:hover { text-decoration: none !important;}
img { max-width: 100% !important; width:auto;}
.fltL { float: left;}
.fltR { float:right;}


#keyVisual   { width:100%; margin:0; margin-bottom:0; border-top: 10px solid #bf0000;}
#keyVisual h1{ width:90%; max-width: 630px; margin: 0 auto; text-indent:0; text-align: center; font-size: 0; padding:3% 5%;}

ul.navi { display: flex;flex-wrap: nowrap; justify-content:center;}
ul.navi li { padding: 0 5px; border-right: 1px solid #c4c4c4;}
ul.navi li a { display: block; position: relative; padding:30px 5px 0; line-height: 18px; font-size: 12px; color: #626262; font-weight: bold; white-space: nowrap; text-align: center;}
ul.navi li a:before { display: block; position:absolute; left: 50%; margin-left: -12px; top: 0; content: ""; width: 24px; height: 24px; background-image: url(../images/icon.png); background-repeat: no-repeat; background-size: 72px 48px;}
ul.navi li a.campain:before { background-position: -24px -24px;}
ul.navi li a.coupon:before { background-position: -24px 0;}
ul.navi li a.search:before { background-position: -48px -24px;}
ul.navi li a.area:before { background-position: 0 0;}
ul.navi li a.first:before { background-position: -48px 0;}
ul.navi li:last-child { border-right: 0;}


#contents.column1 { width: 100%; overflow: hidden; margin: 2% 0 0; padding: 0; background: #f0f2f8;}
.rcBox { width: calc(100% - 32px);margin: 24px auto 0; background: #fff; padding: 16px;}
.rcBox h2 { display: block; height: 24px; line-height: 24px; font-size: 19px; color: #333; padding-left: 32px; position: relative;}
.rcBox h2:before { display: block; position:absolute; left:0; top:0; content: ""; width: 24px; height: 24px; background-image: url(../images/icon.png); background-repeat: no-repeat; background-size: 72px 48px;}
.rcBox h2.campain:before { background-position: -24px -24px;}
.rcBox h2.coupon:before { background-position: -24px 0;}
.rcBox h2.search:before { background-position: -48px -24px;}
.rcBox h2.area:before { background-position: 0 0;}
.rcBox h2.first:before { background-position: -48px 0;}
.rcBox h2.hotels:before { background-position: 0 -24px;}


.swiper-container.jdsSwiper1 { width: 100%; margin: 0 !important; padding: 16px 0 16px 5px;}
.swiper-container.jdsSwiper1 .swiper-slide { width:80%; max-width: 300px;}
.swiper-container.jdsSwiper1 .swiper-slide a { display: block; padding:0 5px 5px;}
.swiper-container.jdsSwiper1 .swiper-slide img { display: block; box-shadow: 0 1px 3px #999;}


p.rearrange { font-size: 13px; color: #666; line-height: 24px; margin-top:16px;}
p.rearrange span { display: inline-block; padding: 5px 0; color: #1D54A7; margin: 0 0 0 8px;}
p.rearrange span.on { background: #E6752B; color: #fff; padding: 5px 10px;}
.column1 .hotels.swiper-wrapper { width: auto; margin: 16px 0 0; padding-bottom: 20px;}
.hotels div.box.swiper-slide  { width: 70%; max-width: 190px; margin-right: 16px; border: 1px solid #C3C3C3; border-radius: 5px; box-shadow: 1px 1px 3px #DDD; background:#fff;}
.hotels div.box a {  display:flex; align-items:center; justify-content: center; height: 106px; border-radius: 4px 4px 0 0; overflow: hidden;}
.hotels div.box a img  { height: 100%; flex-shrink: 1;}
.hotels div.box p.area { font-size: 13px; color: #777; padding: 10px 5px;}
.hotels div.box p.hotelname {font-weight: bold; font-size: 13px; color: #333; padding: 0 10px;}
.hotels div.box p.price { font-size: 13px; color: #333; padding: 10px;}
.hotels div.box p.price span { display: block; color: #bf0000; font-size: 30px; font-weight: bold; text-align: center; margin-top: 5px;}
.hotels div.box p.price span em { font-style: normal; font-size: 18px;}
a.dtlbtn { display: block; width: 90%; height: auto !important; margin: 0 auto; background: #0DBD0D; border-radius: 3px !important; box-shadow: 1px 1px 2px #BBB; color: #fff !important; font-weight: bold; font-size: 14px; padding: 10px 0; text-align: center;}
a.cpnbtn { display: block; width: 80%; height: auto !important; margin: 10px auto 15px; border: 1px solid #ccc; border-radius: 3px !important; box-shadow: 1px 1px 3px #EEE; color: #333; font-weight: bold; font-size: 12px; padding: 8px 0; text-align: center;}


p.notice { display: none; font-size: 13px; color: #747674; padding: 6px 6px 6px 24px; border: 1px solid #CCD4DC; border-radius: 3px; background: url(../images/inform.png) no-repeat 6px 50%; margin: 8px 0;}
.column1 #search-box { width: 100%; margin: 24px 0 0; border: none;  padding:16px 0;}
.column1 #search-box h2 { margin: 0 16px;}
.hasDatepicker,#search-box .inputDate { background: none !important; border: 0 !important; box-shadow: none !important; margin-bottom: 0 !important; min-height:32px !important;}
#search-box .structure.structure2 { width: calc(49% - 30px); margin: 0 0 16px; background: url(../images/calendar.png) no-repeat 5% 50% #fff;border-radius:5px; padding-left:30px; text-align: center;}
.column1 #search-box .structure dt.date { width:100%; font-size:12px; color: #666; padding-top: 10px; }
.column1 #search-box .structure dd.date { width:100%; margin: 0; padding: 0 0 5px; min-height:32px !important;}
.column1 #search-box .structure dd.date input { text-align: center;font-size:16px; padding: 0; min-height: 0; outline: none; font-weight: bold; line-height: 1.6;}
.column1 #search-box p.searchSubmit a{ display:block; clear: both; text-indent: 0; width: 240px; height: 46px; margin: 0 auto 8px; border-radius: 5px; background: url(../images/search_arr.png) no-repeat 95% 50% #bf0000; padding: 0; border: 0; font-size: 17px;line-height: 46px; color: #fff; font-weight: bold; box-shadow: none; text-shadow: none;}
#search-box-body { display: block;background: #D3D2D2; margin-top: 16px; overflow: hidden;}
#search-box #domestic-search-box { padding: 16px 16px 8px;}

#keyWord form { margin: 16px 0; overflow: hidden;}
#keyWord form input.keyword { display:block; width:calc(100% - 42px); height: 44px; border: 1px solid #333; border-radius: 5px; padding: 0 10px 4px; font-size: 16px !important;}
#keyWord form input.kyButton{ display:block; width: 110px; margin: 16px auto; height: 46px; border-radius: 5px; background: #bf0000; border: 0; font-size: 17px;line-height: 46px; color: #fff; font-weight: bold;} 

ul.areas { width: 99%; padding-left: 1%; margin: 16px 0 0; overflow: hidden;}
ul.areas li { width: 32%; min-height: 100px; float: left; margin-right: 1%; margin-bottom: 1%; background-repeat: no-repeat; background-size:cover; background-position: center center; border-radius: 5px;}
ul.areas li a { display: block; height: 100px; font-size: 16px; font-weight: bold; text-shadow: 0 1px 2px #333; padding: 6%; color: #fff !important;}
ul.areas li:last-child { background-color: #A1ACCD; background-size: auto; background-position: 90% 50%;}

ul.types { width: 99%; padding-left: 1%; margin: 16px 0 0; overflow: hidden;}
ul.types li { width: 32%; float: left; margin-right: 1%; text-align: center;}
ul.types li span { display: block; min-height: 100px; margin-bottom: 8px; background-repeat: no-repeat; background-size:cover; background-position: center center; border-radius: 5px;}
ul.types li em{ font-style: normal; white-space: nowrap;}
ul.types li a { display: block; font-size: 14px; color: #333;}
ul.types li img { max-width: 297px !important; width: 100%; margin-bottom: 16px;}


.ustep { max-width: 360px; margin: 20px auto 0; overflow: hidden;}
.ustep li { width: 100%; text-align: center; }
.ustep li p { display: block; font-size: 14px; text-align: left; color: #333; font-weight: bold; padding-left: 44px; height: 36px; line-height: 36px; margin: 10px 0;}
.ustep li p.lazybg { background-repeat: no-repeat; background-position: left center; background-size: 36px 36px;}
.ustep li img { width: 100%;max-width: 297px !important;}
p.note { margin: 20px 0; background: #f7f7f8; padding: 20px 16px; font-size: 12px; line-height: 24px;}

.other { display: block; margin: 40px 0;}
.other h3 { display: block; max-width: 350px; margin: 0 auto 16px; color: #404965; font-size: 16px; padding:0 2%;}
.other ul.bnr { display: flex;flex-wrap: wrap; justify-content:center; max-width: 360px; margin: 0 auto; overflow: hidden;}
.other ul.bnr li{ width: 46%; margin: 2%; float: left; text-align: center; font-size: 0;}
.other ul.bnr li.one { margin: 0 auto; float: none;}
.other ul.bnr li a { display: block;}
.other ul.bnr li img { width: 100%; max-width: 170px !important;}
.other ul.bnr.bdbtm { padding-bottom: 16px; margin-bottom: 16px;}

.links    { max-width: 360px; margin:16px auto; }
.links h3 { display: block; max-width: 360px; margin: 40px auto 16px; color: #333; font-size: 16px; padding: 0 2%;}
.links ul { overflow: hidden;}
.links ul li { width: 100%; float: left;}
.links ul li a { display: block; padding-left: 12px; font-size: 13px; line-height: 48px; color:#1d54a7 !important;}
.links ul li a:hover {color:#bf0000 !important;}

.toTop { position: fixed; bottom:10px; right:10px; width: 48px; height: 48px; z-index: 99;}
.toTop a{ display: block;}
.toTop img { width: 100%;}