@charset "utf-8";

/* 載入思源黑、明體 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&family=Noto+Serif+TC:wght@200..900&display=swap');

:root {
	--color1: #63281a;
	--color2: #d16160;
	--color3: #e1c0b8;
	--color4: #ffcfcc;
}

html {
	background: url("../images/bg-fixed.png") top center repeat fixed;
	scroll-behavior: smooth;
}

body {
	background-color: transparent !important;
}

.container {
	background: url("../images/side-deco.png") top center repeat-y;
}

@media screen and (max-width: 991px) {
	html {
		background: var(--color3);
	}

	html:before {
		content: "";
		position: fixed;
		z-index: -1;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: url("../images/bg-fixed.png")center no-repeat;
		background-size: cover;
	}

	.container {
		background: none;
	}
}


/* 針對架構工具調整 */
.blk_head,
.blk_body,
.blk_item {
	background-color: transparent !important;
}

.blk_item {
	padding: 0;
}

@media screen and (max-width: 991px) {
	.blk_body,
	.blk_head {
		padding: 1vw 0;
	}

	.blk_pre .tips a {
		padding: calc(var(--bs-gutter-x) * 0.3);
	}

	.blk_bas .blk_body>* {
		margin-top: 1vw;
		margin-bottom: 1vw;
	}
}

/* 動畫 Canvas */
#Canvas {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        pointer-events: none;
		z-index: 999;
}

@media (max-width: 991px) {
	#Canvas {
    display: none !important;
	}
}


/*主視覺動畫*/
.kv-bg {
	width: 100%;
}

.kvitem {
	position: absolute;
}

.kv-tt {
	width: calc((598 / 1920)* 100%);
	top: calc((194 / 1920) * 100%);
    left: calc((335 / 1920) * 100%);
	animation: bounceInDown 1.2s;
	animation-delay: .1s;
	animation-fill-mode: backwards;
}

.MySwipeKV1 {
	width: calc((440 / 1920)* 100%);
	top: calc((1430 / 1920) * 100%);
    left: calc((484 / 1920) * 100%);
}

.MySwipeKV2 {
	width: calc((650 / 1920)* 100%);
	top: calc((826 / 1920) * 100%);
	left: calc((1015 / 1920) * 100%);
}

.swiperKV-container {
	overflow: hidden;
}

.swiperKV-container .swiper-slide img {
	width: 100% !important;
}

@media screen and (max-width: 991px) {

	.kv_m {
		position: relative;
	}

	.MySwipeKV1 {
		width: calc((1080 / 1920) * 100%);
        top: calc((675 / 1920) * 100%);
        left: calc((640 / 1920) * 100%);
	}

	.MySwipeKV2 {
		width: calc((1565 / 1920) * 100%);
        top: calc((1158 / 1920) * 100%);
        left: calc((204 / 1920) * 100%);
	}
}


/* 區塊 */
.blk_bas {
	margin: 470px auto 0px;
	max-width: 1300px;
	background: url("../images/blk-bg.png") top center repeat-y;
	transform-style: preserve-3d;
}

.blk_bas::before {
	content: '';
	width: 1300px;
	margin: 0 auto -320px;
	background: url("../images/blk-be.png")center top no-repeat;
	height: 145px;
	display: flex;
	top: -144px;
	right: 0px;
	position: relative;
	pointer-events: none;
	transform: translateZ(-1px);
}

.blk_bas::after {
	content: '';
	width: 1300px;
	margin: -240px auto 0px;
	background: url("../images/blk-af.png")center top no-repeat;
	height: 130px;
	display: flex;
	top: 129px;
	right: 0px;
	position: relative;
	pointer-events: none;
	transform: translateZ(-1px);
}

.block_other.blk_bas {
	margin: 180px auto 0;
	padding: 0 0 30px;
	background: none;
}

.block_other.blk_bas::before,
.block_other.blk_bas::after {
	display: none;
}

.block0 {
	margin:0 auto -130px;
}

