/*------------------------------------------ 
Color Setting
--------------------------------------------*/ :root, [data-bs-theme=light] {
		/* Custom */
		--red: #cc0000; /*--- Red --*/
		--red-rgb: 204, 0, 0;
		--gray-lighter: #fbfbfb; /*--- Lighter Gray --*/
		--gray-lighter-rgb: 251, 251, 251;
		--gray-light: #F3F3F3; /*--- Light Gray --*/
		--gray-light-rgb: 243, 243, 243;
		--gray: #DEDEDF; /*--- Gray --*/
		--gray-rgb: 222, 222, 223;
		--gray-dark: #c9c9c9; /*--- Dark Gray --*/
		--gray-dark-rgb: 201, 201, 201;
		--gray-heavy: #707070; /*--- Heavy Gray --*/
		--gray-heavy-rgb: 112, 112, 112;
		--white: #FFFFFF; /*--- White --*/
		--white-rgb: 255, 255, 255;
		--black: #010000; /*--- Black --*/
		--black-rgb: 1, 0, 0;
		--black-light: #3D3D3D; /*--- Light Black --*/
		--black-light-rgb: 61, 61, 61;
}
/*------------------------------------------ 
Basic
--------------------------------------------*/
body {
		background-color: var(--black) !important;
		color: var(--black);
}
a.basic, a {
		color: var(--gray-dark);
}
a.basic:hover, a:hover {
		color: var(--white);
}
a.basic:focus {
		color: var(--white);
}
.text-transparent {
		color: transparent;
}
.text-shadow-lg {
		text-shadow: 0 .25rem .75rem RGBA(var(--black-rgb), .35);
}
.text-shadow {
		text-shadow: 0 0 4px RGBA(var(--black-rgb), 1);
}
.text-shadow-w {
		text-shadow: 0 .125rem .75rem RGBA(var(--white-rgb), 1);
}
/*------------------------------------------ 
Button
--------------------------------------------*/
.btn-yes {
		background-color: var(--black-light);
		color: var(--white) !important;
}
.btn-yes:focus, .btn-yes:hover {
		background-color: var(--black) !important;
		color: var(--white);
}
.btn-leave {
		background-color: var(--gray);
		color: var(--black) !important;
}
.btn-leave:focus, .btn-leave:hover {
		background-color: var(--gray-dark) !important;
		color: var(--black);
}
/*------------------------------------------ 
Main NAV
--------------------------------------------*/
.mainnav .navbar-nav .nav-link {
		color: var(--gray-dark);
}
.mainnav .navbar-nav .active .nav-link, .mainnav .navbar-nav .nav-link:hover, .mainnav .navbar-nav .nav-link:focus {
		color: var(--white);
}
.navbar .offcanvas {
		background-color: var(--black);
}
/*------------------------------------------ 
Modal
--------------------------------------------*/
.info-card-remark .modal-header .btn-close {
		background-color: var(--white);
}
.info-card-nav .btn-close {
		background-color: var(--black);
}
.modal-detail .modal-content {
		background-color: transparent;
		color: var(--white);
}
.modal-backdrop.show {
		opacity: .95 !important;
}
/*------------------------------------------ 
MTR Card
--------------------------------------------*/
.mtr-card {
		background-color: RGBA(var(--white-rgb), .9);
}
.mtr-block.has-slider .slick-next::after, .mtr-block.has-slider .slick-prev::after {
		background-color: RGBA(var(--white-rgb), .85);
}
.mtr-block.has-slider .slick-dots li button:before {
		color: RGBA(var(--white-rgb), .65);
		opacity: 1;
}
.mtr-block.has-slider .slick-dots li.slick-active button:hover:before, .mtr-block.has-slider .slick-dots li.slick-active button:before {
		color: RGBA(var(--white-rgb), 1);
}
.mtr-block.has-slider .slick-next::before, .mtr-block.has-slider .slick-prev::before {
		color: var(--black);
}
.mtr-card:hover {
		background-color: RGBA(var(--white-rgb), .95);
		box-shadow: 0 .25rem 1rem RGBA(var(--black-rgb), .45);
}
/*------------------------------------------ 
MTR Note
--------------------------------------------*/
.mtr-note, .mtr-note .card-head {
		background-color: #f1f1f1;
}
.mtr-note .card-body {
		background-color: var(--white);
}
.modal-mtr .modal-body {
		background-color: #333333;
}
.mtr-note .card-body a {
		color: #333333;
}
.mtr-note .card-body a:hover {
		color: var(--red);
}
/*------------------------------------------ 
Basic Footer
--------------------------------------------*/
.bot-nav li a {
		color: var(--white);
}
.bot-nav li a:hover {
		color: var(--gray-dark);
}
.bot-nav li::after {
		background-color: var(--gray-dark);
}
/*------------------------------------------ 
Color Name - red
--------------------------------------------*/
.bg-red {
		background-color: var(--red) !important;
}
.text-red {
		color: var(--red) !important;
}
.border-red {
		border-color: var(--red) !important;
}
/*------------------------------------------ 
Color Name - gray-lighter
--------------------------------------------*/
.bg-gray-lighter {
		background-color: var(--gray-lighter) !important;
}
.text-gray-lighter {
		color: var(--gray-lighter) !important;
}
.border-gray-lighter {
		border-color: var(--gray-lighter) !important;
}
/*------------------------------------------ 
Color Name - gray-light
--------------------------------------------*/
.bg-gray-light {
		background-color: var(--gray-light) !important;
}
.text-gray-light {
		color: var(--gray-light) !important;
}
.border-gray-light {
		border-color: var(--gray-light) !important;
}
/*------------------------------------------ 
Color Name - gray
--------------------------------------------*/
.bg-gray {
		background-color: var(--gray) !important;
}
.text-gray {
		color: var(--gray) !important;
}
.border-gray {
		border-color: var(--gray) !important;
}
/*------------------------------------------ 
Color Name - gray-dark
--------------------------------------------*/
.bg-gray-dark {
		background-color: var(--gray-dark) !important;
}
.text-gray-dark {
		color: var(--gray-dark) !important;
}
.border-gray-dark {
		border-color: var(--gray-dark) !important;
}
/*------------------------------------------ 
Color Name - gray-heavy
--------------------------------------------*/
.bg-gray-heavy {
		background-color: var(--gray-heavy) !important;
}
.text-gray-heavy {
		color: var(--gray-heavy) !important;
}
.border-gray-heavy {
		border-color: var(--gray-heavy) !important;
}
/*------------------------------------------ 
Color Name - white
--------------------------------------------*/
.bg-white {
		background-color: var(--white) !important;
}
.text-white {
		color: var(--white) !important;
}
.border-white {
		border-color: var(--white) !important;
}
/*------------------------------------------ 
Color Name - black
--------------------------------------------*/
.bg-black {
		background-color: var(--black) !important;
}
.text-black {
		color: var(--black) !important;
}
.border-black {
		border-color: var(--black) !important;
}
/*------------------------------------------ 
Color Name - black light
--------------------------------------------*/
.bg-black-light {
		background-color: var(--black-light) !important;
}
.text-black-light {
		color: var(--black-light) !important;
}
.border-black-light {
		border-color: var(--black-light) !important;
}
/*------------------------------------------ 
Section 
--------------------------------------------*/
.section.gift .has-light {
		box-shadow: 0 0 1rem RGBA(var(--white-rgb), .85);
}
.section.gift .has-border {
		border-image-source: linear-gradient(to left, #737373, #ebebeb, #737373);
}
.section.offer .info-block,
.section.mileage .card-top .info-block {
		background-color: RGBA(var(--white-rgb), .9);
}
.section.mileage .card-right::after, .section.mileage .card-left::after {
		background-color: RGBA(var(--black-rgb), .75);
}
.section.offer .point-block {
		background-color: RGBA(var(--black-rgb), .75);
}
.section.mileage .card-right::before {
		background-color: var(--white) !important;
}
.section.offer .card-item .info::before {
		background-color: var(--white) !important;
}
.section .card-item .info::after {
		background-color: RGBA(var(--black-rgb), .65)
}
.section .card-item .info:hover::after {
		background-color: RGBA(var(--black-rgb), .95)
}
.section .card-item .info:hover {
		background-color: RGBA(var(--black-rgb), .95)
}
.section.life .card-item .info:hover {
		background-color: RGBA(var(--white-rgb), .125)
}
.section.life {
		border-top-color: var(--white) !important;
}
.section.detail .table > :not(caption) > * > * {
		background-color: transparent;
		color: var(--white);
}
.section.detail .info::after {
		background: linear-gradient(to bottom, RGBA(var(--black-rgb), .75) 0%, RGBA(var(--black-rgb), .6) 80%, RGBA(var(--black-rgb), .3) 100%);
}
.section.detail .info .sub-title::after {
		background-color: RGBA(var(--black-rgb), .95)
}
@media (max-width: 575.98px) and (orientation:portrait) {
		.section.detail .info .sub-title::after {
				background-color: RGBA(var(--white-rgb), .125);
		}
}
/*------------------------------------------ 
Val Block
--------------------------------------------*/
.val-block {
		color: var(--white) !important;
		border-color: var(--white) !important;
		background-color: RGBA(var(--white-rgb), .15)
}
/*------------------------------------------ 
Btn More 
--------------------------------------------*/
.btn-more:focus, .btn-more:hover, .btn-more {
		background-color: var(--red) !important;
		box-shadow: 0 .5rem .75rem RGBA(var(--black-rgb), .35) !important;
		color: var(--white) !important;
}
.btn-more::after, .btn-more::before {
		background: linear-gradient(to right, RGBA(var(--white-rgb), .5) 0%, RGBA(var(--white-rgb), 0) 100%);
		opacity: .5;
}
.btn-more::after {
		opacity: 0;
}
.btn-more:hover, .btn-more:focus {
		box-shadow: 0 .1rem .25rem RGBA(var(--red-rgb), .15) !important;
}
.btn-enter.sp:hover, .btn-enter.sp:focus {
		color: var(--white) !important;
		background-color: var(--red) !important;
}
/*------------------------------------------ 
Footer
--------------------------------------------*/
footer .title {
		color: var(--gray);
}
footer a, footer .nav .nav-item .nav-link {
		color: var(--gray-dark);
}
footer a:hover, footer .nav .nav-item .nav-link:hover {
		color: var(--white);
}
footer a:focus, footer .nav .nav-item .nav-link:focus {
		color: var(--white);
}
/*------------------------------------------ 
é¦–åˆ·ç¦® / çºŒå¡ç¦®
--------------------------------------------*/
.main-container-TWE { 
    padding: 40px 20px; /* æ•´é«”å®¹å™¨çš„å…§é‚Šè· */
}

/* cards-section ç¾åœ¨åªè² è²¬èƒŒæ™¯å’Œé‚Šæ¡†ï¼Œä¸è™•ç†å…§éƒ¨å¸ƒå±€ */
.cards-section {
    position: relative; /* ç¢ºä¿å…§éƒ¨å…ƒç´ çš„å®šä½åŸºæº– */
    /* ç§»é™¤æ‰€æœ‰ d-flex, flex-column, flex-lg-row ç­‰å¸ƒå±€ç›¸é—œçš„ CSSï¼Œè®“å…§éƒ¨ .cards-content-wrapper è™•ç† */
    display: block; /* æˆ–è€…ä½ å¯ä»¥ä¸è¨­å®šï¼Œè®“å®ƒä¿æŒ block é è¨­è¡Œç‚º */
    width: 100%; /* ç¢ºä¿ä½”æ»¿å¯ç”¨å¯¬åº¦ */
}

/* æ–°å¢žçš„å…§éƒ¨å®¹å™¨ï¼Œç”¨æ–¼ç®¡ç†æ¨™é¡Œå’Œå¡ç‰‡çš„å¸ƒå±€ */
.cards-content-wrapper {
    display: flex;
    flex-direction: column; /* ç¢ºä¿æ¨™é¡Œå’Œå¡ç‰‡ç¸½æ˜¯ä»¥åž‚ç›´å †ç–Š */
    justify-content: center;
    align-items: center;
    padding-top: 20px; /* æ ¹æ“šéœ€è¦èª¿æ•´å…§éƒ¨å¡«å…… */
    padding-bottom: 20px;
    width: 100%; /* ä½”æ»¿çˆ¶å®¹å™¨ */
    position: relative; /* ç¢ºä¿ h3 çš„å½å…ƒç´ å®šä½ */
}

/* æ¨™é¡Œæœ¬èº«çš„æ¨£å¼ï¼Œç¢ºä¿ç½®ä¸­å’Œé–“è· */
.cards-content-wrapper h3 { /* é¸æ“‡å™¨è®Šç‚º .cards-content-wrapper h3 */
    text-align: center;
    margin-bottom: 30px; /* æ¨™é¡Œä¸‹æ–¹èˆ‡ç¬¬ä¸€å¼µå¡ç‰‡çš„é–“è· */
    padding-top: 30px; /* ç‚ºæ¨™é¡Œä¸Šæ–¹çš„ç·šç•™å‡ºç©ºé–“ */
    padding-bottom: 30px; /* ç‚ºæ¨™é¡Œä¸‹æ–¹çš„ç·šç•™å‡ºç©ºé–“ */
    position: relative; /* ç¢ºä¿ h3 è‡ªèº«çš„å½å…ƒç´ å¯ä»¥ç›¸å°æ–¼å®ƒå®šä½ */
    max-width: 90%; /* é™åˆ¶æ¨™é¡Œå¯¬åº¦ */
    width: fit-content; /* è®“å¯¬åº¦é©æ‡‰å…§å®¹ */
}

/* æ¨™é¡Œä¸‹æ–¹çš„æ°´å¹³æ¼¸å±¤ç·š - è¡Œå‹•è£ç½®é è¨­ */
.cards-content-wrapper h3::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 0px); /* è¡Œå‹•è£ç½® (MB) çš„å¯¬åº¦è¨­å®š */
	/* max-width: 800px; ä¹Ÿå¯ä»¥æ ¹æ“š PC é¡¯ç¤ºæ•ˆæžœå†èª¿æ•´ï¼Œæˆ–ç§»é™¤ */
    height: 3px;
    background: linear-gradient(to right, #737373, #ebebeb, #737373);
    z-index: 1; /* ç¢ºä¿ç·šæ¢åœ¨å¡ç‰‡ä¸Šæ–¹ */
}

