@charset "utf-8";

/* コンテンツ幅 フル */
.contentsInr { width: auto; padding: 0px; }

.ctm_contentsFull { }
@media all and (max-width: 739px){
	.ctm_contentsFull {}
}

/* コンテンツ幅 950px */
.contentsInr .contentsUnit,
.contentsInr .module { padding: 0 10px; margin: 0 auto; }

@media all and (min-width: 740px){
	.contentsInr .contentsUnit,
	.contentsInr .module { width: 950px !important; padding: 0px; margin: 0 auto; }
	.contentsInr .module { float: none !important; }
}

/* font */
.fs20 { font-size: 2.0rem; }
.fs21 { font-size: 2.1rem; }

@media all and (min-width: 740px){
	.alC_forPC { text-align: center; }
}

.imgParts figcaption { font-size: 1.2rem; }


/* iconTxt */
.hilton-hotels [class^="ctm_iconTxt_br"] { display: inline-block; padding: 3px 1.0rem 1px; color: #fff; border-radius: 4px; letter-spacing: 0.1rem; }

/* ctm_pageTtl */
.hilton-hotels .ctm_pageTtl.hc01 { }
.hilton-hotels .ctm_pageTtl.hc01 .ttlLv1 { position: relative; margin: 60px 0 0; padding-top: 4.0rem; border-top: 2px solid #002f61; }
.hilton-hotels .ctm_pageTtl.hc01 .ttlLv1 h2 { margin-top: -10.6rem; padding: 0 30px; color: #002f61; background: #fff!important; display: inline-block; /* position: absolute; top: 0px; left: 50%; transform: translate(-50%, -50%); z-index: 100; */ 
font-family: "Noto Serif JP", serif; font-weight: 600; font-style: normal; }
@media all and (min-width: 740px){
	.hilton-hotels .ctm_pageTtl.hc01 .ttlLv1 { }
}

@media all and (max-width: 739px){
	.hilton-hotels .ctm_pageTtl .ttlLv1 h2 { font-size: 3.0rem; }
}

@media all and (min-width: 740px){
	.hilton-hotels .ctm_pageTtl .ttlLv1 h2 { font-size: 3.6rem; }
	#Map .ctm_pageTtl .ttlLv1 h2,
	#Brand .ctm_pageTtl .ttlLv1 h2 { top: -2px; font-size: 3.4rem; }
	.hilton-hotels .ctm_pageTtl .ttlLv2 h3 { }
	.hilton-hotels .ttlLv4 h5 { font-size: 1.6rem; }
}

/* list */
@media all and (min-width: 740px){
	.listSide ul { display: flex; justify-content: center; }
	.listSide ul > li + li { margin: 0 0 0 2.0rem; }
}

/* column */

/* Botton type horizon */
/*
.hilton-hotels .ctm_btnList_horizon .btnBox { display: block; width: 100%; height: 100%; }
.hilton-hotels .ctm_btnList_horizon .col > div { height: 100%; }
.hilton-hotels .ctm_btnList_horizon .col .btn { display: table; width: 100%; height: 100%; padding-top: 10px; padding-bottom: 10px; margin-top: 0px; }
.hilton-hotels .ctm_btnList_horizon .col .btnInr { display: table-cell; vertical-align: middle; width: 100%; height: 100%; }
*/
@media all and (max-width: 739px){
	.hilton-hotels .ctm_btnList_horizon .colWrap .col:nth-of-type(n+2) { margin-top: 16px; }
}

/* table */

/*  */




/* MV,Lead */
.hilton-hotels .heroimgWrap,
#Lead.ctm_contentsFull { background: #002f61; }

#Lead.ctm_contentsFull { padding: 20px 0; }

#Lead .ctm_pageTtl .ttlLv1 { margin: 0; padding: 5px 0; }
#Lead .ctm_pageTtl .ttlLv1 h2 { color: #fff; font-size: 1.8rem; font-weight: normal; letter-spacing: 0.1rem; }
@media all and (min-width: 740px){
	#Lead .ctm_pageTtl .ttlLv1 h2 { font-size: 2.0rem; }
}


/* Map */
#Map.ctm_contentsFull { background: #fff; }

#Map .mapBlockInr { position: relative; display: block; }

#Map .mapBlock .btnHotel { position: absolute; }

@media all and (max-width: 739px){
	#Map .mapBlock { overflow: auto; margin-right: -10px; }
	#Map .mapBlockInr { width: 739px; height: 370px; }
	#Map .mapBlock #btnHotel_area01 { top: 36%; left: 56%; }
	#Map .mapBlock #btnHotel_area02 { top: 12%; right: 6%; }
	#Map .mapBlock #btnHotel_area03 { top: 64%; left: 44%; }
	#Map .mapBlock #btnHotel_area04 { top:  6%; left:  6%; }
	#Map .mapBlock #btnHotel_area05 { top: 40%; left: 34%; }
	#Map .mapBlock #btnHotel_area06 { top: 20%; left: 38%; }
}

@media all and (min-width: 740px){
	#Map .mapBlockInr { width: 950px; height: 478px; }
	#Map .mapBlock #btnHotel_area01 { top: 170px; left: 530px; }
	#Map .mapBlock #btnHotel_area02 { top:  70px; left: 720px; }
	#Map .mapBlock #btnHotel_area03 { top: 290px; left: 450px; }
	#Map .mapBlock #btnHotel_area04 { top:  40px; left:  90px; }
	#Map .mapBlock #btnHotel_area05 { top: 200px; left: 340px; }
	#Map .mapBlock #btnHotel_area06 { top: 100px; left: 360px; }
}

#Map .mapBlock .btnBK .btn { padding-right: 40px; background: #002f61; border-radius: 100vh; width: 100%; }
#Map .mapBlock .btnBK .btn:after { right: 15px; }
#Map .mapBlock .btnBK #btnHotel_area03 .btn:after { width: 12px; height: 12px; background-position: -18px -53px; }

#Map .mapBlock .linkbtn .linkbtn_close { width: 100%; }
#Map .mapBlock .linkbtnAera_closeLayer { background: rgb(0 0 0 / 0.3); border-radius: 100vh; }
#Map .mapBlock .linkbtnAera_closeLayer p { padding-top: 22px; font-weight: normal; }





/* Brand */
#Brand.ctm_contentsFull { background: linear-gradient(90deg, rgb(247 247 247 / 1) 0%, rgb(247 247 247 / 1) 50%, rgb(238 238 238 / 1) 50%, rgb(238 238 238 / 1) 100%); }

#Brand .ctm_pageTtl.hc01 .ttlLv1 h2 { background: linear-gradient(90deg, rgb(247 247 247 / 1) 0%, rgb(247 247 247 / 1) 50%, rgb(238 238 238 / 1) 50%, rgb(238 238 238 / 1) 100%)!important; }

#Brand .brandBlock { background: #fff; box-shadow: 10px 10px 20px 0 rgb(0 0 0 / 0.1); }

#Brand .brandListBlock { padding: 0 20px 20px; }

#Brand .brandListBlock .ctm_pageTtl .ttlLv2 { margin: 20px 0 10px; padding-top: 12px; border-top: 1px solid #CCC; }
#Brand .brandListBlock .ctm_pageTtl .ttlLv2 h3 { font-size: 1.6rem; font-weight: normal; }

#Brand .logoBlock { display: flex; }

@media all and (max-width: 739px){
	#Brand .logoBlock { justify-content: space-between; flex-wrap: wrap; row-gap: 16px; }
	#Brand .logoBlock > * { width: 40vw; }
	#Brand .logoBlock .imgParts img { width: 70%; }
}
@media all and (min-width: 740px){
	#Brand .logoBlock { display: flex; justify-content: space-around; }
	#Brand .logoBlock > * { width: 156px; }
	#Brand_02 .logoBlock > * { width: 146px; }
	#Brand .logoBlock .imgParts img { width: 96px; }
}

#Brand .logoBlock .imgParts { text-align: center; }
#Brand_03 .logoBlock .imgParts figcaption { white-space: nowrap; }







/* Hotel */
#Hotel.ctm_contentsFull { background: #fff; /* background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/hilton-hotels/img_sites/contents_bg01.jpg?v=0); background-size: 75%; */}

#Hotel .tabBlock nav > ul > li { position: relative; }
#Hotel .tabBlock nav > ul > li:nth-child(3) a { padding-top: 0; }
#Hotel .tabBlock nav > ul > li:nth-child(3):after { content: 'COMING SOON！'; width: 100%; height: 100%;
text-align: center; line-height: 3.7; color: #fff; background: rgb(0 0 0 / 0.3); position: absolute; top: 0; left: 0; }
@media all and (max-width: 739px){
	#Hotel .tabBlock nav > ul > li:nth-child(3):after { line-height: 5.0; font-size: 1.4rem; }
}

#Hotel .ctm_flexbox_cl_gapL.ctm_flexbox,
#Hotel .ctm_flexbox_cl_gapL.ctm_flexbox_child > * { column-gap: 36px; }
@media all and (max-width: 739px){
	#Hotel .ctm_flexbox_cl_gapL.ctm_flexbox,
	#Hotel .ctm_flexbox_cl_gapL.ctm_flexbox_child > * { flex-wrap: wrap; }
}

#Hotel .hotelListBlock_typeA { border: 1px solid #ccc; }

#Hotel .hotelListBlock_typeB .ctm_bdrColumn .col { padding: 0; }
@media all and (max-width: 739px){
	#Hotel .hotelListBlock_typeB .ctm_bdrColumn .col:nth-of-type(n+2) { margin-top: 32px; }
}

#Hotel .hotelBlock .headingWrap { position: relative; }

#Hotel .hotelBlock .headingWrap:before { position: absolute; transform: scale(0.096); top: -178px; right: -356px; }
@media all and (min-width: 740px){
	#Hotel .hotelListBlock_typeA .headingWrap:before { transform: scale(0.12); top: -162px; right: -330px; }
	#Hotel .hotelListBlock_typeB .headingWrap:before { transform: scale(0.10); top: -162px; right: -346px; }
}
#Hotel .brand01_conrad .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand01_logo_conrad.jpg); }
#Hotel .brand01_lxr .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand01_logo_lxr.jpg); }
#Hotel .brand03_hilton .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand03_logo_hilton.jpg); }
#Hotel .brand03_doubletree .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand03_logo_doubletree.jpg); }
#Hotel .brand04_embassy-suites .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand04_logo_embassy-suites.jpg); }
#Hotel .brand04_home2-suites .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand04_logo_home2-suites.jpg); }
#Hotel .brand05_hilton-garden-inn .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand05_logo_hilton-garden-inn.jpg); }
#Hotel .brand05_hampton .headingWrap:before
{ content: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hilton-hotels/img_sites/brand05_logo_hampton.jpg); }

#Hotel .hotelBlock .headingWrap .ctm_pageTtl .ttlLv2 { margin-top: 20px; }
#Hotel .hotelBlock .headingWrap .ctm_pageTtl .ttlLv2 h3 { font-size: 2.0rem; }
@media all and (min-width: 740px){
	#Hotel .hotelListBlock_typeA .headingWrap .ctm_pageTtl .ttlLv2 h3 { font-size: 2.2rem; }
}

#Hotel .hotelBlock .headingGrade { position: absolute; display: inline-block; overflow: visible;
top: -5px; left: 10px; margin: 0; padding: 8px 0 3px; z-index: 2; width: 8.0rem; font-size: 1.2rem; font-weight: normal; color: #fff; text-align: center; background: #002f61; border-radius: 2px 0 0 0; }
#Hotel .hotelBlock .gradeL .headingGrade { background: #5e459d; }
#Hotel .hotelBlock .gradeS .headingGrade { background: #9b8343; }
#Hotel .hotelBlock .gradeA .headingGrade { background: #2c67b6; }
#Hotel .hotelBlock .gradeB .headingGrade { background: #1f7d79; }

#Hotel .hotelBlock .headingGrade:before { content: ''; position: absolute; top: -1px; right: -5px; border: none; border-bottom: solid 6px #ccc; border-right: solid 5px transparent; }
#Hotel .hotelBlock .headingGrade:after { content: ''; position: absolute; left: 0; top: 100%; height: 0; width: 0; border-left: 4.0rem solid transparent; border-right: 4.0rem solid transparent; border-top: 1.5rem solid #002f61; }

#Hotel .hotelBlock .gradeL .headingGrade:after { border-top: 1.5rem solid #5e459d; }
#Hotel .hotelBlock .gradeS .headingGrade:after { border-top: 1.5rem solid #9b8343; }
#Hotel .hotelBlock .gradeA .headingGrade:after { border-top: 1.5rem solid #2c67b6; }
#Hotel .hotelBlock .gradeB .headingGrade:after { border-top: 1.5rem solid #1f7d79; }

#Hotel .hotelBlock .headingGrade strong { padding-right: 0.4rem; font-size: 1.8rem; font-weight: normal; color: #fff; }

@media all and (min-width: 740px){
	#Hotel .hotelListBlock_typeA .headingGrade { width: 9.0rem; }
	#Hotel .hotelListBlock_typeB .headingGrade { width: 7.6rem; font-size: 1.1rem; }
	
	#Hotel .hotelBlock .headingGrade:before {  }
	#Hotel .hotelBlock .headingGrade:after { border-left: 4.5rem solid transparent; border-right: 4.5rem solid transparent; border-top: 2.0rem solid #002f61; }
	#Hotel .hotelBlock .ctm_bdrColumn .headingGrade:after { border-left: 3.8rem solid transparent; border-right: 3.8rem solid transparent; }
	#Hotel .hotelBlock .gradeL .headingGrade:after { border-top: 2.0rem solid #5e459d; }
	#Hotel .hotelBlock .gradeS .headingGrade:after { border-top: 2.0rem solid #9b8343; }
	#Hotel .hotelBlock .gradeA .headingGrade:after { border-top: 2.0rem solid #2c67b6; }
	#Hotel .hotelBlock .gradeB .headingGrade:after { border-top: 2.0rem solid #1f7d79; }
	#Hotel .hotelBlock .ctm_bdrColumn .headingGrade:after { border-top: 1.5rem solid #002f61; }
	#Hotel .hotelBlock .ctm_bdrColumn .gradeL .headingGrade:after { border-top: 1.5rem solid #5e459d; }
	#Hotel .hotelBlock .ctm_bdrColumn .gradeS .headingGrade:after { border-top: 1.5rem solid #9b8343; }
	#Hotel .hotelBlock .ctm_bdrColumn .gradeA .headingGrade:after { border-top: 1.5rem solid #2c67b6; }
	#Hotel .hotelBlock .ctm_bdrColumn .gradeB .headingGrade:after { border-top: 1.5rem solid #1f7d79; }
	
	#Hotel .hotelBlock .headingGrade strong { font-size: 2.0rem; }
	#Hotel .hotelBlock .ctm_bdrColumn .headingGrade strong { font-size: 1.8rem; }

}

#Hotel .hotelBlock .headingWrap .ctm_pageTtl .ttlLv3 { margin: 0; padding-top: 30px; border-top: 10px solid;
border-image: linear-gradient(to right, #ccc 0%, #ccc 50%, #e1e1e1 50%, #e1e1e1 100%); border-image-slice: 1; }
#Hotel .hotelBlock .headingWrap .ctm_pageTtl .ttlLv3 h4 { font-size: 2.4rem; color: #002f61; }
#Hotel .hotelBlock .headingWrap .ctm_pageTtl .ttlLv3 h4 .fsS_01 { font-size: 2.2rem; }
@media all and (min-width: 740px){
	#Hotel .hotelListBlock_typeA .headingWrap .ctm_pageTtl .ttlLv3 h4 { font-size: 2.8rem; }
}

#Hotel .hotelBlock .hotelListBlockInr { padding: 12px 14px 14px; }
#Hotel .hotelBlock .hotelListBlockInr .imgParts { padding: 10px 5px 15px; }
@media all and (min-width: 740px){
	#Hotel .hotelListBlock_typeA .hotelListBlockInr { padding: 12px 24px 24px; }
}

#Hotel .hotelBlock .priceBox .ctm_pageTtl .ttlLv4 { margin-top: 0; }
#Hotel .hotelBlock .priceBox .material-symbols-outlined { padding-right: 0.5rem; font-size: 2.8rem; vertical-align: -0.5rem; color: #666; }
#Hotel .hotelBlock .priceBox .table { margin-top: 10px; }

#Hotel .hotelBlock .specialBox { margin-top: 14px; padding: 0 12px 10px; color: #fff; background: #01358d; border-radius: 10px; }
#Hotel .hotelBlock .specialBox .ttlLv4 { margin: 12px 0 0; padding: 0 0 8px; color: #e9dfb0; border-bottom: 3px double #e9dfb0; }
#Hotel .hotelBlock .specialBox .txtList > li:before { background-color: #fff; }

#Hotel .hotelBlock .btn { margin-top: 16px; }












/* Apply */
#Apply.ctm_contentsFull { background: #fff; }

/*
#Apply .infoColumn .col:nth-of-type(n+2) { margin-top: 0; }
*/





@media all and (max-width: 739px){
	.hilton-hotels .js-eqHeightCols .js-eqHeightCols-item,
	.hilton-hotels .js-eqHeightCols .js-eqHeightCols-item-2,
	.hilton-hotels .js-eqHeightCols .js-eqHeightCols-item-3,
	.hilton-hotels .js-eqHeightCols .js-eqHeightCols-item-4 { height: auto!important; }
}

@media all and (max-width: 739px){
}
@media all and (min-width: 740px){
}