@media screen and (max-width: 991px) {
	.blk_bas {
		margin: 48vw auto 0;
		background: url("../images/blk-bg.png") top center repeat-y;
		background-size: 100vw;
		transform-style: preserve-3d;
	}

	.blk_bas::before {
		content: '';
		width: 100%;
		display: flex;
		margin: 0 auto -31vw;
		background: url("../images/blk-be.png")center top no-repeat;
		background-size: 100vw;
		height: 11vw;
		top: -10.5vw;
		position: relative;
		pointer-events: none;
		transform: translateZ(-1px);
	}

	.blk_bas::after {
		content: '';
		width: 100%;
		display: flex;
		margin: -19vw auto 0;
		background: url("../images/blk-af.png") center top no-repeat;
		background-size: 100vw;
		height: 11vw;
		top: 10.5vw;
		position: relative;
		pointer-events: none;
		transform: translateZ(-1px);
	}

	.block_other.blk_bas {
		margin: 14vw auto 6vw;
		padding: 0;
	}

	.block0 {
		margin:0 auto -10vw;
	}
} 


/*文字標題*/

h2,
h3,
.menustyle2 ul li a,
.hightlight.half h3,
.go_btn a {
	font-family: 'Noto Sans TC';
}

.btt {
	position: relative;
	width: 100%;
	height: 156px;
	margin: -136px auto 100px;
	padding: 38px 0 0;
	align-items: center;
	background: url("../images/btt-bg.png")top center no-repeat;
	color: #fff;
	font-size: 3.8rem;
	font-weight: 900;
	letter-spacing: 2px;
	z-index: 1;
}

.block0 .btt {
	position: relative;
	width: 100%;
	height: 140px;
	margin: 0 auto;
	padding: 20px 0 0;
	background: url("../images/blk0-btt-bg.png")top center no-repeat;
	font-size: 4.8rem;
}

.block7 .btt {
	padding: 44px 0 0;
	font-size: 3.4rem;
}

.stt {
	margin: 10px auto 4px;
	padding: 10px 30px 15px;
	border-radius: 99rem;
	background: url("../images/bg-color2.jpg");
	color: #fff;
	font-weight: 900;
}

.hightlight.half h3 {
	width: 360px;
	margin: -2px auto 10px;
	padding: 10px 10px 15px;
	border-radius: 99rem;
	background: url("../images/bg-color2.jpg");
	color: #fff;
	font-weight: 900;
}

.go_btn a {
	font-size: 2.4rem;
	font-weight: 900;
}

.notice {
	/* color: #fff; */
	letter-spacing: 0.5px;
}

@media screen and (max-width: 991px) {

	.btt {
		height: 22vw;
		margin: -13.5vw auto 8vw;
		padding: 6vw 0 0;
		background-size: contain;
		font-size: 2.1rem;
		letter-spacing: 1px;
	}

	.block0 .btt {
		height: 20vw;
		margin: 0 auto;
		padding: 3vw 0 0;
		background-size: contain;
		color: #fff;
		font-size: 3.2rem;
	}

	.block7 .btt {
		padding: 7vw 0 0;
		font-size: 2rem;
	}

	.stt {
		margin: 0 auto;
		padding: 2vw 5vw 2.2vw;
	}

	.hightlight.half h3 {
		width: 260px;
		margin: 2vw auto;
		padding: 2vw 2vw 2.2vw;
		font-size: 1.8rem;
	}

	.notice {
		padding: .5em 2rem;
	}
}


/*元件調整*/
.count-down-container h3,
.count-down-container p {
	color: #fff;
}

.count-down h1,
.collect_5x6 .special,
.collect_5x6 .s-row h4,
.hightlight .font h4,
.round_3p .font h4 {
	background: var(--color1);
}

.zasshi3 ul li,
.half ul,
.round_3p ul,
.round_5p ul {
	border-radius: 12px;
	background: #ffcfcce8;
	backdrop-filter: blur(10px); 
    -webkit-backdrop-filter: blur(10px);
}

.dis-for-zasshi3,
.zasshi3 ul li .font p,
.zasshi3-buy {
	background: var(--color1);
}

.dis-for-zasshi3 big {
	color: var(--color4);
}

