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

  Site Common Modules Modify

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .cmn-notice-list
----------------------------------------------------------------- */
.lp-area .cmn-notice-list{
margin-right:12px;
margin-left:12px;
}

.lp-contents-footer .cmn-seo-link + .cmn-notice-list{
margin-top:4px;
}


/* ----------------------------------------------------------------
  .cmn-seo-link
----------------------------------------------------------------- */
.cmn-seo-link{
margin:0;
padding:0 10px;
border-top:8px solid #666;
background-color:#eee;
}

.cmn-seo-link .cmn-seo-link-hdg{
padding:14px 10px 10px;
font-weight:normal;
font-size:18px;
background-color:transparent;
}

/* .lp-area > .cmn-seo-link
----------------------------------------------------------------- */
.lp-area .cmn-seo-link{
border-top:12px solid #bbb;
background-color:#f5f5f5;
}

/* .lp-contents-footer > .cmn-seo-link
----------------------------------------------------------------- */
.lp-contents-footer .cmn-seo-link{
margin:0;
padding:0 0 1px;
border-top:1px solid #ddd;
box-shadow:none;
background-color:transparent;
}

.lp-contents-footer .cmn-seo-link-hdg{
margin:0;
padding:0;
border-top:none;
min-height:44px;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
}

.lp-contents-footer .cmn-seo-link .cmn-seo-link-list > li:first-child > a{
padding-top:0;
}

.lp-contents-footer .cmn-seo-link .cmn-seo-link-list > li:last-child > a{
padding-bottom:0;
border-bottom:none;
}

.lp-contents-footer .cmn-seo-link-toggle-active{
margin:0 -2px 16px;
padding:12px;
border-radius:6px;
box-shadow:0 0 4px rgba(0,0,0,.3);
background-color:#fff;
}

.lp-contents-footer .lp-panel[aria-expanded=true] + script + .cmn-seo-link{
border-top-color:transparent;
}



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

  Menu Common Modules Modify

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .pager
----------------------------------------------------------------- */
.lp .search-result .pager{
margin:0;
padding:10px 10px 20px;
border-bottom:8px solid #666;
background-color:#eee;
}



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

  LP Common Modules

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
/* .lp-hdg-l2
----------------------------------------------------------------- */
.lp .lp-hdg-l2{
margin:12px 0 -4px;
line-height:1.35;
font-size:16px;
font-weight:normal;
}


/* ----------------------------------------------------------------
/* .lp-br
----------------------------------------------------------------- */
.lp .lp-br{
display:block;
}


/* ----------------------------------------------------------------
/* .lp-hidden
----------------------------------------------------------------- */
.lp .lp-hidden{
overflow:hidden;
position:absolute;
height:0;
}


/* ----------------------------------------------------------------
/* .lp-notice-list
----------------------------------------------------------------- */
.lp-notice-list{
color:var(--cmn-font-color-gray);
font-size:12px;
}

.lp-notice-list > li{
display:-webkit-box;
display:flex;
}

.lp-notice-list > li:not(:first-child){
margin-top:4px;
}

.lp-notice-list > li > span{
margin-right:8px;
}

.lp-notice-list > li > div{
-webkit-box-flex:1;
flex:1;
}

/* ----------------------------------------------------------------
/* .lp-bg-ctrl
----------------------------------------------------------------- */
.lp .lp-bg-ctrl{
margin:-1px -10px;
padding:1px 10px;
background-color:#f5f5f5;
}




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

  LP Header

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-header
----------------------------------------------------------------- */
.lp .lp-header{
margin:-10px -10px 0;
padding:0 10px 12px;
color:#fff;
overflow:hidden;
background:#2a2a2a url(/element_sp/shared/images/frame/bg-secondary.jpg) repeat 0 0;
background-size:100% auto;
font-size:12px;
}

.lp-header p{
margin:0;
}

.lp .lp-header > :last-child{
margin-bottom:0;
}


/* ----------------------------------------------------------------
  .lp-header-kv
----------------------------------------------------------------- */
.lp .lp-header-kv{
margin:0 -10px 12px;
position:relative;
overflow:hidden;
z-index:1;
}


