@charset "utf-8";

/* =========================================================
 ホテルページ
========================================================= */
.jet-hotels-page{
--jh-sumi:#171117;
--jh-paper:#fffaf3;
--jh-white:#fff;
--jh-pink:#ff4f9a;
--jh-cyan:#4de8ff;
--jh-lime:#d8ff4f;
--jh-violet:#9e72ff;
--jh-yellow:#ffd449;
--jh-border:#e7dee4;
--jh-muted:#716a70;
--jh-shadow:0 16px 40px rgba(23,17,23,.10);
background:#fff;
color:var(--jh-sumi);
font-family:Arial,"Helvetica Neue",sans-serif;
}
.jet-hotels-page *{
box-sizing:border-box;
}
.jet-hotels-container{
width:min(1120px,calc(100% - 40px));
margin:0 auto;
}
.jet-hotels-hero{
background:linear-gradient(125deg,#fffaf3 0%,#fff 48%,#fff2f8 100%);
padding:76px 0 68px;
position:relative;
overflow:hidden;
}
.jet-hotels-hero:before{
content:"";
position:absolute;
width:320px;
height:320px;
border-radius:50%;
background:var(--jh-cyan);
filter:blur(100px);
opacity:.15;
right:-80px;
top:-100px;
}
.jet-hotels-hero:after{
content:"";
position:absolute;
width:260px;
height:260px;
border-radius:50%;
background:var(--jh-pink);
filter:blur(100px);
opacity:.15;
left:-80px;
bottom:-120px;
}
.jet-hotels-hero__inner{
width:min(920px,calc(100% - 40px));
margin:0 auto;
position:relative;
z-index:1;
}
.jet-hotels-kicker{
font-size:12px;
font-weight:900;
letter-spacing:.17em;
margin:0 0 12px;
color:#a92f69;
}
.jet-hotels-hero h1{
font-size:clamp(38px,6vw,72px);
line-height:.98;
letter-spacing:-.045em;
margin:0;
max-width:850px;
color:var(--jh-sumi);
}
.jet-hotels-hero__lead{
font-size:18px;
line-height:1.75;
max-width:720px;
margin:28px 0 0;
color:#4b454a;
}
.jet-hotels-hero__actions{
display:flex;
gap:12px;
flex-wrap:wrap;
margin-top:30px;
}
.jet-hotels-button{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:50px;
padding:0 22px;
border-radius:999px;
font-weight:800;
font-size:14px;
text-decoration:none;
transition:transform .2s ease,box-shadow .2s ease;
}
.jet-hotels-button:hover{
transform:translateY(-2px);
}
.jet-hotels-button--primary{
background:var(--jh-sumi);
color:#fff;
box-shadow:0 8px 24px rgba(23,17,23,.16);
}
.jet-hotels-button--secondary{
background:#fff;
color:var(--jh-sumi);
border:1px solid var(--jh-border);
}
.jet-hotels-search-section{
padding:52px 0;
background:#fff;
}
.jet-hotels-search-box{
background:var(--jh-sumi);
border-radius:26px;
padding:28px;
box-shadow:var(--jh-shadow);
}
.jet-hotels-search-label{
display:block;
color:var(--jh-cyan);
font-size:12px;
font-weight:900;
letter-spacing:.17em;
margin-bottom:10px;
}
.jet-hotels-search-input-wrap{
display:grid;
grid-template-columns:1fr auto;
gap:10px;
}
.jet-hotels-search-input{
width:100%;
height:58px;
border:0;
border-radius:15px;
padding:0 18px;
font-size:17px;
background:#fff;
color:var(--jh-sumi);
outline:none;
}
.jet-hotels-search-input:focus{
box-shadow:0 0 0 3px var(--jh-cyan);
}
.jet-hotels-search-reset{
border:0;
border-radius:15px;
padding:0 20px;
background:var(--jh-pink);
color:#fff;
font-weight:900;
cursor:pointer;
}
.jet-hotels-area-filters{
display:flex;
gap:8px;
flex-wrap:wrap;
margin-top:18px;
}
.jet-hotels-filter{
border:1px solid #443944;
background:#251e25;
color:#fff;
border-radius:999px;
padding:9px 14px;
font-size:12px;
font-weight:800;
cursor:pointer;
}
.jet-hotels-filter:hover,
.jet-hotels-filter.is-active{
background:var(--jh-lime);
border-color:var(--jh-lime);
color:var(--jh-sumi);
}
.jet-hotels-notice{
display:grid;
grid-template-columns:50px 1fr;
gap:18px;
margin-top:24px;
background:#fff7dc;
border:1px solid #f1dc92;
border-radius:20px;
padding:22px;
}
.jet-hotels-notice__mark{
width:44px;
height:44px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
background:var(--jh-yellow);
font-size:24px;
font-weight:900;
}
.jet-hotels-notice h2{
font-size:18px;
margin:0 0 6px;
background:none;
color:var(--jh-sumi);
padding:0;
}
.jet-hotels-notice p{
margin:0;
color:#5d5547;
line-height:1.65;
font-size:14px;
}
.jet-hotels-directory-section{
padding:22px 0 80px;
background:#fff;
}
.jet-hotels-directory-head{
display:flex;
justify-content:space-between;
align-items:end;
gap:20px;
margin-bottom:20px;
}
.jet-hotels-directory-head h2{
font-size:38px;
line-height:1.05;
margin:0;
background:none;
color:var(--jh-sumi);
padding:0;
}
.jet-hotels-result-count{
margin:0;
color:var(--jh-muted);
font-size:14px;
}
.jet-hotels-result-count strong{
font-size:23px;
color:var(--jh-pink);
}
.jet-hotels-letter-nav{
display:flex;
gap:6px;
overflow-x:auto;
padding:2px 0 14px;
margin-bottom:14px;
scrollbar-width:thin;
}
.jet-hotels-letter{
min-width:38px;
height:38px;
border-radius:10px;
border:1px solid var(--jh-border);
background:#fff;
color:var(--jh-sumi);
font-weight:900;
cursor:pointer;
}
.jet-hotels-letter:hover,
.jet-hotels-letter.is-active{
background:var(--jh-sumi);
border-color:var(--jh-sumi);
color:#fff;
}
.jet-hotels-directory{
display:grid;
gap:10px;
}
.jet-hotel{
border:1px solid var(--jh-border);
border-radius:18px;
background:#fff;
overflow:hidden;
box-shadow:0 6px 18px rgba(23,17,23,.045);
}
.jet-hotel[hidden]{
display:none;
}
.jet-hotel__summary{
display:grid;
grid-template-columns:minmax(0,1fr) auto 28px;
align-items:center;
gap:20px;
padding:20px 22px;
cursor:pointer;
list-style:none;
}
.jet-hotel__summary::-webkit-details-marker{
display:none;
}
.jet-hotel__summary-main{
display:flex;
flex-direction:column;
gap:5px;
min-width:0;
}
.jet-hotel__name{
font-size:18px;
line-height:1.3;
font-weight:900;
color:var(--jh-sumi);
}
.jet-hotel__location{
font-size:13px;
color:var(--jh-muted);
}
.jet-hotel__fee{
text-align:right;
white-space:nowrap;
}
.jet-hotel__fee span{
display:block;
font-size:10px;
font-weight:800;
letter-spacing:.07em;
color:var(--jh-muted);
}
.jet-hotel__fee strong{
display:block;
font-size:18px;
color:#b32769;
margin-top:2px;
}
.jet-hotel__toggle{
width:16px;
height:16px;
border-right:2px solid var(--jh-sumi);
border-bottom:2px solid var(--jh-sumi);
transform:rotate(45deg) translateY(-4px);
transition:transform .2s ease;
}
.jet-hotel[open] .jet-hotel__toggle{
transform:rotate(225deg) translate(-1px,-1px);
}
.jet-hotel__body{
padding:0 22px 22px;
border-top:1px solid var(--jh-border);
}
.jet-hotel__meta{
display:grid;
grid-template-columns:1fr 1fr;
gap:0;
margin:0;
}
.jet-hotel__meta>div{
padding:17px 0;
border-bottom:1px solid #eee7eb;
}
.jet-hotel__meta>div:nth-child(odd){
padding-right:20px;
}
.jet-hotel__meta>div:nth-child(even){
padding-left:20px;
border-left:1px solid #eee7eb;
}
.jet-hotel__meta .jet-hotel__meta-wide{
grid-column:1/-1;
padding-left:0;
border-left:0;
}
.jet-hotel__meta dt{
font-size:10px;
font-weight:900;
letter-spacing:.08em;
color:var(--jh-muted);
text-transform:uppercase;
margin-bottom:5px;
}
.jet-hotel__meta dd{
margin:0;
font-size:14px;
line-height:1.6;
color:var(--jh-sumi);
}
.jet-hotel__access-note{
margin-top:17px;
padding:13px 15px;
background:#f7f5f7;
border-radius:12px;
font-size:12px;
line-height:1.6;
color:#5d565c;
}
.jet-hotel__actions{
display:flex;
gap:8px;
flex-wrap:wrap;
margin-top:16px;
}
.jet-hotel__actions a{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:40px;
padding:0 15px;
border-radius:999px;
border:1px solid var(--jh-border);
background:#fff;
color:var(--jh-sumi);
font-size:12px;
font-weight:800;
text-decoration:none;
}
.jet-hotel__actions a:hover{
border-color:var(--jh-sumi);
}
.jet-hotel__actions .jet-hotel__estimate{
background:var(--jh-sumi);
border-color:var(--jh-sumi);
color:#fff;
}
.jet-hotels-empty{
text-align:center;
padding:60px 20px;
border:1px dashed #cfc3ca;
border-radius:20px;
background:#faf8f9;
}
.jet-hotels-empty strong{
font-size:22px;
}
.jet-hotels-empty p{
margin:10px 0 18px;
color:var(--jh-muted);
}
.jet-hotels-empty a{
font-weight:900;
color:#a92f69;
}
.jet-hotels-price-cta{
padding:65px 0;
background:var(--jh-sumi);
color:#fff;
}
.jet-hotels-price-cta__inner{
display:flex;
align-items:center;
justify-content:space-between;
gap:30px;
}
.jet-hotels-price-cta h2{
font-size:34px;
margin:0;
background:none;
color:#fff;
padding:0;
}
.jet-hotels-price-cta p:not(.jet-hotels-kicker){
margin:12px 0 0;
color:#d8cfd6;
line-height:1.7;
}
.jet-hotels-price-cta .jet-hotels-kicker{
color:var(--jh-cyan);
}
.jet-hotels-price-cta .jet-hotels-button--primary{
background:var(--jh-lime);
color:var(--jh-sumi);
white-space:nowrap;
}
.jet-hotels-help{
padding:70px 0;
background:var(--jh-paper);
}
.jet-hotels-help__box{
max-width:820px;
margin:0 auto;
text-align:center;
}
.jet-hotels-help h2{
font-size:38px;
margin:0;
background:none;
color:var(--jh-sumi);
padding:0;
}
.jet-hotels-help p:not(.jet-hotels-kicker){
font-size:16px;
line-height:1.75;
color:#5d565c;
margin:17px auto 0;
max-width:650px;
}
.jet-hotels-help__actions{
display:flex;
justify-content:center;
gap:10px;
flex-wrap:wrap;
margin-top:25px;
}
@media(max-width:768px){
.jet-hotels-container,
.jet-hotels-hero__inner{
width:min(100% - 28px,1120px);
}
.jet-hotels-hero{
padding:52px 0 46px;
background:linear-gradient(145deg,#fffaf3 0%,#fff 100%);
}
.jet-hotels-hero h1{
font-size:41px;
line-height:1.02;
border:0;
}
.jet-hotels-hero__lead{
font-size:15px;
line-height:1.7;
margin-top:20px;
}
.jet-hotels-hero__actions{
display:grid;
grid-template-columns:1fr;
margin-top:24px;
}
.jet-hotels-button{
width:100%;
}
.jet-hotels-search-section{
padding:34px 0;
}
.jet-hotels-search-box{
padding:19px;
border-radius:20px;
}
.jet-hotels-search-input-wrap{
grid-template-columns:1fr;
}
.jet-hotels-search-reset{
height:44px;
}
.jet-hotels-area-filters{
flex-wrap:nowrap;
overflow-x:auto;
margin-left:-4px;
margin-right:-4px;
padding:0 4px 4px;
}
.jet-hotels-filter{
white-space:nowrap;
flex:0 0 auto;
}
.jet-hotels-notice{
grid-template-columns:38px 1fr;
gap:12px;
padding:17px;
}
.jet-hotels-notice__mark{
width:36px;
height:36px;
font-size:19px;
}
.jet-hotels-notice h2{
font-size:16px;
}
.jet-hotels-directory-section{
padding-bottom:55px;
}
.jet-hotels-directory-head{
display:block;
}
.jet-hotels-directory-head h2{
font-size:30px;
}
.jet-hotels-result-count{
margin-top:10px;
}
.jet-hotel__summary{
grid-template-columns:minmax(0,1fr) 22px;
gap:12px;
padding:17px;
}
.jet-hotel__fee{
grid-column:1;
text-align:left;
margin-top:4px;
}
.jet-hotel__toggle{
grid-column:2;
grid-row:1/3;
}
.jet-hotel__name{
font-size:16px;
}
.jet-hotel__body{
padding:0 17px 17px;
}
.jet-hotel__meta{
grid-template-columns:1fr;
}
.jet-hotel__meta>div,
.jet-hotel__meta>div:nth-child(odd),
.jet-hotel__meta>div:nth-child(even){
padding:14px 0;
border-left:0;
}
.jet-hotel__meta .jet-hotel__meta-wide{
grid-column:auto;
}
.jet-hotel__actions{
display:grid;
grid-template-columns:1fr;
}
.jet-hotel__actions a{
width:100%;
}
.jet-hotels-price-cta{
padding:48px 0;
}
.jet-hotels-price-cta__inner{
display:block;
}
.jet-hotels-price-cta h2{
font-size:29px;
}
.jet-hotels-price-cta .jet-hotels-button{
margin-top:22px;
}
.jet-hotels-help{
padding:50px 0;
}
.jet-hotels-help h2{
font-size:30px;
}
.jet-hotels-help__actions{
display:grid;
grid-template-columns:1fr;
}

nav.spbreadcrumb {
margin-top: 0px;
margin-bottom: 0px;
}
}