.zasshi3 ul li h4,
.alternate .font h4 {
	color: var(--color2);
}

.hightlight {
	margin: 20px auto;
}

.round_3p ul,
.round_5p ul {
	padding-top: 10px;
}

.round_3p img,
.round_5p img {
	border: 3px solid var(--color2);
	background: #fff;
}

.alternate ul:nth-child(odd) li:first-child,
.alternate ul:nth-child(even) li:last-child {
	background: url("../images/bg-color2.jpg");
}

.alternate ul:nth-child(odd) li:first-child .font h4,
.alternate ul:nth-child(odd) li:first-child .font .price big,
.alternate ul:nth-child(even) li:last-child .font h4,
.alternate ul:nth-child(even) li:last-child .font .price big {
	color: var(--color3);
}

.magazine ul {
	border: 0;
}

@media screen and (max-width: 991px) {

	.banner {
		padding: 0 3vw;
	}

	.half ul,
	.round_3p ul,
	.round_5p ul {
		margin: 1vw;
		padding: 1vw 0;
	}

	.film-rectangle .rectangle {
		margin-bottom: -3vw;
		background: transparent;
	}

	.hightlight {
		margin: 1vw auto;
	}

	.blk_bas .blk_body .round_3p,
	.blk_bas .blk_body .round_5p {
		margin: 3vw auto;
	}

	.round_3p ul,
	.round_5p ul {
		padding: 5vw 0;
	}
}

/* 1+6 */
.area .hightlight li {
	width: 176px;
	background: #fff;
	margin: 6px;
	padding: 0;
}

.area .half ul {
	padding: 0 0 0 0;
}

.area ul.item li {
	width: 96.5%;
}

.area ul.item li img {
	width: 100%;
	height: 625px;
	object-fit: cover;
}

.area .hightlight img {
	display: block;
	width: 176px;
	height: 176px;
	object-fit: cover;
}

.item-logo ul.item li.inner-bn img {
	width: 100%;
	height: 530px;
	object-fit: cover;
	box-sizing: border-box;
}

.item-logo {
	width: 572px;
}

.item-logo ul.item {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.item-logo ul.logo img {
	display: block;
	width: 100%;
	height: 70px;
	object-fit: cover;
}

@media screen and (max-width: 991px) {
	.item-logo {
		width: 98%;
	}

	.area .hightlight .inner-bn img {
		width: 100%;
		height: auto;
	}

	.area .hightlight li {
		width: 46vw;
		padding: 0;
		margin: 1vw;
	}

	.area .hightlight img {
		width: 46vw;
		height: 46vw;
	}

	/* .area ul.item {order: 1;} */

	.item-logo ul.item li.inner-bn img {
		height: 100vw;
	}
}


/*輪播統一設定*/
.slick-dotted.slick-slider {
	margin-bottom: 0px !important;
}

@media screen and (max-width: 991px) {
	.slider {
		margin: 2vw auto !important;
	}

	.slick-dotted.slick-slider {
		padding-bottom: 2vw !important;
	}
}


/**--  menu  --**/
.menustyle2 {
	width: 110px;
	border-radius: 99rem;
	border: 1px solid var(--color3);
	background: var(--menu-color1);
}

.menustyle2 .nav>* {
	border-bottom: none;
}

.menustyle2 ul {
	padding: 25px 0;
}

.menustyle2 a {
	font-weight: 700;
}

.menustyle2 .nav-link:focus,
.menustyle2 .nav-link:hover,
.menustyle2 .nav-link.active {
	color: #fff;
	background: var(--color2);
}

@media screen and (max-width: 991px) {
	.menustyle2 {
		width: 100%;
		border-radius: 0;
		border: 0;
		border-bottom: 1.5px solid var(--color3);
	}

	.menustyle2 ul {
		padding: 0;
	}
}


/*--  錨點微調 --*/
.target-fix {
	display: block;
	position: relative;
	top: 8vw;
	height: 0;
	overflow: hidden;
}

@media screen and (max-width: 991px) {
	.target-fix {
		top: -2vw;
	}
}