/* ----------------------------------------------------------------
  .lp-header-kv-hdg
----------------------------------------------------------------- */
.lp .lp-header-kv-hdg{
padding:0 8px;
color:#fff;
line-height:1.35;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
height:134px;
text-shadow:0 3px 6px #000;
font-size:24px;
font-weight:normal;
text-align:center;
}

.lp .lp-header-kv-hdg.branch{
min-height:86px;
height:auto;
font-size:22px;
}


/* ----------------------------------------------------------------
  .lp-header-kv-sup
----------------------------------------------------------------- */
.lp .lp-header-kv-sup{
margin:0 36px 28px;
padding:12px;
border-radius:6px;
color:var(--cmn-font-color-base);
background-color:rgba(255,255,255,.85);
}


/* ----------------------------------------------------------------
  .lp-header-kv-image
----------------------------------------------------------------- */
.lp .lp-header-kv-image{
position:absolute;
top:0;
left:0;
z-index:-1;
width:100%;
height:100%;
overflow:hidden;
}

.lp .lp-header-kv-image::before{
content:'';
display:block;
width:100%;
height:35px;
overflow:hidden;
position:absolute;
bottom:0;
left:0;
background:linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,.1) 20%, rgba(0,0,0,.4) 60%, rgba(0,0,0,.7) 100%);
}

.lp .lp-header-kv-image img{
width:100%;
height:100%;
object-fit:cover;
}


/* ----------------------------------------------------------------
  .lp-header-kv-image-sup
----------------------------------------------------------------- */
.lp .lp-header-kv-image-sup{
color:rgba(255,255,255,.7);
position:absolute;
bottom:6px;
right:12px;
white-space:nowrap;
font-size:10px;
}


/* ----------------------------------------------------------------
  .lp-header-list
----------------------------------------------------------------- */
.lp .lp-header-list{
margin:8px 0 0;
line-height:1.3;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
text-align:center;
}

.lp .lp-header-list > li{
padding:0 14px;
border-right:1px solid #e5e5e5;
}

.lp .lp-header-list > li:first-child{
padding-left:0;
}

.lp .lp-header-list > li:last-child{
padding-right:0;
border-right:none;
}


/* ----------------------------------------------------------------
  .lp-header-btn-search
----------------------------------------------------------------- */
.lp .lp-header-btn-search{
margin:8px auto 0;
padding:4px 12px 4px 32px;
border:none;
border-radius:4px;
display:block;
min-height:38px;
background:#fff url(/element_sp/j_traindp/shared/images/icon-search.svg) 12px 47% no-repeat;
background-size:14px auto;
font-size:12px;
}




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

  LP Contents

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-contents
----------------------------------------------------------------- */
.lp .lp-contents{
margin:0 -10px -10px;
padding-bottom:24px;
background-color:#bbb;
}


/* ----------------------------------------------------------------
  .lp-contents-footer
----------------------------------------------------------------- */
.lp .lp-contents-footer{
margin: 0 -10px -10px;
padding:0 10px 24px;
background-color:#f5f5f5;
}



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

  LP Panel Layout

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel
----------------------------------------------------------------- */
.lp .lp-panel{
padding:0 12px;
background-color:#f5f5f5;
font-size:12px;
}

.lp .lp-panel > :last-child{
margin-bottom:0;
}

/* .lp-contents > .lp-panel
----------------------------------------------------------------- */
.lp .lp-contents .lp-panel{
box-shadow:0 0 4px rgba(0,0,0,.35);
background-color:#f5f5f5;
}

.lp .lp-contents .lp-panel + .lp-panel{
margin-top:12px;
}

