/* bootstrap 5 fix */
@media (prefers-reduced-motion: no-preference) {
	:root {scroll-behavior: auto;}
}
:root{
	--ch2: 'Noto Sans TC', sans-serif;
	--en: "Cormorant Garamond", serif;
	--icon_color: #252525;
}
*{
	position: relative;
	box-sizing: border-box;
}
body{
	margin: 0;
	font-family: 'Noto Serif TC', serif;
	color: #252525;
	background-color: #e9e9e9;
}
img{
	position: relative;
	display: block;
	max-width: 100%;
}
a{display: inline-block;}
a, a:hover, a:focus{text-decoration: none;}
a:focus{outline: none;}
section{
	position: relative;
	overflow: hidden;
}
.flex{
	display: flex;
	flex-wrap: wrap;
}
.flex-row{
	display: flex;
	flex-wrap: wrap;
	margin-left: -12px;
	margin-right: -12px;
}
.flex-1{flex: 1;}
.center{
	margin-left: auto;
	margin-right: auto;
}
.t-center{text-align: center;}
.t-right{text-align: right;}
.v-center{
	top: 50%;
	transform: translateY(-50%);
}
.flex-center{justify-content: center;}
.flex-v-center{align-items: center;}
.show-xl, .show-lg, .show-md, .show-sm, .hide{
	display: none;
}
.container, .container-fluid, .container-xxl{
	padding-left: 15px;
	padding-right: 15px;
}
.row-p15{
	margin-left: -15px;
	margin-right: -15px;
}
.row-p15 > *{
	padding-left: 15px;
	padding-right: 15px;
}
.p15{
	padding-left: 15px;
	padding-right: 15px;
}
.fh{height: 100%;}
.full-img{
	max-width: none;
	width: 100%;
}
.wow{visibility: hidden;}
.cover-abs{
	position: absolute;
	top: 0;
	left: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* header */
header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	z-index: 9999;
}
.header_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: 0.85;
	transition: opacity 0.3s;
}
.menu_bg{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #1B1A1B;
	opacity: 0.95;
	display: none;
}
.menu{
	position: absolute;
	top: 80px;
	left: 0;
	width: 100%;
	height: calc(100vh - 80px);
	overflow-y: auto;
	display: none;
}
.menu_con{
	max-width: 1100px;
	min-height: calc(100vh - 180px);
	padding: 80px 50px 10px 50px;
	margin-left: auto;
	margin-right: auto;
}
.menu_row{
	margin-bottom: 60px;
}
.menu_item{
	margin-bottom: 40px;
}
.menu_btn{
	display: block;
	height: 100%;
	font-size: 18px;
	color: #fff;
}
.menu_btn_title{
	font-size: 18px;
	letter-spacing: 3px;
}
.menu_btn_title_en{
	font-family: var(--en);
	font-size: 32px;
	font-weight: 400;
	letter-spacing: 2px;
	margin-bottom: 20px;
}
.menu_btn_title_en2{
	font-family: var(--en);
	font-size: 54px;
	font-weight: 400;
	letter-spacing: 2px;
	margin-bottom: 20px;
}
.menu_btn_line{
	width: 40px;
	height: 1px;
	background-color: #C9886C;
	transition: width 0.3s;
}
.menu_btn:hover .menu_btn_line{
	width: 80px;
	background-color: #94C800;
}
.menu_item.active .menu_btn_line, .menu_btn.active .menu_btn_line{
	width: 80px;
	background-color: #94C800;
}
.menu_bottom{
	padding: 0 50px;
}
.menu_info_item{
	font-family: var(--ch2);
	font-size: 13px;
	color: #fff;
	font-weight: 400;
	letter-spacing: 0.5px;
	margin-bottom: 10px;
}
.menu_copyright{
	position: absolute;
	bottom: 0;
	right: 50px;
	font-family: "Arial";
	font-size: 12px;
	color: #fff;
}
.menu_right{
	position: absolute;
	top: 27px;
	right: 140px;
}
.menur_item{
	padding: 0 15px;
}
.menur_btn{
	width: 24px;
	height: 24px;
	background-color: var(--icon_color);
	mask-size: cover;
	mask-repeat: no-repeat;
	transition: transform 0.3s;
}
.menur_btn:hover{
	transform: scale(1.1);
}
.mricon_ig{
	mask-image: url(../img/icon_ig.png);
	-webkit-mask-box-image: url(../img/icon_ig.png);
}
.mricon_fb{
	mask-image: url(../img/icon_fb.png);
	-webkit-mask-box-image: url(../img/icon_fb.png);
}
.mricon_line{
	mask-image: url(../img/icon_line.png);
	-webkit-mask-box-image: url(../img/icon_line.png);
}
.menur_mobile{
	display: none;
	margin-bottom: 30px;
}
.menur_mbtn{
	width: 24px;
}
.header_logo{
	position: absolute;
	top: 20px;
	left: 20px;
	width: 232px;
	height: 40px;
	overflow: hidden;
}
.mobile_btn{
	position: absolute;
	top: 18px;
	right: 30px;
	cursor: pointer;
}
.mobile_btn_close{
	padding: 8px 6px;
	display: none;
}
.mobile_btn_close img{
	width: 26px;
}
.mobile_btn.active .mobile_btn_open{
	display: none;
}
.mobile_btn.active .mobile_btn_close{
	display: block;
}
.mobile_btn_bar{
	width: 40px;
	height: 1px;
	background-color: #000;
	margin-top: 9px;
	margin-bottom: 9px;
}
.mobile_btn_bar.bar1{
	width: 25px;
	left: -10px;
	transition: left 0.3s;
}
.mobile_btn_bar.bar3{
	width: 25px;
	transition: width 0.3s;
}
.mobile_btn:hover .mobile_btn_bar.bar1{
	left: 0;
}
.mobile_btn:hover .mobile_btn_bar.bar3{
	width: 40px;
}
/* header on top */
header.ontop{
	--icon_color: #ffffff;
}
header.ontop .header_bg{
	opacity: 0;
}
header.ontop .header_logo img{
	top: -40px;
}
header.ontop .mobile_btn_bar{
	background-color: #fff;
}
/* header active */
header.active{
	--icon_color: #ffffff;
}
header.active .header_bg{
	opacity: 0;
}
header.active .header_logo img{
	top: -40px;
}
header.active .mobile_btn_bar{
	background-color: #fff;
}