/* åª’é«”æŸ¥è©¢ï¼šPC (æ¡Œæ©Ÿ) å¯¬åº¦è¨­å®šï¼Œè¦†è“‹è¡Œå‹•è£ç½®çš„è¨­å®š */
@media (min-width: 992px) { /* ä¸€èˆ¬å°‡ 992px è¨­ç‚º PC çš„æ–·é»žï¼Œä½ å¯ä»¥æ ¹æ“šéœ€æ±‚èª¿æ•´ */
    .cards-content-wrapper h3::after {
        width: calc(175%); /* PC (æ¡Œæ©Ÿ) çš„å¯¬åº¦è¨­å®š */
        /* max-width ä¹Ÿå¯ä»¥æ ¹æ“š PC é¡¯ç¤ºæ•ˆæžœå†èª¿æ•´ï¼Œæˆ–ç§»é™¤ */
    }
}

/* å…©å€‹å¡ç‰‡å®¹å™¨çš„æ¨£å¼ */
.cards-wrapper {
    display: flex;
    flex-direction: column; /* å°èž¢å¹•é è¨­åž‚ç›´å †ç–Š */
    justify-content: center;
    align-items: center;
    width: 100%; /* ä½”æ»¿çˆ¶å®¹å™¨å¯¬åº¦ */
    margin-top: 20px; /* è®“å¡ç‰‡å€å¡Šèˆ‡æ¨™é¡Œä¸‹æ–¹çš„ç·šæœ‰é–“éš” */
    position: relative; /* ç‚ºäº†å¡ç‰‡ä¹‹é–“çš„åž‚ç›´ç·šï¼Œå¿…é ˆåœ¨é€™è£¡è¨­å®š */
}

