/*
Theme Name:   Hello Elementor by Art Tangency Creation Code Team CG, LLTChen
Theme URI:    https://github.com/elementor/hello-theme
Template:     hello-elementor
Author:       Art Tangency Creation Code Team CG, LLTChen
Author URI:   https://elementor.com/
Description:  Hello Elementor by Art Tangency Creation Code Team CG, LLTChen
Version:      25.01.31
Text Domain:  hello-elementor
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
/* ==================== Default ==================== */
html {font-size: 16px;/*1rem預設值，不受瀏覽器字型大小影響*/}
html,body {font-family:"LiHei Pro Medium","Apple LiGothic Medium","Taipei Sans TC Beta",'Noto Sans TC',"Microsoft JhengHei",'Quicksand';}
.CG_pos_fix {position:fixed !important;}
.CG_pos_abs {position:absolute !important;}
.CG_floatL {float:left;}
.CG_floatR {float:right;}
.CG_clear::after {content:""; display:table; clear:both; height:0px;}
.CG_clear {zoom:1;/*IE6+7*/}
.CG_bottomZero {padding-bottom:0 !important; margin-bottom:0 !important;}
.CG_pointeventFalse {pointer-events: none;}
.ATC_hide {visibility: hidden;}
.ATC_none {display: none;}
.ATC_overHide {overflow: hidden;}
.ta-R{text-align:right;} .ta-L{text-align:left;} .ta-C{text-align:center;}
.cssTable {display:table;}
.cssTable > dl, .cssTable > ul {display: table-row;}
.cssTable > dl > dt, .cssTable > dl > dd, .cssTable > ul > li {display: table-cell;}
.cssFlex {display:block;}
.cssFlex > dl, .cssFlex > ul {display: flex;  margin: 0;}
.cssFlex > ol {margin: 0; padding: 0;}
.cssFlex > ol > li {list-style: none; padding: 20px;}
.cssFlex > dl > dt, .cssFlex > dl > dd, .cssFlex > ul > li {
	display: block; margin: 0 auto; box-sizing: border-box; padding: 20px; border-bottom: 1px solid #aaa;
}
.line_over {overflow-x:hidden; text-overflow:ellipsis; white-space:nowrap;}
.line_over2 {overflow-x:hidden; text-overflow:ellipsis; white-space:wrap; height: 2.8em;}
.ATC_ver_lr {writing-mode: vertical-lr;}
.CGc {-webkit-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1); -moz-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1); -o-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1); transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1);}
.fullMask {width:100%; height:100vh; position:fixed; top:0; left:0; background:#fff; pointer-events: none; display:none; z-index:99999;}
.fullMask::after {
	content: ''; width: 100px; height: 160px; display: block; margin: calc(50vh - 80px) auto 0px;
	background: no-repeat 50% 50%; background-image: url(images/logo_tppwinwow-icon.png); background-size: contain;
	-webkit-animation: op 1s linear infinite alternate; -moz-animation: op 1s linear infinite alternate; -ms-animation: op 1s linear infinite alternate; -o-animation: op 1s linear infinite alternate; animation: op 1s linear infinite alternate;
}

.ATC_editList li {margin-bottom: 1.4em;}

.CG_filter-multiply,
.CG_filter-multiply > div {mix-blend-mode: multiply;}

.CG_scorll, .smooth_scorll {-webkit-overflow-scrolling:touch; -webkit-border-radius:3px; border-radius: 3px;}
.CG_scorll::-webkit-scrollbar {width:5px; -webkit-border-radius:3px; border-radius: 3px;}
.CG_scorll::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); -moz-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); -o-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}
.CG_scorll::-webkit-scrollbar-thumb {background-color:#999; outline: 1px solid #999;}

.post-password-form {/* 文章加密 */
	max-width:800px;
	margin:10vh auto;
	text-align:center;
}
.post-password-form label input {width:calc(100% - 4em); display:inline-block; margin-left:10px;}

.br_false_mb br {}
.br_false_pc br {display: none;}
@media only screen and (max-width: 768px) {.br_false_pc br {display: block;} .br_false_mb br {display: none;}}
.switchImage img {width: 100%; height: auto;} .switchImage img:first-child{display:block;} .switchImage img:last-child{display:none;}/*RWD Image*/
@media only screen and (max-width: 768px) {.switchImage img:first-child{display:none;} .switchImage img:last-child{display:block;}}


/* ============== Elementor ============== */
#sunny2026-hero .swiper-slide {
	width: 100%; position: relative; overflow: hidden;
}
#sunny2026-hero .swiper-slide .swiper-slide-inner {padding: 0;}
#sunny2026-hero .swiper-slide .swiper-slide-inner .swiper-slide-contents {width: 100%; height: 100%;}
#sunny2026-hero .elementor-slides .swiper-slide-bg {background-position: 100% 100%;}