/* .lp-contents-footer > .lp-panel
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel{
padding:0;
border-top:1px solid transparent;
}

.lp .lp-contents-footer .lp-panel[aria-expanded]{
border-top-color:#ddd;
}

.lp-contents-footer .lp-recommend.lp-panel[aria-expanded]{
border-bottom:1px solid #ddd;
}

.lp .lp-contents-footer .lp-panel[aria-expanded=true]{
border-color:transparent;
}

.lp-contents-footer .lp-panel[aria-expanded=false] + .lp-panel[aria-expanded=true]{
border-top-color:#ddd;
}


/* ----------------------------------------------------------------
  .lp-panel-header
----------------------------------------------------------------- */
/*.lp-panel-header
----------------------------------------------------------------- */
.lp .lp-panel-header{
padding:10px 0;
box-sizing:border-box;
min-height:48px;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
}

.lp .lp-panel[aria-expanded] .lp-panel-header{
padding-right:20px;
background:url(/element/j_traindp/shared/images/icon-arrow-down.svg) no-repeat calc(100% - 4px) 50%;
background-size:16px auto;
}

.lp .lp-panel[aria-expanded=true] .lp-panel-header{
background-image:url(/element/j_traindp/shared/images/icon-arrow-up.svg);
}

/* .lp-contents-footer > .lp-panel-header
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-header{
min-height:44px;
}

/*.lp-panel-header-hdg
----------------------------------------------------------------- */
.lp .lp-panel-header-hdg{
line-height:1.35;
font-size:18px;
font-weight:normal;
}


/* ----------------------------------------------------------------
  .lp-panel-contents
----------------------------------------------------------------- */
.lp .lp-panel-contents{
padding-bottom:12px;
}

.lp-panel-contents > :first-child{
margin-top:0;
}

.lp-panel-contents > :last-child{
margin-bottom:0;
}

/* .lp-panel-contents toggle pattern
----------------------------------------------------------------- */
.lp .lp-panel[aria-expanded=false] .lp-panel-contents{
display:none;
}

.lp .lp-panel[aria-expanded=true] .lp-panel-contents{
display:block;
}

/* .lp-contents-footer>.lp-panel > .lp-panel-contents
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel:not(.lp-cheapest) .lp-panel-contents{
margin:0 -2px 16px;
padding:12px;
border-radius:6px;
box-shadow:0 0 4px rgba(0,0,0,.3);
background-color:#fff;
}



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

  LP Panel Common Modules

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-sup
----------------------------------------------------------------- */
.lp .lp-panel-sup{
margin:8px 0 0;
font-size:14px;
text-align:right;
}


/* ----------------------------------------------------------------
  .lp-panel-icon-rank
----------------------------------------------------------------- */
.lp .lp-panel-icon-rank{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
width:22px;
height:26px;
overflow:hidden;
position:absolute;
top:0;
left:8px;
z-index:1;
line-height:1;
transform:translateZ(0);
filter:drop-shadow(rgba(0,0,0,.5) 0 1px 1px);
background:url(/element_sp/j_traindp/lp/images/icon-ranking.svg) 0 0 no-repeat;
font-size:14px;
font-weight:normal;
}

.lp .lp-panel-icon-rank > span{
overflow:hidden;
position:absolute;
height:0;
}

/* .lp-panel-ranking-area > .lp-panel-icon-rank
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area .lp-panel-icon-rank{
width:20px;
height:24px;
top:8px;
}


/* ----------------------------------------------------------------
  .lp-panel-list
----------------------------------------------------------------- */
.lp .lp-panel-list{
margin-bottom:-8px;
font-size:14px;
}

.lp .lp-panel-list > li > a{
padding:8px 0;
border-top:1px solid #ccc;
color:var(--cmn-font-color-base);
box-sizing:border-box;
min-height:42px;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
}

/* .lp-contents-footer > .lp-panel-list
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-list:first-child{
margin-top:-12px;
}

.lp .lp-contents-footer .lp-panel-list > li:first-child > a{
border-top:none;
}


/* ----------------------------------------------------------------
  .lp-panel-list-bullet
----------------------------------------------------------------- */
.lp .lp-panel-list-bullet > li{
margin-top:2px;
padding-left:10px;
position:relative;
}

.lp .lp-panel-list-bullet > li::before{
content:'';
border-radius:1px;
display:block;
width:2px;
height:2px;
overflow:hidden;
position:absolute;
top:.64em;
left:0;
background-color:var(--cmn-font-color-base);
}