/* å¤§èž¢å¹•åž‚ç›´æ¼¸å±¤ç·š (å¡ç‰‡ä¹‹é–“) */
@media (min-width: 992px) {
    .cards-wrapper {
        flex-direction: row; /* å¤§èž¢å¹•ä¸¦æŽ’ */
        /* position: relative; å·²ç¶“åœ¨ä¸Šé¢è¨­å®šäº† */
    }

    .cards-wrapper::before { /* ä½¿ç”¨ ::before å‰µå»ºåž‚ç›´ç·š */
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 3px; /* æ¼¸å±¤ç·šçš„å¯¬åº¦ */
        height: calc(100% - 60px); /* ç·šæ¢é«˜åº¦ï¼Œè€ƒæ…®åˆ°ä¸Šä¸‹å„ 30px çš„é–“è· */
        background: linear-gradient(to bottom, #737373, #ebebeb, #737373); /* åž‚ç›´æ¼¸å±¤ */
        display: block; /* ç¢ºä¿åœ¨å¤§èž¢å¹•é¡¯ç¤º */
        z-index: 1; /* ç¢ºä¿ç·šæ¢åœ¨å¡ç‰‡ä¸Šæ–¹ */
    }
    /* èª¿æ•´å¡ç‰‡å€é–“è· */
    .cards-wrapper > .col:first-child {
        padding-right: 30px; /* ç‚ºå·¦å´å¡ç‰‡ç•™å‡ºå³é‚Šé–“è· */
    }
    .cards-wrapper > .col:last-child {
        padding-left: 30px; /* ç‚ºå³å´å¡ç‰‡ç•™å‡ºå·¦é‚Šé–“è· */
    }
}

/* å°èž¢å¹•æ°´å¹³æ¼¸å±¤ç·š (åœ¨å…©å€‹å¡ç‰‡ä¹‹é–“) */
@media (max-width: 991.98px) {
    .cards-wrapper > .col:first-child {
        position: relative; /* è®“ ::after å¯ä»¥ç›¸å°æ–¼å®ƒå®šä½ */
        padding-bottom: 60px; /* å¢žåŠ åº•éƒ¨å…§é‚Šè·ï¼Œç‚ºæ°´å¹³ç·šå’Œå…¶ä¸‹æ–¹çš„ç¬¬äºŒå€‹ card ç•™å‡ºç©ºé–“ */
    }

    .cards-wrapper > .col:first-child::after {
        content: '';
        position: absolute;
        bottom: 30px; /* æ”¾ç½®åœ¨ç¬¬ä¸€å€‹ card åº•éƒ¨ä¸Šæ–¹ 30px */
        left: 50%;
        transform: translateX(-50%);
        width: calc(100% - 40px); /* ç·šæ¢é•·åº¦ï¼Œè€ƒæ…®å®¹å™¨å·¦å³ padding */
        max-width: 600px; /* é™åˆ¶ç·šæ¢å¯¬åº¦ */
        height: 3px;
        background: linear-gradient(to right, #737373, #ebebeb, #737373); /* æ°´å¹³æ¼¸å±¤ */
        display: block; /* ç¢ºä¿åœ¨å°èž¢å¹•é¡¯ç¤º */
        z-index: 1; /* ç¢ºä¿ç·šæ¢åœ¨å¡ç‰‡ä¸Šæ–¹ */
    }
    /* ç§»é™¤å¤§èž¢å¹•çš„åž‚ç›´ç·š */
    .cards-wrapper::before {
        display: none;
    }
}