.side_menu{
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 10000;
}
.side_btn{
	display: block;
	width: 36px;
	margin-bottom: 20px;
}

/* footer */
footer{
	padding: 40px 0;
	background-color: #1B1A1B;
}
.footer_con{
	max-width: 1430px;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}
.footer_logo{
	width: 233px;
	margin-bottom: 40px;
}
.footer_social{
	justify-content: flex-end;
	padding-top: 10px;
	margin-left: -15px;
	margin-right: -15px;
}
.footer_social_item{
	padding: 0 15px;
}
.footer_social_btn{
	width: 30px;
}
.footer_text{
	max-width: 420px;
	font-family: var(--ch2);
	font-size: 13px;
	color: #fff;
	letter-spacing: 0.5px;
	line-height: 2em;
	margin-bottom: 50px;
}
.footer_hr{
	height: 1px;
	background-color: #444;
	margin-bottom: 50px;
}
.footer_info{
	font-family: var(--ch2);
	font-size: 15px;
	color: #fff;
	letter-spacing: 0.5px;
	margin-bottom: 30px;
}
.footer_info p{
	margin-bottom: 10px;
}
.footer_info b{
	font-weight: 500;
}
.btn_pos{
	width: 10px;
	margin-left: 10px;
	top: 2px;
}
.footer_map{
	width: 640px;
	margin-left: auto;
	margin-right: 0;
}

.copyright{
	font-family: "Arial";
	font-size: 11px;
	color: #fff;
	text-align: right;
	margin-top: 40px;
}