#sunny2026-hero .swiper-slide .sunnyImagine1 {width: auto; bottom: 0; position: absolute; z-index: 1;}
#sunny2026-hero .swiper-slide .sunnySlogon1 {position: absolute; z-index: 2;}
#sunny2026-hero .swiper-slide .sunnyTitle1 {position: absolute; z-index: 2;}





@media only screen and (min-aspect-ratio: 4/3) { /* W > H */
	#sunny2026-hero .swiper-slide .sunnyImagine1 {height: 86vh; left: 55vw;	}
	#sunny2026-hero .swiper-slide .sunnySlogon1 {width: auto; max-width: 45vw; height: auto; max-height: 20vh; bottom: 28vw; right: 40vw;}
	#sunny2026-hero .swiper-slide .sunnyTitle1 {width: auto; max-width: 45vw; height: auto; max-height: 40vh; bottom: 10vh; right: 40vw;}
}
@media only screen and (min-aspect-ratio: 16/9) {
	#sunny2026-hero .swiper-slide .sunnySlogon1 {max-width: 40vw; bottom:48vh; right: 45vw;}
	#sunny2026-hero .swiper-slide .sunnyTitle1 {max-width: 40vw; bottom: 5vh; right: 45vw;}
}

@media only screen and (max-aspect-ratio: 4/3) {
	#sunny2026-hero .swiper-slide .sunnyImagine1 {height: 86vh; left: 50vw;	}
	#sunny2026-hero .swiper-slide .sunnySlogon1 {width: auto; max-width: 55vw; height: auto; max-height: 20vh; bottom: 32vw; right: 40vw;}
	#sunny2026-hero .swiper-slide .sunnyTitle1 {width: auto; max-width: 55vw; height: auto; max-height: 40vh; bottom: 5vh; right: 40vw;}
}

@media only screen and (max-aspect-ratio: 1/1) {
	#sunny2026-hero .swiper-slide .sunnyImagine1 {height: 80vh; left: auto; right: -15vw;}
	#sunny2026-hero .swiper-slide .sunnySlogon1 {bottom: 34.5vw; right: 40vw;}
	#sunny2026-hero .swiper-slide .sunnyTitle1 { bottom: 5vh; right: 40vw;}
}

@media only screen and (max-aspect-ratio: 3/4) {
}

@media only screen and (max-width: 767px) {
	#sunny2026-hero .swiper-slide .sunnyImagine1 {height: 56vh; right: -25vw;}
	#sunny2026-hero .swiper-slide .sunnySlogon1 {bottom: 38.5vw;}

}

/* ==================== Header ==================== */
.elementor-location-header {} /*Header Elementor Container*/
#CG_header {}
#CG_header.action {background-color: rgba(255,255,255,0.9) !important }
#CG_header { transition:background-color 1s ease !important; }
/* #CG_header.elementor-sticky--effects >.elementor-container { min-height: 80px; }
#CG_header > .elementor-container {transition: min-height 1s ease !important; } */