/* ----------------------------------------------------------------
  .lp-panel-list-toggle
----------------------------------------------------------------- */
.lp .lp-panel-list-toggle{
margin:0;
font-size:14px;
}

.lp .lp-panel-list-toggle > li{
border-top:1px solid #e5e5e5;
}

.lp .lp-panel-list-toggle > li > button{
margin-bottom:-1px;
padding:4px 0;
border:none;
border-bottom:1px solid #e5e5e5;
color:var(--cmn-font-color-base);
width:100%;
font-size:14px;
position:relative;
min-height:40px;
background:url(/element/j_traindp/shared/images/icon-arrow-down.svg) calc(100% - 4px) 50% no-repeat;
background-size:16px auto;
text-align:left;
}

.lp .lp-panel-list-toggle > li:last-child > button{
border-bottom:none;
}

.lp .lp-panel-list-toggle > li.is-active > button{
border-bottom:none;
background-image:url(/element/j_traindp/shared/images/icon-arrow-up.svg);
}

.lp .lp-panel-list-toggle > li > ul{
margin:0 0 0 28px;
display:none;
}

.lp .lp-panel-list-toggle > li > ul > li{
border-top:1px solid #e5e5e5;
}

.lp .lp-panel-list-toggle > li > ul a{
padding:8px 0;
color:var(--cmn-font-color-base);
box-sizing:border-box;
min-height:40px;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
}

.lp .lp-panel-list-toggle > li.is-active > ul{
display:block;
}

.lp .lp-panel-contents > .lp-panel-list-toggle:last-child{
margin-bottom:-12px;
}


/* ----------------------------------------------------------------
  .lp-panel-list-thumb
----------------------------------------------------------------- */
.lp .lp-panel-list-thumb{
margin:-8px 0;
}

.lp .lp-panel-list-thumb > li:not(:first-child){
border-top:1px solid #ccc;
}

.lp .lp-panel-list-thumb > li > a{
padding:8px 0;
color:var(--cmn-font-color-base);
display:-webkit-box;
display:flex;
-webkit-box-orient:horizontal;
-webkit-box-direction:reverse;
flex-direction:row-reverse;
}

.lp .lp-panel-list-thumb > li > a > span{
margin-right:8px;
width:72px;
height:54px;
}

.lp .lp-panel-list-thumb > li > a > div{
-webkit-box-flex:1;
flex:1;
}

.lp .lp-panel-list-thumb img{
width:100%;
height:100%;
object-fit:cover;
vertical-align:bottom;
}

/* .lp-contents-footer > .lp-panel-list-thumb
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-list-thumb:first-child{
margin-top:-12px;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-toggle
----------------------------------------------------------------- */
/* .lp-panel-ranking-toggle
----------------------------------------------------------------- */
.lp .lp-panel-ranking-toggle{
margin-top:12px;
}

/* .lp-panel-ranking-toggle-hook
----------------------------------------------------------------- */
.lp .lp-panel-ranking-toggle-hook{
margin:0 0 0 auto;
padding:0 0 0 12px;
border:none;
background:url(/element_sp/j_traindp/shared/images/icon-arrow-down.svg) 0 50% no-repeat;
background-size:8px auto;
display:block;
font-size:14px;
}

.lp .lp-panel-ranking-toggle[aria-expanded=true] .lp-panel-ranking-toggle-hook{
margin-top:12px;
background-image:url(/element_sp/j_traindp/shared/images/icon-arrow-up.svg);
}

/* .lp-panel-ranking-toggle-content
----------------------------------------------------------------- */
.lp .lp-panel-ranking-toggle-content{
display:none;
}

.lp .lp-panel-ranking-toggle[aria-expanded=true] .lp-panel-ranking-toggle-content{
display:block;
}




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

  .lp-panel-cheapest

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-cheapest
----------------------------------------------------------------- */
.lp .lp-panel-cheapest{
padding:12px;
border:1px solid #ccc;
border-radius:4px;
background-color:#fff;
font-size:14px;
}

.lp .lp-panel-cheapest > :last-child{
margin-bottom:0;
}