/* index */
.kv{
	height: 100vh;
}
.kv_item{
	display: block;
	width: 50%;
	height: 100%;
	overflow: hidden;
}
.kv_item_bg{
	position: absolute;
	top: 0;
	left: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.kv_item_mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #6D6759;
	opacity: 0.3;
	transition: opacity 0.5s;
}
.kv_item:hover .kv_item_mask{
	opacity: 0;
}
.kv_item_con{
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	padding: 0 15px;
}
.kv_item_con_box{
	transition: transform 0.3s;
}
.kv_item:hover .kv_item_con_box{
	transform: scale(1.05);
}
.kv_title{
	font-family: var(--en);
	font-size: 100px;
	color: #fff;
	text-align: center;
	letter-spacing: 7px;
	line-height: 1em;
	margin-bottom: 20px;
}
.kv_bar{
	width: 80px;
	height: 3px;
	background-color: #A7E200;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}
.kv_bar.type2{
	background-color: #00EEFF;
}
.kv_text{
	font-size: 26px;
	color: #fff;
	text-align: center;
	letter-spacing: 9px;
}
.sp_01{
	position: absolute;
	top: 100px;
	right: 40px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.sp_02{
	position: absolute;
	top: 60px;
	right: 200px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
@keyframes ani_breathe{
	0% {transform: scale(1);}
	50% {transform: scale(0.9);}
	100% {transform: scale(1);}
}
.main_sec{
	padding-top: 70px;
	padding-bottom: 70px;
}
.index_care{
	padding-top: 1px;
	padding-bottom: 1px;
}
.sp_star{
	width: 100px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 50px;
	margin-bottom: 50px;
}
.icare_title{
	font-size: 30px;
	font-weight: 600;
	line-height: 2em;
	letter-spacing: 7px;
}
.icare_title_en{
	font-family: var(--en);
	font-size: 80px;
	letter-spacing: 4px;
	line-height: 1.2em;
	padding-top: 50px;
}
.care_row{
	margin-bottom: 40px;
}
.care_item{
	width: 14.28%;
	margin-bottom: -30px;
}
.care_box{
	width: 180px;
	height: 180px;
	background-image: url(../img/light.png);
	background-repeat: no-repeat;
	background-size: contain;
	margin-left: auto;
	margin-right: auto;
}
.care_box_img{
	width: 80px;
	top: 50%;
	transform: translateY(-50%);
	margin-left: auto;
	margin-right: auto;
}
.care_box_text{
	font-size: 18px;
	letter-spacing: 1.5px;
	text-align: center;
	top: -40px;
}
.care_fadeInUp.animate__animated{
	animation-name: ani_care_fadeInUp;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
}
.care_fadeInDown.animate__animated{
	animation-name: ani_care_fadeInDown;
	animation-duration: 1.5s;
	animation-fill-mode: forwards;
}
@keyframes ani_care_fadeInUp{
	from{transform: translateY(50px); opacity: 0;}
	to{transform: translateY(0); opacity: 1;}
}
@keyframes ani_care_fadeInDown{
	from{transform: translateY(-50px); opacity: 0;}
	to{transform: translateY(0); opacity: 1;}
}
.main_text{
	font-family: var(--ch2);
	letter-spacing: 1.5px;
	line-height: 2.2em;
}
.ftb::first-letter{
	font-size: 20px;
	letter-spacing: 2px;
}
.care_text{
	max-width: 720px;
	margin-bottom: 100px;
}
.iser_box{
	display: block;
	width: 25%;
	color: #131313;
	background-color: #fff;
	border-left: 1px solid #131313;
}
.iser_box:first-child{
	border-left: none;
}
.iser_img{
	padding-bottom: 75%;
	overflow: hidden;
}
.iser_img img {
    position: absolute;
    top: 0;
    left: 0;
    max-width: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s;
}
.iser_con{
	padding: 30px 12px;
}
.iser_title{
	font-size: 20px;
	text-align: center;
	letter-spacing: 1px;
	margin-bottom: 7px;
}
.iser_sub{
	font-size: 15px;
	color: #929292;
	text-align: center;
	letter-spacing: 0.7px;
}
.iser_box:hover{
	color: #C9886C;
}
.iser_box:hover .iser_img img{
	transform: scale(1.05);
}
.banner{
	height: 540px;
}
.banner_mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
    opacity: 0.3;
}
.banner_con{
	top: 50%;
	transform: translateY(-50%);
	padding: 0 15px;
}
.banner_title{
	font-size: 20px;
	color: #fff;
	text-align: center;
	letter-spacing: 8px;
	margin-bottom: 20px;
}
.banner_title_en{
	font-family: var(--en);
	font-size: 54px;
	color: #fff;
	text-align: center;
	letter-spacing: 2px;
}
.iabout_item{
	width: 50%;
	padding-left: 15px;
	padding-right: 15px;
}
.iabout_item.right{
	border-left: 1px solid #e4c4b6;
}
.iabout_photo{
	max-width: 460px;
	margin-left: auto;
	margin-right: auto;
}
.iaboutr_con{
	max-width: 480px;
	top: 50%;
	transform: translateY(-50%);
	margin-left: auto;
	margin-right: auto;
}
.iabout_row{
	justify-content: space-between;
}
.iabout_box{
	width: 100px;
	height: 150px;
	margin-left: calc(50% - 150px);
	margin-bottom: 100px;
	cursor: pointer;
	transition: opacity 0.3s;
}
.iabout_box:hover{
	opacity: 0.8;
}
.iabout_box:nth-child(3n+1){
	margin-left: 0;
}
.iabout_box:nth-child(n+7){
	margin-bottom: 0;
}
.iabout_photo_big{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
	display: none;
}
.iabout_photo_big img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: none;
}
.iabout_photo_big img.active{
	display: block;
}
.main_title{
	font-size: 25px;
	font-weight: 500;
	letter-spacing: 3px;
	line-height: 1.8em;
	margin-bottom: 40px;
}
.more_btn{
	display: block;
	width: 160px;
	height: 75px;
	padding-top: 22px;
	margin-left: auto;
	margin-right: auto;
}
.more_btn_bg{
	position: absolute;
	top: 10px;
	left: 0;
	transition: top 0.3s;
}
.more_btn_frame{
	position: absolute;
	top: -10px;
	left: 0;
	transition: top 0.3s;
}
.more_btn_text{
	font-family: var(--en);
	font-size: 20px;
	color: #00D3E2;
	text-align: center;
}
.more_btn:hover .more_btn_bg{
	top: 0;
}
.more_btn:hover .more_btn_frame{
	top: 0;
}
.inews_title_row{
	align-items: flex-end;
	margin-bottom: 60px;
}
.inews_title{
	flex: 1;
	font-family: var(--en);
	font-size: 72px;
	letter-spacing: 3px;
	line-height: 1.2em;
}
.inews_title_sub{
	font-size: 19px;
	letter-spacing: 7px;
	padding-bottom: 20px;
}
.banner_title2_en{
	font-family: var(--en);
	font-size: 70px;
	color: #fff;
	letter-spacing: 3px;
	text-align: center;
}
.banner_title2{
	font-size: 24px;
	color: #fff;
	letter-spacing: 8px;
	text-align: center;
}
/*
.glasses_con{
	max-width: 1430px;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}
*/
.glasses_text{
	max-width: 580px;
}
.iwear_block_row{
	justify-content: space-between;
}
.iwear_block{
	width: 150px;
	height: 150px;
	background-color: #fff;
	margin-bottom: 40px;
}
.iwear_block img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	clip-path: polygon(15% 15%, 85% 15%, 85% 85%, 15% 85%);
	transition: clip-path 0.5s;
}
.iwear_block.active img{
	clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 00% 100%);
}
.glasses_bottom{
	height: 100px;
}