header .elementor-sticky {
	top: 0 !important;
    --transition: .3s ease-in-out;
    transition: background-color var(--transition),
                background-image var(--transition),
                backdrop-filter var(--transition),
                opacity var(--transition);
}
/* Menu Toggle */
.elementor-menu-toggle {width:40px; height:40px; position:relative; outline: none;}
.elementor-menu-toggle::before,
.elementor-menu-toggle::after {
	background-color:#222; /* Nav color */
	content:''; display:block; width:80%; height:2px;
	position:absolute; left:10%; top:50%;
	-webkit-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1);
	-moz-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1);
	-o-transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1);
	transition: all 0.3s cubic-bezier(0.21, 1, 0.9, 1);
}
.elementor-menu-toggle::before {margin-top:-20%;}
.elementor-menu-toggle::after {margin-top:5%;
	padding-bottom: 20%; background-color: transparent; border: none; height: 0;
	border-image-source: linear-gradient(0deg, #68e2ff, #ffffff); border-image-slice: 1;
	border-top: 2px solid;
	border-bottom: 2px solid;
	-webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg);
}
.elementor-menu-toggle .eicon-menu-bar::after {}
.elementor-menu-toggle span, /* Default Nav icon */
.elementor-menu-toggle .eicon-close:before, /* old icon */
.elementor-menu-toggle .eicon-menu-bar:before {display:none;}
.elementor-menu-toggle.elementor-active {} /* Nav active */
.elementor-menu-toggle.elementor-active::before {
	margin-top:0%; -webkit-transform:rotate(45deg); -moz-transform:rotate(45deg); -o-transform:rotate(45deg); transform:rotate(45deg);
}
.elementor-menu-toggle.elementor-active::after {
	margin-top:0%; border-bottom: none; padding-bottom: 0;
	-webkit-transform:rotate(-45deg); -moz-transform:rotate(-45deg); -o-transform:rotate(-45deg); transform:rotate(-45deg);
}
.elementor-menu-toggle.elementor-active .eicon-menu-bar::after  {opacity:0;}

/* 修正 mobil sub menu scroll */
/* nav.elementor-nav-menu--dropdown .elementor-nav-menu {
	height: calc(100vh - 80px); overflow: auto; overscroll-behavior: contain;
} */
/* Menu Toggle End */

/* ==================== Footer ==================== */
#CG_footer {}
.backTop {} /* js handler */
#CG_powered a:hover {color:#999;}

/* Loading */
body.elementor-editor-active .LL_loadPad {display:none !important;} /* Elementor 模式隱藏 */
.LL_loadPad {width:100vw; height:100vh; top:0; left:0; position:fixed !important;}
.LL_loadPic {-webkit-animation: op 1s linear infinite alternate; -moz-animation: op 1s linear infinite alternate; -ms-animation: op 1s linear infinite alternate; -o-animation: op 1s linear infinite alternate; animation: op 1s linear infinite alternate;}
@-webkit-keyframes op{
	from{opacity:0.2;} to{opacity:1;}
}
@keyframes op{
	from{opacity:0.2;} to{opacity:1;}
}

/* -- Line -- */
.social_linePad {padding:5px 0px 0px 34px; clear:both;}
.social_linePad iframe:nth-child(1) {margin-right:5px;}
.social_linePad iframe:nth-child(2) {float:right;}
 
@media only screen and (max-width:720px){
    .social_linePad {padding-left:0px;}
}
 
 

/* 管理者登入: 前台上方控制 bar 移到下方。 需搭配 add_theme_support( 'admin-bar', array( 'callback' => '__return_false' ) ); */
#wpadminbar {
	top: auto; bottom:0px;	background:rgba(0,0,0,0.6); position: fixed;
}
.ab-sub-wrapper {
	top:auto; bottom:32px;
}
#AT_stickyHeader.elementor-sticky--active {top: 0px !important;}
/* IE */
#ieAlert {
	position: fixed; width: 100%; height: 100%; display: table;
	background: rgba(0,0,0,0.8); z-index: 99999999;
}
#ieAlert ul {display: table-row;}
#ieAlert li {
	display: table-cell; vertical-align: middle; text-align: center; color: #fff;
	padding:50px 30%;
}
#ieAlert li a {color: #fff; text-decoration: underline; font-weight: 700; cursor: pointer;}
#ieAlert li a:hover {color: rgb(158, 233, 252);}