/* .lp-contents-footer > .lp-panel-cheapest
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-cheapest{
margin:0 -2px;
border:none;
border-radius:6px;
box-shadow:0 0 4px rgba(0,0,0,.3);
}


/* ----------------------------------------------------------------
  .lp-panel-cheapest-tbl
----------------------------------------------------------------- */
.lp .lp-panel-cheapest-tbl{
margin:0;
border-collapse:collapse;
border-spacing:0;
width:100%;
table-layout:fixed;
line-height:1.25;
text-align:center;
font-size:12px;
}

.lp .lp-panel-cheapest-tbl caption{
margin-bottom:20px;
}

.lp .lp-panel-cheapest-tbl caption > span{
display:block;
text-align:left;
}

.lp .lp-panel-cheapest-tbl caption > span:first-child{
margin-bottom:8px;
}

.lp .lp-panel-cheapest-tbl th,
.lp .lp-panel-cheapest-tbl td{
padding:4px 0;
border-bottom:1px solid #e5e5e5;
font-weight:normal;
}

.lp .lp-panel-cheapest-tbl thead th{
padding:0 0 8px;
text-align:center;
}

.lp .lp-panel-cheapest-tbl thead th > span{
display:block;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) thead tr > th:first-child{
width:33%;
text-align:left;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) thead th:nth-child(2){
width:20%;
}

.lp .lp-panel-cheapest-tbl td > span{
display:inline-block;
min-width:6.5em;
text-align:right;
}

.lp .lp-panel-cheapest-tbl tbody th{
text-align:left;
}

.lp .lp-panel-cheapest-tbl tbody th,
.lp .lp-panel-cheapest-tbl tbody td{
font-weight:normal;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) thead th:nth-of-type(2){
width:60px;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) thead th:nth-of-type(4){
width:82px;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) td:nth-of-type(1){
text-align:left;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) td:nth-of-type(3){
text-align:right;
}

.lp .lp-panel-cheapest-tbl:not(.lp-panel-cheapest-tbl-toggle) td:nth-of-type(3) > span{
text-align:center;
}


/* ----------------------------------------------------------------
  .lp-panel-cheapest-tbl-toggle
----------------------------------------------------------------- */
.lp .lp-panel-cheapest-tbl-toggle{
font-size:14px;
}

.lp .lp-panel-cheapest-tbl-toggle th,
.lp .lp-panel-cheapest-tbl-toggle td{
padding:12px 0;
}

.lp .lp-panel-cheapest-tbl-toggle td > span{
min-width:65px;
}

.lp .lp-panel-cheapest-tbl-toggle thead tr > th:first-child{
width:30%;
}

.lp .lp-panel-cheapest-tbl-toggle tbody > tr:last-child th,
.lp .lp-panel-cheapest-tbl-toggle tbody > tr:last-child td{
border-bottom:none;
}

.lp .lp-panel-cheapest-tbl-toggle .is-hidden{
display:none;
}

/*  .lp-panel-cheapest-tbl-toggle-btn
----------------------------------------------------------------- */
.lp .lp-panel-cheapest-tbl-toggle-btn{
margin-bottom:12px;
padding-top:12px;
}

.lp .lp-panel-cheapest-tbl-toggle-btn button{
margin:0 0 0 auto;
padding:0 0 0 15px;
border:none;
color:var(--cmn-font-color-base);
display:block;
background: url(/element/j_traindp/shared/images/icon-arrow-down.svg) 0 50% no-repeat;
background-size:9px auto;
font-size:14px;
}

.lp .lp-panel-cheapest-tbl-toggle-btn.is-active{
border-top: 1px solid #e5e5e5;
}

.lp .lp-panel-cheapest-tbl-toggle-btn.is-active button{
background-image: url(/element/j_traindp/shared/images/icon-arrow-up.svg);
}



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

  .lp-panel-ranking-hotel

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item{
padding:12px;
border:1px solid #ccc;
border-radius:4px;
position:relative;
overflow:hidden;
line-height:1.35;
background-color:#fff;
}