/* about */
.page_kv{
	height: 400px;
}
.page_kv_mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #65635D;
	opacity: 0.2;
}
.page_kv_con{
	padding-top: 200px;
	padding-left: 15px;
	padding-right: 15px;
}
.page_kv_title{
	font-size: 27px;
	color: #fff;
	font-weight: 400;
	letter-spacing: 5px;
	text-align: center;
}
.page_kv_title_en{
	font-family: var(--en);
	font-size: 72px;
	color: #fff;
	letter-spacing: 3.5px;
	text-align: center;
}
.about_sec{
	padding-bottom: 100px;
}
.about_con{
	max-width: 1570px;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}
.about_pic_div{
	margin-bottom: 80px;
}
.about_pic_02{
	position: absolute;
	top: 300px;
	right: 0;
}
.about_text{
	width: 780px;
	padding-left: 60px;
}
.about_banner_mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #6A645E;
	opacity: 0.15;
}
.about_banner_title{
	font-size: 21px;
	color: #fff;
	letter-spacing: 8px;
	margin-bottom: 15px;
}
.about_banner_title_en{
	font-family: var(--en);
	font-size: 56px;
	color: #fff;
	letter-spacing: 2.5px;
	line-height: 1.3em;
}
.about_name{
	font-size: 20px;
	letter-spacing: 1px;
	text-align: center;
	margin-bottom: 5px;
}
.about_name span{
	font-size: 16px;
	margin-left: 5px;
}
.about_name_en{
	font-size: 15px;
	letter-spacing: 0.5px;
	text-align: center;
	margin-bottom: 30px;
}
.w480{
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}
.about_name_space{
	height: 80px;
}
.about_video{
	padding-bottom: 80px;
}
.about_video_bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/about/video_bg.jpg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: top 80px center;
}
.about_main{
	padding-bottom: 80px;
}
.about_con_item{
	margin-bottom: 120px;
}
.about_con_left{
	width: 50%;
}
.about_con_right{
	width: 50%;
	padding-top: 100px;
	padding-left: 80px;
}
.about_con_pic{
	box-shadow: 90px 75px 0 #efefef;
}
.wl480px{
	max-width: 480px;
}
.about_con_item:nth-child(even) .about_con_left{
	order: 2;
	padding-left: 80px;
}
.about_con_item:nth-child(even) .about_con_right{
	order: 1;
	padding-left: 0;
}
.about_banner2{
	height: 720px;
}
.about_banner2_mask{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #2A2A2A;
	opacity: 0.5;
}
.about_banner2_title_en{
	font-family: var(--en);
	font-size: 48px;
	color: #fff;
	letter-spacing: 2px;
	text-align: center;
	margin-bottom: 20px;
}
.about_banner2_title{
	font-size: 21px;
	color: #fff;
	letter-spacing: 8px;
	line-height: 2em;
	text-align: center;
}

/* service */
.service_title_en{
	font-size: 48px;
	letter-spacing: 2px;
}

