@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 */
@media all and (min-width: 740px){
	.alC_forPC { text-align: center; }
}

.imgParts figcaption { font-size: 1.2rem; }


/* iconTxt */
.sustainable [class^="ctm_iconTxt_br"] { display: inline-block; padding: 3px 1.0rem 1px; color: #fff; border-radius: 4px; letter-spacing: 0.1rem; }

.sustainable .ctm_iconTxt_br_01 { background: #39c3e0; }
.sustainable .ctm_iconTxt_br_02 { background: #daa1e7; }
.sustainable .ctm_iconTxt_br_03 { background: #31c8a9; }
.sustainable .ctm_iconTxt_br_04 { background: #f4b07e; }
.sustainable .ctm_iconTxt_br_05 { background: #f998ba; }

/* ctm_pageTtl */
.sustainable .ctm_pageTtl.hc01 { }
.sustainable .ctm_pageTtl.hc01 .ttlLv1 { position: relative; padding-top: 13px; color: #01886c; }
.sustainable .ctm_pageTtl.hc01 .ttlLv1:after { content: ""; position: absolute; display: inline-block; width: 100%; height: 100px; background: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/heading_bg01_sp.png?v=1) no-repeat; background-size: 100%; bottom: -50px; left: 0; }
.sustainable .ctm_pageTtl.hc01 .ttlLv1 h2 sup { font-size: 1.8rem; vertical-align: 0.3rem; }
@media all and (min-width: 740px){
	.sustainable .ctm_pageTtl.hc01 .ttlLv1 { margin-top: 30px; }
	.sustainable .ctm_pageTtl.hc01 .ttlLv1:after { background: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/heading_bg01_pc.png?v=1) no-repeat; background-size: 100%; bottom: -20px; }
	.sustainable .ctm_pageTtl.hc01 .ttlLv1 h2 sup { font-size: 2.4rem; }
}

.sustainable .ctm_pageTtl .ttlLv2 { color: #13b795; }

.sustainable .ctm_pageTtl.hc02 .ttlLv2 { color: #fff; background: #daa1e7; border-radius: 20px; }
@media all and (min-width: 740px){
	.sustainable .ctm_pageTtl.hc02 .ttlLv2 { border-radius: 100vh; }
}

@media all and (min-width: 740px){
	.sustainable .ctm_pageTtl .ttlLv1 h2 { font-size: 3.6rem; }
	.sustainable .ctm_pageTtl .ttlLv2 h3 { font-size: 2.6rem; }
	.sustainable .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 */
.sustainable .ctm_btnList_horizon .btnBox { display: block; width: 100%; height: 100%; }
.sustainable .ctm_btnList_horizon .col > div { height: 100%; }
.sustainable .ctm_btnList_horizon .col .btn { display: table; width: 100%; height: 100%; padding-top: 10px; padding-bottom: 10px; margin-top: 0px; }
.sustainable .ctm_btnList_horizon .col .btnInr { display: table-cell; vertical-align: middle; width: 100%; height: 100%; }

/* table */

/* MV */
.sustainable .heroimgWrap { }



/* Lead */
#Lead.ctm_contentsFull { background: #01886c; }

#Lead .ctm_pageTtl .ttlLv1 { margin-top: 0; }

#Lead .ctm_pageTtl .ttlLv4 { margin: 0; }
#Lead .ctm_pageTtl .ttlLv4 h5 { color: #fff; font-weight: normal; letter-spacing: 0.1rem; }



/* Malama */
#Malama.ctm_contentsFull { padding-top: 0; background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/contents_bg01.jpg?v=0); background-size: 75%; }

#Malama .contentsUnit { padding-top: 20px; width: 100%; height: auto; background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/malama_bg01.png?v=1); background-size: 28%; background-repeat: no-repeat; background-position: center; }
@media all and (min-width: 740px){
	#Malama .contentsUnit { padding-top: 50px; background-size: 14%; }	
}
#Malama .ctm_pageTtl .ttlLv1 { margin-top: 0; }

#Malama .ctm_pageTtl .ttlLv4 { margin: 0; }
#Malama .ctm_pageTtl .ttlLv4 h5 { font-weight: normal; letter-spacing: 0.1rem; }




/* Initiative */
#Initiative.ctm_contentsFull { background: #fff; }

#Initiative .initiativeListBlock { padding: 0 30px 30px; border: 2px solid #39c3e0; border-radius: 30px; }

#Initiative .ctm_pageTtl .ttlLv2 { padding: 0; }
#Initiative .ctm_pageTtl .ttlLv2 h3 { padding: 4px 20px 0; color: #fff; background: #39c3e0 !important; border-radius: 0 0 8px 8px; }

#Initiative .bdrWrap { margin-top: 20px; }

#Initiative_02.initiativeListBlock { border: 2px solid #31c8a9; }
#Initiative_02 .ctm_pageTtl .ttlLv2 h3 { background: #31c8a9 !important; }
#Initiative_02 .bdrWrap { border-top: 2px solid #31c8a9; }
@media all and (min-width: 740px){
	#Initiative_02 .ctm_pageTtl .ttlLv3 h4 { text-align: left; }
}

#Initiative_03.initiativeListBlock { border: 2px solid #daa1e7; }
#Initiative_03 .ctm_pageTtl .ttlLv2 h3 { background: #daa1e7 !important; }

@media all and (min-width: 740px){
	#Initiative .initiativeListBlock .column_type01 .col:nth-child(1) { width: calc(67% - 15px); }
	#Initiative .initiativeListBlock .column_type01 .col:nth-child(2) { width: calc(33% - 15px); }
	#Initiative .initiativeListBlock .clm_1_3col.colWrap .col { width: 278px; }
}




/* Hotel */
#Hotel.ctm_contentsFull { background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/contents_bg01.jpg?v=0); background-size: 75%; }

#Hotel .hotelListBlock { position: relative; padding: 20px; background: #fff; border: 1px solid #fff; }

@media all and (min-width: 740px){
	#Hotel .hotelListBlock .clm_1_3col.colWrap { display: flex; justify-content: space-between; }
	#Hotel .hotelListBlock .clm_1_3col.colWrap .col { margin: 0; width: 288px; }
}

#Hotel .hotelListBlock .headingWrap { position: relative; }

@media all and (max-width: 739px){
	#Hotel .headingWrap .ctm_pageTtl .ttlLv2 { padding-top: 25px; }
}

#Hotel .headingWrap .headingGrade .ttlLv3 { position: absolute; display: inline-block; overflow: visible;
top: -28px; left: 5px; margin: 0; padding: 5px 0 0; z-index: 2; width: 90px; text-align: center; background: #a8a43b; border-radius: 2px 0 0 0; }
#Hotel .headingWrap .headingGrade .ttlLv3:before { content: ''; position: absolute; top: 0; right: -7px; border: none; border-bottom: solid 8px #c8c568; border-right: solid 7px transparent; }
#Hotel .headingWrap .headingGrade .ttlLv3:after { content: ''; position: absolute; left: 0; top: 100%; height: 0; width: 0; border-left: 45px solid transparent; border-right: 45px solid transparent; border-top: 15px solid #a8a43b; }

#Hotel .headingWrap .headingGrade .ttlLv3 h4 { padding: 0; font-size: 1.2rem; color: #fff; border: none; }
#Hotel .headingWrap .headingGrade .ttlLv3 h4 strong { font-size: 2.2rem; font-weight: bold; color: #fff; padding-right: 0.2rem; }
@media all and (min-width: 740px){
	#Hotel .headingWrap .headingGrade .ttlLv3 { top: -26px; left: 20px; padding: 15px 0 5px; width: 90px; }
	#Hotel .headingWrap .headingGrade .ttlLv3:before { right: -5px; border-bottom: solid 6px #c8c568; border-right: solid 5px transparent; }
	#Hotel .headingWrap .headingGrade .ttlLv3:after { border-top: 20px solid #a8a43b; }
	#Hotel .headingWrap .headingGrade .ttlLv3 h4 strong { font-size: 2.4rem; }
}

#Hotel .hotelListBlock .clm_1_3col .col:nth-child(3) { position: relative; }

@media all and (max-width: 739px){
	#Hotel .hotelListBlock .imgLogo { margin: auto; width: 50%; }
	#Hotel .hotelListBlock .imgLogo img {  }
}
@media all and (min-width: 740px){
	#Hotel .hotelListBlock .imgLogo { position: absolute; width: 100px; top: 40px; right: 50px; }
}

#Hotel .hotelListBlock .imgTumbler { position: absolute; width: 140px; top: -60px; right: -40px; }
@media all and (min-width: 740px){
	#Hotel .hotelListBlock .imgTumbler { top: -80px; right: -50px; }
	#Hotel_02.hotelListBlock .imgTumbler { top: -48px; }
}

#Hotel .hotelListBlock .iconWrap { display: flex; justify-content: flex-start; flex-wrap: wrap; }
#Hotel .hotelListBlock .iconWrap .text { display: inline-block; margin: 0 5px 5px 0; /* width: auto; */ }

#Hotel .hotelListBlock .iconWrap .text [class^="ctm_iconTxt_br"] { padding: 3px 0.6rem 1px; font-size: 1.4rem; }

@media all and (min-width: 740px){
	#Hotel .hotelListBlock .iconWrap { justify-content: center; }
	#Hotel .hotelListBlock .iconWrap .text { margin: 0 5px 5px 0; }
}

@media all and (max-width: 739px){
	#Hotel_03.hotelListBlock .txtCaption { margin-top: 20px; }
}



/* Option */
#Option.ctm_contentsFull { background: #fff; }

#Option .optionListBlock { padding: 20px; background: #faf5e8; border-radius: 20px; }
@media all and (min-width: 740px){
	#Option .optionListBlock { padding: 30px; }
}

#Option .ctm_pageTtl .ttlLv2 { margin-top: 0; padding: 18px 0 15px; color: #807c1c; border-top: 2px solid #807c1c; border-bottom: 2px solid #807c1c; }

#Option .optionListBlock .menuWrap { max-height: 400px; overflow-y: scroll; }

#Option .optionListBlock .menuWrap .menuBox { padding: 20px; background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/option01_menu_bg01.png?v=1); background-size: contain; background-repeat: no-repeat; background-position: top; background-color: #fff; border: 1px solid #c8c568; }

#Option .menuBox .ctm_pageTtl .ttlLv3 { margin-top: 0; padding: 0; color: #807c1c; }
#Option .menuBox .ctm_pageTtl .ttlLv3 h4 { padding: 0; }

#Option .menuBox .bdrWrap { margin-top: 20px; border-top: 1px solid #c8c568; position: relative; }
#Option .menuBox .bdrWrap:before { content: ''; position: absolute; display: inline-block;
top: 1px; left: 50%; transform: translate(-50%, -50%); width: 28px; height: 32px;
background-image: url(/content/dam/sites/wwwjalcojp/jp/ja/intltour/hwi/sustainable/img_sites/option01_menu_bg02.png?v=2);
background-size: contain; background-repeat: no-repeat; }

#Option .menuBox .ctm_pageTtl .ttlLv4 { color: #807c1c; }
#Option .menuBox .ctm_pageTtl .ttlLv4 h5 span { font-size: 1.4rem; }

@media all and (min-width: 740px){
	#Option .optionListBlock .menuWrap { max-height: 500px; }
	#Option .optionListBlock .menuWrap .menuBox { padding: 30px; }
}



/* Move */
#Move.ctm_contentsFull { background: #dffbf5; }

#Move .lessonBlock { padding: 30px 20px 10px; background: #fff; border: 2px solid #31c8a9; border-radius: 20px; }
#Move .lessonBlock .ctm_pageTtl .ttlLv2 { margin: 0; padding: 0; }
#Move .lessonBlock .ctm_pageTtl .ttlLv2 h3 sup { font-size: 1.8rem; }
#Move .lessonBlock .ctm_pageTtl .ttlLv3 { color: #fff; background: #daa1e7; border-radius: 20px; }

#Move .lessonBlock .tbl_col_1 { width: 20%; }
#Move .lessonBlock table th { background: #31c8a9; }

@media all and (min-width: 740px){
	#Move .lessonBlock { padding: 30px 30px 10px; }
	#Move .lessonBlock .ctm_pageTtl .ttlLv3 { border-radius: 100vh; }
	#Move .lessonBlock .table_typeA table { width: 100%; }
}



/* Apply */
#Apply { }

/*
#Apply .infoColumn .col:nth-of-type(n+2) { margin-top: 0; }
*/









@media all and (max-width: 739px){
	.sustainable .js-eqHeightCols .js-eqHeightCols-item,
	.sustainable .js-eqHeightCols .js-eqHeightCols-item-2,
	.sustainable .js-eqHeightCols .js-eqHeightCols-item-3,
	.sustainable .js-eqHeightCols .js-eqHeightCols-item-4 { height: auto!important; }
}

@media all and (max-width: 739px){
}
@media all and (min-width: 740px){
}