.lp .lp-panel-ranking-hotel-item + .lp-panel-ranking-hotel-item{
margin-top:12px;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-header
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header{
display:-webkit-box;
display:flex;
flex-direction:row-reverse;
}

.lp .lp-panel-ranking-hotel-item-header > div:first-child{
-webkit-box-flex:1;
flex:1;
}

.lp .lp-panel-ranking-hotel-item-header p{
margin:8px 0 0;
display:-webkit-box;
-webkit-line-clamp:3;
-webkit-box-orient:vertical;
overflow:hidden;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-header-hdg
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header-hdg{
margin-bottom:8px;
font-size:16px;
font-weight:normal;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-header-review
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header-review{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
flex-wrap:wrap;
gap:2px 12px;
}

.lp .lp-panel-ranking-hotel-item-header-review > .is-hidden{
visibility:hidden;
}

.lp .lp-panel-ranking-hotel-item-header-review > .icon-r-price > span{
width:56px;
}

.lp .lp-panel-ranking-hotel-item-header-review .icon-review{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
}

.lp .lp-panel-ranking-hotel-item-header-review .icon-review > span:first-child{
margin-right:4px;
color:rgba(0,0,0,0);
width:10px;
height:10px;
overflow:hidden;
background:url(/element/shared/images/icon/icon-review-5.svg) 0 0 no-repeat;
background-size:auto 10px;
}

.lp .lp-panel-ranking-hotel-item-header-review .icon-review > span:last-child{
-webkit-box-flex:1;
flex:1;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-header-area
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header-area{
margin-top:8px;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-header-thumb
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header-thumb{
margin:-12px 12px 0 -12px;
border-bottom-right-radius:5px;
width:100px;
height:130px;
overflow:hidden;
box-sizing:border-box;
}

.lp .lp-panel-ranking-hotel-item-header-thumb img{
width:100%;
height:100%;
object-fit:cover;
}

/* .lp-panel-ranking-hotel-item-header-thumb.no-photo
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-header-thumb.no-photo{
border-width:0 1px 1px 0;
border-style:solid;
border-color:#eee;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
background-color:#fcfcfc;
}

.lp .lp-panel-ranking-hotel-item-header-thumb.no-photo img{
display:block;
width:90px;
height:auto;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-schedule
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-schedule{
margin:8px 0 0;
display:-webkit-box;
display:flex;
flex-wrap:wrap;
}

.lp .lp-panel-ranking-hotel-item-schedule > li{
display:-webkit-box;
display:flex;
}

.lp .lp-panel-ranking-hotel-item-schedule > li:not(:first-child){
margin-top:4px;
}

.lp .lp-panel-ranking-hotel-item-schedule > li > div:first-child{
padding-right:1em;
width:2.15em;
position:relative;
}

.lp .lp-panel-ranking-hotel-item-schedule > li > div:first-child::after{
content:"\ff1a";
display:block;
position:absolute;
top:0;
right:0;
}

.lp .lp-panel-ranking-hotel-item-schedule > li > div:last-child{
-webkit-box-flex:1;
flex:1;
}

.lp .lp-panel-ranking-hotel-item-schedule .depart{
margin-right:16px;
}

.lp .lp-panel-ranking-hotel-item-schedule .date,
.lp .lp-panel-ranking-hotel-item-schedule .stay{
width:100%;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-price
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-price{
margin-top:8px;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:end;
justify-content:flex-end;
text-align:right;
}

.lp .lp-panel-ranking-hotel-item-price span{
margin-left:8px;
}

.lp .lp-panel-ranking-hotel-item-price b{
font-size:18px;
}

.lp .lp-panel-ranking-hotel-item-price.unknown{
color:var(--cmn-font-color-gray);
}

.lp .lp-panel-ranking-hotel-item-price.unknown span{
margin-left:4px;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-hotel-item-link
----------------------------------------------------------------- */
.lp .lp-panel-ranking-hotel-item-link{
margin-top:12px;
}

.lp .lp-panel-ranking-hotel-item-link a{
padding:5px 8px 3px;
border:1px solid #ccc;
border-radius:4px;
color:var(--cmn-font-color-base);
line-height:1.2;
display:block;
text-align:center;
}

.lp .lp-panel-ranking-hotel-item-link a > span{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
}

.lp .lp-panel-ranking-hotel-item-link a > span > span{
white-space:nowrap;
}

.lp .lp-panel-ranking-hotel-item-link a > span > span:first-child{
overflow:hidden;
text-overflow:ellipsis;
}




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

  .lp-panel-ranking-area

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-ranking-area-item
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area-item{
border:1px solid #ccc;
border-radius:4px;
position:relative;
overflow:hidden;
display:grid;
grid-template-rows:110px auto;
background-color:#fff;
}

.lp .lp-panel-ranking-area-item + .lp-panel-ranking-area-item{
margin-top:12px;
}

/* .lp-contents-footer > .lp-panel-ranking-area-item
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-ranking-area-item{
border:none;
border-bottom:1px solid #ddd;
border-radius:0;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-area-item-hdg
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area-item-hdg{
padding:2px 4px;
color:#fff;
position:absolute;
top:8px;
left:36px;
line-height:1.25;
background-color:rgba(0,0,0,.45);
font-size:16px;
font-weight:normal;
text-shadow:0 1px 4px #000;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-area-item-link
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area-item-link{
padding:12px;
grid-row:2 / 3;
overflow:hidden;
}

.lp .lp-panel-ranking-area-item-link a{
padding:5px 8px 3px;
border:1px solid #ccc;
border-radius:4px;
color:var(--cmn-font-color-base);
line-height:1.2;
display:block;
text-align:center;
}

.lp .lp-panel-ranking-area-item-link a > span{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
}

.lp .lp-panel-ranking-area-item-link a > span > span{
white-space:nowrap;
}

.lp .lp-panel-ranking-area-item-link a > span > span:first-child{
overflow:hidden;
text-overflow:ellipsis;
}



/* ----------------------------------------------------------------
  .lp-panel-ranking-area-item-thumb
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area-item-thumb{
box-sizing:border-box;
overflow:hidden;
grid-row:1 / 2;
}

.lp .lp-panel-ranking-area-item-thumb img{
width:100%;
height:100%;
object-fit:cover;
}

/* .lp-panel-ranking-area-item-thumb.no-photo
----------------------------------------------------------------- */
.lp .lp-panel-ranking-area-item-thumb.no-photo{
border-bottom:1px solid #eee;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
background-color:#fcfcfc;
}

.lp .lp-panel-ranking-area-item-thumb.no-photo img{
margin-bottom:-20px;
width:110px;
height:auto;
}




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

  .lp-panel-ranking-spot

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-ranking-spot-item
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item{
border:1px solid #ccc;
border-radius:4px;
line-height:1.35;
position:relative;
overflow:hidden;
display:grid;
grid-template-columns:100px 1fr;
grid-template-rows:auto;
background-color:#fff;
}

.lp .lp-panel-ranking-spot-item + .lp-panel-ranking-spot-item{
margin-top:12px;
}

/* .lp-contents-footer > .lp-panel-ranking-area-item
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-ranking-spot-item{
border:none;
border-bottom:1px solid #ddd;
border-radius:0;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-spot-item-data
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-data{
padding:12px;
grid-column:2 / 3;
grid-row:1 / 2;
}

.lp .lp-panel-ranking-spot-item-data > p{
margin:0;
display:-webkit-box;
-webkit-line-clamp:2;
-webkit-box-orient:vertical;
overflow:hidden;
}

/* .lp-contents-footer > .lp-panel-ranking-spot-item-data
------------------------------------------- */
.lp .lp-contents-footer .lp-panel-ranking-spot-item-data{
padding:0 0 12px 12px;
}

/*.lp-panel-ranking-spot-item-data-hdg
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-data-hdg{
margin-bottom:4px;
font-size:16px;
font-weight:normal;
}

/*.lp-panel-ranking-spot-item-data-hdg
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-data-link-more{
margin:4px 0 0 auto;
display:block;
width:fit-content;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-spot-item-link
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-link{
padding:0 12px 12px;
grid-column:1 / 3;
grid-row:2 / 3;
}

.lp .lp-panel-ranking-spot-item-link a{
padding:5px 8px 3px;
border:1px solid #ccc;
border-radius:4px;
color:var(--cmn-font-color-base);
line-height:1.2;
display:block;
text-align:center;
}

.lp .lp-panel-ranking-spot-item-link a > span{
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
}

.lp .lp-panel-ranking-spot-item-link a > span > span{
white-space:nowrap;
}

.lp .lp-panel-ranking-spot-item-link a > span > span:first-child{
overflow:hidden;
text-overflow:ellipsis;
}


/* ----------------------------------------------------------------
  .lp-panel-ranking-spot-item-thumb
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-thumb{
box-sizing:border-box;
height:78px;
border-bottom-right-radius:5px;
overflow:hidden;
grid-column: 1 / 2;
grid-row: 1 / 2;
}

.lp .lp-panel-ranking-spot-item-thumb img{
width:100%;
height:100%;
object-fit:cover;
}

/* .lp-panel-ranking-spot-item-thumb.no-photo
----------------------------------------------------------------- */
.lp .lp-panel-ranking-spot-item-thumb.no-photo{
border-width:0 1px 1px 0;
border-style:solid;
border-color:#eee;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
-webkit-box-pack:center;
justify-content:center;
background-color:#fcfcfc;
}

.lp .lp-panel-ranking-spot-item-thumb.no-photo img{
display:block;
width:76px;
height:auto;
}


/* .lp-contents-footer > .lp-panel-ranking-spot-item-thumb
------------------------------------------- */
.lp .lp-contents-footer .lp-panel-ranking-spot-item-thumb{
border-radius:0;
}



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

  .lp-panel-faq

----------------------------------------------------------------- */
/* ----------------------------------------------------------------
  .lp-panel-faq
----------------------------------------------------------------- */
.lp .lp-panel-faq{
margin-bottom:-12px;
}


/* ----------------------------------------------------------------
  .lp-panel-faq-item
----------------------------------------------------------------- */
.lp .lp-panel-faq-item{
border-top:1px solid #ccc;
}

/* .lp-contents-footer > .lp-panel-faq-item
----------------------------------------------------------------- */
.lp .lp-contents-footer .lp-panel-faq-item:first-child{
margin-top:-12px;
border-top:none;
}


/* ----------------------------------------------------------------
  .lp-panel-faq-item-hook
----------------------------------------------------------------- */
.lp .lp-panel-faq-item-hook{
padding:4px 24px 4px 24px;
border:none;
display:-webkit-box;
display:flex;
-webkit-box-align:center;
align-items:center;
box-sizing:border-box;
width:100%;
min-height:48px;
position:relative;
background-image:url(/element/j_traindp/shared/images/icon-faq-q.svg), url(/element/j_traindp/shared/images/icon-arrow-down.svg);
background-position:0 50%, calc(100% - 4px) 50%;
background-repeat:no-repeat;
background-size:11px auto, 16px auto;
text-align:left;
font-size:12px;
font-weight:normal;
}

.lp .lp-panel-faq-item[aria-expanded=true] .lp-panel-faq-item-hook{
background-image:url(/element/j_traindp/shared/images/icon-faq-q.svg), url(/element/j_traindp/shared/images/icon-arrow-up.svg);
}


/* ----------------------------------------------------------------
  .lp-panel-faq-item-content
----------------------------------------------------------------- */
.lp .lp-panel-faq-item-content{
padding:0 0 12px 24px;
display:none;
background:url(/element/j_traindp/shared/images/icon-faq-a.svg) 0 2px no-repeat;
background-size:11px auto;
}

.lp .lp-panel-faq-item-content > :first-child{
margin-top:0;
}

.lp .lp-panel-faq-item-content > :last-child{
margin-bottom:0;
}

.lp .lp-panel-faq-item[aria-expanded=true] > .lp-panel-faq-item-content{
display:block;
}

/* .lp-panel-faq-item-content-date
----------------------------------------------------------------- */
.lp .lp-panel-faq-item-content-date{
display:block;
text-align:right;
}