/* iwear */
.iwear_text{
	width: 600px;
}
.iwear_block_title{
	font-size: 19px;
	letter-spacing: 7px;
	text-align: center;
	margin-bottom: 70px;
}
.iwear_block_div{
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
.iwear_block_row2{
	margin-left: -12px;
	margin-right: -12px;
}
.iwear_item{
	width: 16.66%;
	padding-left: 12px;
	padding-right: 12px;
}
.iwear_item .iwear_block{
	margin-left: auto;
	margin-right: auto;
}

/* news */
.news_con{
	max-width: 1430px;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}
.news_box{
	display: block;
	width: 33.33%;
	color: #131313;
	background-color: #fff;
	border-left:  1px solid #000;
	margin-bottom: 60px;
}
.news_box:nth-child(3n+1){
	border-left: none;
}
.newsb_img{
	padding-bottom: 70%;
	overflow: hidden;
}
.newsb_img img{
	position: absolute;
	top: 0;
	left: 0;
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s;
}
.newsb_con{
	padding: 20px 30px;
}
.newsb_date{
	font-family: "Arial";
	font-size: 14px;
	color: #929292;
	margin-bottom: 10px;
}
.newsb_title{
	font-size: 20px;
	letter-spacing: 1px;
	text-align: center;
	margin-bottom: 15px;
}
.newsb_sub{
	font-size: 15px;
	color: #929292;
	letter-spacing: 0.7px;
	text-align: center;
}
.news_box:hover{
	color: #C9886C;
}
.news_box:hover .newsb_img img{
	transform: scale(1.05);
}
.news_sort{
	justify-content: center;
	margin-bottom: 50px;
}
.news_sort_btn{
	width: 300px;
	font-size: 17px;
	color: #131313;
	letter-spacing: 1px;
	text-align: center;
	padding-top: 10px;
	padding-bottom: 15px;
	border-bottom: 1px solid #fff;
}
.news_sort_btn:hover{
	color: #C9886C;
}
.news_sort_btn.active{
	border-bottom-color: #b7b7b7;
}
.navigation_div{
	padding-top: 10px;
}
.pagination{
	justify-content: center;
}
.page-link{
	font-family: "Arial";
	color: #000;
	border-color: #ccc;
	
}
.page-link:focus{
	color: #000;
	box-shadow: none;
	background: none;
}
.page-item.active .page-link{
	color: #fff;
	background: #C9886C;
	border-color: #C9886C;
}
.page-item:hover .page-link{
	color: #fff;
	background: #C9886C;
	border-color: #C9886C;
}

/* news_page */
.newsp_sec{
	padding-top: 120px;
	padding-bottom: 60px;
}
.newsp_info{
	justify-content: space-between;
	margin-bottom: 30px;
}
.newsp_date{
	font-family: "Arial";
	font-size: 14px;
	color: #929292;
	letter-spacing: 0.5px;
}
.newsp_sub{
	font-size: 15px;
	color: #929292;
	letter-spacing: 0.5px;
}
.newsp_title{
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 40px;
}
.newsp_hr{
	height: 1px;
	background-color: #fff;
	margin-bottom: 50px;
}
.newsp_con{
	max-width: 960px;
	padding-bottom: 60px;
	margin-left: auto;
	margin-right: auto;
}
.newsp_social{
	justify-content: center;
}
.newsp_social_btn{
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: #fff;
	padding-top: 15px;
	margin-left: 15px;
	margin-right: 15px;
}
.newsp_social_btn img{
	width: 30px;
	
	margin-left: auto;
	margin-right: auto;
}
.edit_area img{
	height: auto !important;
	margin-left: auto;
	margin-right: auto;
}
.edit_area iframe{
	width: 100%;
}

/* faq */
.fsp_01{
	position: absolute;
	top: 80px;
	left: 200px;
	width: 260px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.fsp_02{
	position: absolute;
	top: 600px;
	left: 100px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.fsp_03{
	position: absolute;
	top: 850px;
	right: 100px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.faq_item{
	background-color: #fff;
	margin-bottom: 40px;
}
.faq_item::after{
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	border: 22px solid #e9e9e9;
	border-color: #e9e9e9 #e9e9e9 transparent transparent;
}
.faq_btn{
	padding: 30px 90px 30px 20px;
	cursor: pointer;
}
.faqb_num{
	font-family: var(--en);
	font-size: 48px;
	letter-spacing: 2px;
	line-height: 1em;
	padding-right: 30px;
}
.faqb_num span{
	font-size: 64px;
}
.faqb_sp{
	width: 1px;
	height: 40px;
	background-color: #ccc;
	top: 8px;
}
.faqb_title{
	flex: 1;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 1px;
	padding-top: 8px;
	padding-left: 20px;
	padding-right: 20px;
}
.faqb_arrow{
	position: absolute;
	top: 50px;
	right: 60px;
	width: 25px;
	height: 14px;
	overflow: hidden;
}
.faq_con{
	font-family: var(--ch2);
	letter-spacing: 1px;
	line-height: 1.8em;
	padding-left: 140px;
	padding-right: 60px;
	padding-bottom: 30px;
	display: none;
}
.faq_btn:hover .faqb_title{
	color: #C9886C;
}
.faq_btn.active .faqb_num{
	color: #C9886C;
}
.faq_btn.active .faqb_arrow img{
	top: -14px;
}

/* contact */
.contact_sec{
	padding-bottom: 50px;
}
.contact_con{
	max-width: 1630px;
	padding-left: 15px;
	padding-right: 15px;
	margin-left: auto;
	margin-right: auto;
}
.contact_text{
	max-width: 640px;
	margin-bottom: 40px;
}
.contact_hr{
	height: 1px;
	background-color: #fff;
	margin-bottom: 50px;
}
.contact_info{
	font-family: var(--ch2);
	font-size: 13px;
	margin-bottom: 10px;
}
.contact_info span{
	font-weight: 500;
}
.contact_map{
	width: 640px;
	margin-left: auto;
	margin-right: 0;
}
.ctsp_01{
	position: absolute;
	top: 0;
	right: 200px;
	width: 300px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.ctsp_03{
	position: absolute;
	top: 200px;
	left: 150px;
	width: 300px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.ctsp_02{
	position: absolute;
	top: 600px;
	right: 150px;
	animation-name: ani_breathe;
	animation-duration: 4s;
	animation-iteration-count: infinite;
}
.contact_schedule{
	max-width: 1080px;
	background-color: #fff;
	padding: 80px 30px 100px 30px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 70px;
}
.contact_schedule::after{
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	border: 22px solid #e9e9e9;
	border-color: #e9e9e9 #e9e9e9 transparent transparent;
}
.contact_sch_title{
	font-size: 21px;
	letter-spacing: 2px;
	text-align: center;
	margin-bottom: 10px;
}
.contact_sch_title_en{
	font-size: 19px;
	letter-spacing: 0.5px;
	text-align: center;
	margin-bottom: 50px;
}
.schedule_table_div{
	overflow-x: auto;
	padding-bottom: 5px;
	margin-bottom: 40px;
}
.schedule_table{
	width: 640px;
	margin-left: auto;
	margin-right: auto;
}
.schedule_table th{
	font-family: var(--ch2);
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.5px;
	text-align: center;
	padding: 25px 5px;
	border-bottom: 1px solid #ccc;
}
.schedule_table td{
	font-family: var(--ch2);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.5px;
	text-align: center;
	padding: 25px 5px;
	border-bottom: 1px solid #ccc;
}
.schedule_table .sch_td1{
	font-weight: 400;
}
.schedule_text{
	font-family: var(--ch2);
	font-size: 13px;
	letter-spacing: 0.5px;
	line-height: 2em;
	text-align: center;
}

/* other */
.video_frame{
    position: relative;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.video_frame iframe, .video_frame video{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* setting */
.white{color: #fff;}
.red{color: #f00;}
.mb-10{margin-bottom: 10px;}
.mb-20{margin-bottom: 20px;}
.mb-30{margin-bottom: 30px;}

@media (min-width: 1400px){
	.glasses_con{
		max-width: 1430px;
	}
}

@media (max-width: 1600px){
	.menu_con{
		padding-top: 40px;
	}
	.menu_row{
		margin-bottom: 0;
	}
	.menu_btn_title_en{
		font-size: 30px;
	}
	.menu_btn_title_en2{
		font-size: 34px;
	}
	.kv_title{
		font-size: 70px;
	}
	.icare_title{
		font-size: 26px;
	}
	.icare_title_en{
		font-size: 50px;
		margin-bottom: 20px;
	}
	.service_title_en{
		font-size: 40px;
	}
	.inews_title{
		font-size: 50px;
	}
	.page_kv_title_en{
		font-size: 60px;
	}
}
@media (max-width: 1399px){
	.sp_01{
		top: 20px;
		right: 10px;
		width: 240px;
	}
	.sp_02{
		top: 20px;
		right: 10px;
	}
	.glasses_text{
		max-width: none;
	}
	.iwear_block_row{
		max-width: 690px;
		margin-top: 80px;
		margin-left: auto;
		margin-right: auto;
	}
	.about_pic_01{
		width: 90%;
	}
	.about_pic_02{
		width: 400px;
	}
	.about_text{
		width: 500px;
		padding-left: 0;
	}
	.about_banner2{
		height: 500px;
	}
	.fsp_01{
		left: 10px;
	}
	.fsp_02{
		left: 10px;
	}
	.fsp_03{
		right: 10px;
	}
	.ctsp_01{
		right: 10px;
	}
	.ctsp_03{
		left: 10px;
	}
	.ctsp_02{
		right: 10px;
	}
}

/* xl */
@media (max-width: 1199px){
	.show-xl{display: block;}
	.hide-xl{display: none;}
	
	.side_menu{
		right: 12px;
	}
	.care_row{
		justify-content: center;
	}
	.care_item{
		width: 25%;
	}
	.footer_info_row{
		margin-bottom: 40px;
	}
	.footer_map{
		margin-right: auto;
	}
	.iwear_block_div{
		max-width: 740px;
	}
	.iwear_item{
		width: 25%;
	}
}

/* lg */
@media (max-width: 991px){
	.show-lg{display: block;}
	.hide-lg{display: none;}
	
	.icare_title{
		font-size: 22px;
		line-height: 1.6em;
		letter-spacing: 4px;
	}
	.icare_title_en{
		font-size: 40px;
		letter-spacing: 1px;
		padding-top: 20px;
	}
	.iser_title{
		font-size: 16px;
	}
	.banner{
		height: 400px;
	}
	.banner_title_en{
		font-size: 32px;
		letter-spacing: 1px;
	}
	.iabout_item{
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
	.iabout_item.right{
		border-left: none;
		padding-top: 60px;
	}
	.inews_title{
		flex: 0 0 auto;
		width: 100%;
		margin-bottom: 10px;
	}
	.inews_title_sub{
		width: 100%;
		padding-bottom: 0;
	}
	.newsb_title{
		font-size: 16px;
	}
	.about_pic_div{
		padding-top: 30px;
		margin-bottom: 100px;
	}
	.about_pic_01{
		width: 85%;
	}
	.about_pic_02{
		width: 35%;
		top: 200px;
	}
	.about_text{
		width: 100%;
	}
	.about_banner_title_en{
		font-size: 30px;
		letter-spacing: 1px;
	}
	.about_con_item{
		margin-bottom: 80px;
	}
	.about_con_pic{
		box-shadow: 30px 25px 0 #efefef;
	}
	.about_con_right{
		padding-top: 0;
		padding-left: 40px;
	}
	.about_con_item:nth-child(even) .about_con_left{
		padding-left: 40px;
	}
	.about_banner2_title_en{
		font-size: 36px;
		letter-spacing: 1px;
	}
	.news_sort{
		margin-bottom: 40px;
	}
	.news_sort_btn{
		width: 33.33%;
	}
	.newsp_title{
		font-size: 30px;
	}
	.faq_con{
		padding-left: 20px;
	}
	.contact_left{
		margin-bottom: 50px;
	}
	.contact_text{
		margin-bottom: 30px;
	}
	.contact_hr{
		margin-bottom: 40px;
	}
	.contact_map{
		margin-right: auto;
	}
	.schedule_table{
		width: 420px;
	}
}

/* md */
@media (max-width: 767px){
	.show-md{display: block;}
	.hide-md{display: none;}
	
	/* header */
	body{
		padding-top: 60px;
	}
	header{
		height: 60px;
	}
	.header_logo{
		width: 162px;
		height: 28px;
		top: 17px;
		left: 15px;
	}
	header.ontop .header_logo img{
		top: -28px;
	}
	header.active .header_logo img{
		top: -28px;
	}
	.menu{
		top: 60px;
	}
	.menu_con{
		min-height: 0;
		padding-top: 30px;
	}
	.menu_item{
		margin-bottom: 20px;
	}
	.menu_btn_title{
		font-size: 16px;
	}
	.menu_btn_title_en{
		font-size: 20px;
		margin-bottom: 10px;
	}
	.menu_btn_title_en2{
		font-size: 20px;
		margin-bottom: 10px;
	}
	.menu_right{
		display: none;
	}
	.menur_mobile{
		display: block;
	}
	.menu_bottom{
		padding: 0 15px;
	}
	.menu_copyright{
		position: relative;
		right: 0;
	}
	.mobile_btn{
		top: 10px;
		right: 20px;
	}
	.sp_01{
		display: none;
	}
	.sp_02{
		display: none;
	}
	.kv{
		height: auto;
	}
	.kv_item{
		width: 100%;
		height: 300px;
	}
	.kv_title{
		font-size: 40px;
		letter-spacing: 4px;
	}
	.kv_text{
		font-size: 22px;
		letter-spacing: 5px;
	}
	.sp_star{
		width: 60px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
	.icare_title_en{
		font-size: 30px;
	}
	.care_item{
		width: 50%;
	}
	.care_fadeInDown.animate__animated{
		animation-name: ani_care_fadeInUp;
	}
	.care_text{
		margin-bottom: 50px;
	}
	.service_title_en{
		font-size: 26px;
	}
	.iser_row{
		padding-left: 15px;
		padding-right: 15px;
	}
	.iser_box{
		width: 100%;
		max-width: 460px;
		border-left: none;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
	.iser_box:nth-child(2n+1){
		border-left: none;
	}
	.main_sec{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.main_title{
		font-size: 22px;
		letter-spacing: 1px;
		line-height: 1.7em;
		margin-bottom: 20px;
	}
	.inews_title_row{
		margin-bottom: 30px;
	}
	.inews_title{
		font-size: 30px;
	}
	.news_box{
		width: 100%;
		max-width: 460px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
	.news_box{
		border-left: none;
	}
	.banner_title2_en{
		font-size: 46px;
		letter-spacing: 2px;
		margin-bottom: 10px;
	}
	.banner_title2{
		font-size: 22px;
		letter-spacing: 5px;
	}
	.page_kv{
		height: 300px;
	}
	.page_kv_con{
		padding-top: 130px;
	}
	.page_kv_title{
		font-size: 22px;
		letter-spacing: 2px;
	}
	.page_kv_title_en{
		font-size: 40px;
		letter-spacing: 1px;
	}
	.about_sec{
		padding-bottom: 60px;
	}
	.about_main{
		padding-bottom: 1px;
	}
	.about_pic_div{
		margin-bottom: 60px;
	}
	.about_pic_02{
		top: 100px;
	}
	.about_con_left{
		width: 100%;
		margin-bottom: 30px;
	}
	.about_con_right{
		width: 100%;
		padding-left: 0;
	}
	.about_con_pic{
		width: 300px;
		margin-left: auto;
		margin-right: auto;
		box-shadow: 15px 15px 0 #efefef;
	}
	.about_con_item:nth-child(even) .about_con_left{
		order: 1;
		padding-left: 0;
	}
	.about_con_item:nth-child(even) .about_con_right{
		order: 2;
	}
	.about_banner2{
		height: 400px;
	}
	.about_banner2_title_en{
		font-size: 26px;
	}
	.about_banner2_title{
		font-size: 19px;
		letter-spacing: 1px;
	}
	.iwear_block_title{
		letter-spacing: 2px;
		margin-bottom: 50px;
	}
	.iwear_block_row{
		max-width: 330px;
	}
	.iwear_block_div{
		max-width: 330px;
	}
	.iwear_item{
		width: 50%;
	}
	.iwear_block{
		margin-bottom: 30px;
	}
	.newsp_sec{
		padding-top: 30px;
	}
	.newsp_info{
		margin-bottom: 20px;
	}
	.newsp_title{
		font-size: 24px;
		text-align: left;
		margin-bottom: 30px;
	}
	.newsp_hr{
		margin-bottom: 30px;
	}
	.newsp_con{
		padding-bottom: 40px;
	}
	.faq_item{
		margin-bottom: 30px;
	}
	.faq_item::after{
		border-width: 12px;
	}
	.faq_btn{
		padding: 15px 30px 15px 15px;
	}
	.faqb_sp{
		display: none;
	}
	.faqb_num{
		font-size: 26px;
	}
	.faqb_num span{
		font-size: 26px;
	}
	.faqb_title{
		flex: 0 0 auto;
		width: 100%;
		font-size: 18px;
		padding-top: 12px;
		padding-left: 0;
	}
	.faqb_arrow{
		top: 22px;
		right: 20px;
	}
	.faq_con{
		padding-left: 15px;
		padding-right: 15px;
	}
	.fsp_01{
		display: none;
	}
	.fsp_02{
		display: none;
	}
	.fsp_03{
		display: none;
	}
	.contact_sec{
		padding-bottom: 30px;
	}
	.contact_sch_title_en{
		margin-bottom: 30px;
	}
	.contact_schedule{
		padding: 30px 10px 60px 10px;
	}
	.contact_schedule::after{
		border-width: 12px;
	}
	.ctsp_01{
		display: none;
	}
	.ctsp_03{
		display: none;
	}
	.ctsp_02{
		display: none;
	}
}

/* sm */
@media (max-width: 575px){
	.show-sm{display: block;}
	.hide-sm{display: none;}
	
	.iabout_box{
		margin-bottom: 40px;
	}
	.footer_logo{
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
	.footer_social{
		justify-content: center;
		margin-bottom: 30px;
	}
}