body {
	line-height: 20px;
}
/*header*/
.page #header {
    height: 105px;
}
#header .nav, .page #header .icon {
    /*bottom: 10px;*/
    top: 80px;
}
#header #nav_home {
	position: absolute;
    top: 80px;
}
.home #header .icon {
	position: absolute;
    top: 80px;
}

#header .nav {
    bottom: 10px;
}
    
/*menu*/
.side {
    margin-top: 57px;
    top: 0;
}

#nav-btn {
	display: none;
}
.sub-menu-checkbox{
	display: none;
}

#system-message-container {
	margin: 0px;
}

.moduletable {
	float:left;
	margin: 0px;
}

#related {
	margin-top: 0px;
}

.post-photo {
	margin-bottom: 50px;
}
.post-info {
	margin-bottom: 40px;
}
.checkcode {
	margin-top: 2px;
	margin-right: 15px;
}

#system-message > dd > ul{
	font-size:15px;
	line-height:21px;
	color:#d22229;
	top:125px;
	bottom:35px;
	border-width: 0px;
	list-style: none;
	padding: 0px;
}

#system-message > .message > ul{
	background: none;
}

#system-message > dd {
	margin: 0;
	font-weight: normal;
	text-indent: 0px;
}

.memberForm {
	margin-top: 0;
}

#news-top-margin {
	margin-top: 28px;
}

.orderDate {
	width: 90px;
	margin-right: 56px;
}

.orderPrice {
    width: 80px;
    margin-right: 40px;
}

#confirm1 {
	background: url(../images/zh-TW/title_product.gif) no-repeat left -101px;
}
#confirm2 {
	background: url(../img/project/title_product2.gif) no-repeat left top;
}
.loginInfo {
	position: absolute;
	line-height: 20px;
	top: 40px;
	right: 0;
	color: #797979;
}

#related .item {
	max-height: 160px;
}

#nocart{
	padding-left:0px; 
	width:760px;
}

.memberForm .form2 p {
	margin-bottom: 18px;
	line-height:  1.3em;
}

.errpage {
	margin-top: 105px;
}

.errpage h2 {
	background: url(../img/title_404.gif) no-repeat left 0px;
	text-indent: -9999px;
	width: 195px;
	height: 30px;
	margin-bottom: 20px;
}

.errpage p.col-article {
	margin-top: 0px;
	clear: both;
}

.errpage p.col-article a{
	color: #000;
}
.paint_mail{
	margin-top: 50px;
	margin-bottom: 60px;
	line-height:22px;
}
.paint_mail a{
	font-size:15px;
	color:#904b4c;
}
.paint_mail a:hover{
	color: #000000;
}
.free_shipping_txt{
	line-height: 24px;
}
.free_shipping_txt_desc{
	line-height: 24px;
	font-size: 1.3em;
}

select#options{
	margin-bottom: 5px;
	height: 24px;
	padding: 0 5px;
	line-height: 24px;
	color: #797979;
	font-size: 13px;
}
.table .row1 {
	padding: 10px 0;
  	background-color: #f9f9f9;
  	border-bottom: 1px dotted #787979;
}

.orderStatus {
  	width: 80px;
}

.orderTotal {
  	margin-right: 50px;
}

.page .side .part li a.tea_menu {
	/*background-image: url(../img/tea_menu_tw.png);*/
	height: 20px;
}
.page .side .part li a.tea_menu:hover {
	/*background-image: url(../img/tea_menu_tw_o.png);*/
}

/*slider*/
.swiper-container, .swiper2-container, .swiper3-container {
	width: 100%;
	height: 100%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	z-index: 1;
}

.swiper-container {
	padding: 40px 0;
}

.swiper2-container, .swiper3-container {
	padding: 0;
}

.swiper-slide {
	text-align: right;
	font-size: 14px;
	/* Center slide text vertically */
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
p .caption{
	text-align: right;
	font-size: 14px;
	background-color: #fff;
}
/*body*/
#container {
	width: 100%;
	max-width: 960px;
}

#post-nav {
	padding: 20px 0 0 0;
}

.table .row .td3 input {
    width: 36px;
    height: 20px;
    border: 1px solid #7A7A7A;
    font-size: 1.3em;
    text-align: center;
    line-height: 20px;
    margin-top: 25px;
}
.table .td2 {
    width: 270px;
}
.table .td3, .table .td7 {
    width: auto;
}
.table .td7 .number {
	display: initial;
}

.table .row .td2, .table .row .td3, .table .row .td7 {
    font-size: 1.5em;
    line-height: initial;
    height: auto;
}

.table .row .td2 a {
    display: block;
    width: 39px;
    height: 22px;
    text-indent: -9999px;
    background: url(../img/shopping/button.png) no-repeat -341px top;
    margin-top: 24px;
}
.table .row .td2 a:hover {
    background: url(../img/shopping/button.png) no-repeat -341px -22px;
}

.button2 {
	margin-left: 0;
}
.cart_memo {
	width: 300px;
}

.table .button {
	padding: 50px 0 0 0;
	width: auto;
}

.table .button .next, .table .button .continue {
	float: right;
	margin-left: 6px;
	margin-right: 0;
	margin-bottom: 6px;
}
form .button {
	padding-left: 0; 
}
form .button .next2, form .button .back {
	float: right;
	margin-left: 6px;
	margin-right: 0;
	margin-bottom: 6px;
}
.button2 .finish, .button2 .back2 {
	float: right;
	margin-left: 6px;
	margin-right: 0;
	margin-bottom: 6px;
}
.side {
    width: 200px;
}
p.imgExcerpt {
    margin-bottom: 20px;
}
.teahouse-column2 .col1 {
    margin-bottom: 20px;
}
#china_shipping_text {
	font-size: 13px;
    color: #640000;
    line-height: 24px;
}

#login_div {
	width: 760px;
	background-position: right bottom;
	display: inline-block;
    background-repeat: no-repeat;
    background-size: 170px auto;
    background-image: url(../images/login_cat.png);
    padding-bottom: 150px;
}
.memberForm .form2{
    margin: 0;
}
form .button .next2, form .button .back, .button2 .finish, .button2 .back2{
	max-width: 100%;
}
  
.productNav {
	text-align: center;
	margin: 20px 0;
	height: auto;
	background: none;
}

.productNav li b {
	display: none;
}
.productNav li ul {
	float: initial;
    display: contents;
}
.productNav li {
	float: initial;
    display: contents;
}
.productNav li ul li a {
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 10px;
}
#product_search_div {
	font-size: 1.3em;
    /*padding-bottom: 15px;*/
    margin: 20px 0 0px 0;
    /*background: url(../img/line_01.gif) no-repeat left bottom;*/
}
input#search{
	padding: 5px 5px 5px 35px;
    border-radius: 5px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    width: 300px;
    background-image: url(../images/searchbar.png);
    background-size:15px 15px;
    background-position: 10px center;
    background-repeat: no-repeat;
}
.search_tag {
	border-radius: 3px;
    cursor: pointer;
    float: left;
    padding: 3px 10px;
    background-color: #eee;
    margin-right: 10px;
    font-size: 10px;
}
.search_tag:hover {
	background-color: #ddd;
}

.home #header {
    height: 145px;
    padding-top: 75px;
}

#user_ico {
	opacity: 0.5;
    background-image: url(../images/user.png);
    background-size:20px 20px;
	background-position: left top;
	display: inline-block;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    text-indent: -9999px;
}

#shoppingbag_ico {
	opacity: 0.5;
	background-size:15px 20px;
	background-position: left top;
	display: inline-block;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
    background-image: url(../images/shoppingbag.png);
    text-indent: -9999px;
}
#user_ico:hover, #shoppingbag_ico:hover {
	opacity: 1;
}
#cart_count{
	position: absolute;
    background-color: red;
    color: #fff;
    padding: 1px 3px;
    border-radius: 3px;
    font-size: 11px;
    top: 10px;
    right: -2px;
    line-height: 11px;
}
#header .icon li a {
	opacity: 0.5;
}
#header .icon li a#youtube{
	background-size:15px 15px;
	background-image: url(../images/youtube@3x.png);
}
#header .icon li a#fb{
	background-size:15px 15px;
	background-image: url(../images/Facebook@3x.png);
}
#header .icon li a#ig{
	background-size:15px 15px;
	background-image: url(../images/Instagram@3x.png);
}
#header .icon li a#pin{
	background-size:15px 15px;
	background-image: url(../images/Pinterest@3x.png);
}
#header .icon li a:hover {
	opacity: 1;
}
#header .nav {
    right: 120px;
}
#header .icon li {
    margin-left: 5px;
}
.loginInfo a {
    margin-left: 5px;
}
.productNav .pdt_cat_menu {
	opacity: 0.5;
	background-size:38px 20px;
	background-position: left top;
	display: inline-block;
    width: 38px;
    height: 20px;
    background-repeat: no-repeat;
    text-indent: -9999px;
}
.productNav .pdt_cat_menu:hover {
	opacity: 1;
}
.productNav .active {
	opacity: 1;
}
#pdt_cat_menu104 {
	background-image: url(../images/zh-TW/onlineshop/onlineshop_tea.png);
}
#pdt_cat_menu110 {
	background-image: url(../images/zh-TW/onlineshop/onlineshop_snacks.png);
}
#pdt_cat_menu106 {
	background-image: url(../images/zh-TW/onlineshop/onlineshop_teawares.png);
}
#pdt_cat_menu113 {
	background-image: url(../images/zh-TW/onlineshop/onlineshop_accessories.png);
}
#pdt_cat_menu115 {
	background-image: url(../images/zh-TW/onlineshop/onlineshop_gifts.png);
}
#pdt_cat_menu119 {
	background-image: url(../images/zh-TW/onlineshop/zhtw_onlineshop_event_2.png);
}

#cat_list .pdt_cat {
	opacity: 1;
	background-position: left top;
	display: inline-block;
    background-repeat: no-repeat;
	text-indent: -9999px;
	cursor: pointer;
}

#pdt_cat104 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/home_onlineshop_tea.png);
}
#pdt_cat110 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/home_onlineshop_snacks.png);
}
#pdt_cat106 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/home_onlineshop_teawares.png);
}
#pdt_cat113 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/home_onlineshop_accessories.png);
}
#pdt_cat115 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/home_onlineshop_gifts.png);
}
#pdt_cat119 {
	background-size:80px 30px;
    width: 80px;
    height: 30px;
	background-image: url(../images/zh-TW/onlineshop/zhtw_home_onlineshop_event.png);
}

.cat-bg-line {
    padding-bottom: 15px;
    margin: 20px 0 20px 0;
    background: url(../img/line_01.gif) no-repeat left center;
}

.bg-line {
    padding-bottom: 15px;
    margin: 10px 0 10px 0;
    background: url(../img/line_01.gif) no-repeat left center;
}
.item .photo img {
	border-radius: 3px;
}

#cat_list .main_item {
	width: 40%;
	margin-right: 20px;
	float: left; 
}
#cat_list .item {
	width: 90px;
	margin-right: 10px;
	margin-bottom: 10px;
	float: left; 
}

#cat_list .item .photo img{
	width: 100%;
	border-radius: 3px;
}

#cat_list .main_item .photo img{
	width: 100%;
	border-radius: 3px;
}

#cat_list .item .pdt-imgs:hover, #cat_list .main_item img:hover{
	opacity: 0.5;
}

#cat_list .item .overlap:hover {
	-webkit-filter:contrast(2);
}

#cat_list .clear-bottom {
	margin-bottom: 30px;
	clear: both;
}

#cat_list .clear-cat-bottom {
	margin-bottom: 60px;
	clear: both;
}

#cat_list .main_text {
	display: block;
    float: left;
    width: 50%;
}

#cat_list .main_text h1{
	margin-bottom: 10px;
    font-size: 2.8em;
    color: #00a199;
	line-height: 110%;
}

#cat_list .main_text .price{
	font-size: 16px;
}

#cat_list .main_text .specInfo{
	font-size: 14px;
}

#cat_list .item-more {
	float: left;
    margin-top: 70px;
}

#post-wrap .post-photo {
    width: 50%;
}
#post-wrap .post-photo .imgWrapper {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
	overflow: hidden;
}
#post-wrap .post-photo .imgWrapper img {
    width: 100%;
    height: auto;
}
.thumbList img:hover {
	opacity: 0.5;
}

#program {
    height: auto;
}
#program li.part1, #program li.part2, #program li.part3, #program li.part4, 
#program li.part1_active, #program li.part2_active, #program li.part3_active, #program li.part4_active{
	background-size:180px 180px;
	width: 180px;
    height: 180px;
	background-position: left top;
	display: inline-block;
    background-repeat: no-repeat;
    text-indent: -9999px;
}
#program li.part1, #program li.part1_active {
	background-image: url(../images/zh-TW/onlineshop/shoppingbag_step1.png);
}
#program li.part2, #program li.part2_active {
	background-image: url(../images/zh-TW/onlineshop/shoppingbag_step2.png);
}
#program li.part3, #program li.part3_active {
	background-image: url(../images/zh-TW/onlineshop/shoppingbag_step3.png);
}
#program li.part4, #program li.part4_active {
	background-image: url(../images/zh-TW/onlineshop/shoppingbag_step4.png);
}

#program .part1, #program .part2, #program .part3, #program .part4 {
	opacity: 0.3;
}
#program .part1_active, #program .part2_active, #program .part3_active, #program .part4_active {
	opacity: 1;
}

.memberForm .inputBox {
    width: 100%;
}

.memberForm .inputBox input[type="email"], .memberForm .inputBox input[type="text"], .memberForm .inputBox input[type="password"] {
    border: 2px solid #D5D5D5;
    color: #7A7A7A;
    font-size: 13px;
    line-height: 24px;
    padding: 3px;
    height: 24px;
    width: 100%;
    border-radius: 3px;
}
.memberForm .inputBox input[type="checkbox"]{
	height: auto;
    margin-right: 10px;
}
.memberForm .form1, .memberForm .form2 {
    height: auto;
    background: none;
}

.memberForm button {
	border-radius: 3px;
    width: 100%;
    border: none;
    background-image: none;
    background-color: #ddd;
    height: 30px;
    cursor: pointer;
    text-indent: initial;
}
.memberForm button.main-btn {
	background-color: #666;
}

.memberForm button:hover {
	background-color: #666;
	color: #fff;
}

.moduletable_cart h1{
	font-size: 3em;
    margin-bottom: 0;
}

.moduletable_cart h3{
	font-size: 2em;
	margin: 10px 0;
    font-weight: bold;
}

.finishText {
    width: auto;
    height: auto;
    background: none;
    text-indent: initial;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 16px;
    color: #000;
}

.table .count .col1 {
    border-right: 1px dotted #787979;
    padding-right: 40px;
    margin-right: 40px;
}

.table .count .col2 {
    border-left: 0px;
    padding-left: initial;
}

.tab li a {
    margin-bottom: 10px;
}
.rule {
    width: auto;
}

.rule .column {
    display: contents;
}

.paged li {
    font-size: 1.5em;
}
.sel{
	width: 36px;
	border: 1px solid #7A7A7A;
	font-size: 1.3em;
	text-align: center;
	line-height: 20px;
	margin-top: 25px;
}
.column img:hover{
	opacity: 0.5;
}
.orderPic {
	font-size: 1.3em;
	width: 80px;
}
.orderQty {
	font-size: 1.3em;
	width: 40px;
}
.scrollbar {
	overflow-x: hidden !important;
	overflow-y: auto !important;
	background-color: #fff;
}
.scrollbar .mcontentwrapper {
	overflow: initial !important;
}
.flexcrollactive {
	z-index:999;
}

.vscrollerbase {
	width: 0 !important;
}

.food_menu img{
	margin: 0;
	padding: 0;
	width: 100%;
}

.menu_limit {
	font-size: 2em;
    line-height: 3em;
    color: #3d9373;
    font-weight: bold;
    margin-top: 30px;
}

.modifyForm .label, .form .label {
	width: 100px;
}

.modifyForm .inputBox, .form .inputBox {
    width: 660px;
}
.form input.type2, .modifyForm input.type2 {
	width: 500px;
}
.form select, .modifyForm select {
    border: 1px solid #D5D5D5;
    margin-bottom: 15px;
    color: #797979;
    padding: 0 10px;
    font-size: 13px;
	height: 24px;
}

.clearfix {
    clear: both;
}
.memberForm .loginForm a {
    text-align: right;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 10px !important;
}
.swiper-pagination-bullet {
	background: #bbb !important;
	opacity: 1 !important;
}
.swiper-pagination-bullet-active {
	background: #fff !important;
	opacity: 1 !important;
}

.sub-menu-dropdown{
	padding-left: 10px;
}
.primary-nav{
	position: sticky;
}
.input-box {
    height: 28px;
    border: 1px solid #7A7A7A;
    line-height: 28px;
    padding: 0 5px;
}
.btn {
	height: 30px;
    border: 1px solid #7A7A7A;
    font-size: 1.3em;
    line-height: 20px;
    color: #fff;
    padding: 5px 20px;
    cursor: pointer;
    border-radius: 3px;
    background-color: #373737;
}
.productNav {
    padding-bottom: 0;
}
.productNav li ul.cattags li, ul.cattags li{
	display: inline-flex;
	margin: 0;
}
.productNav li ul.cattags li a {
	margin: 0;
}
.productNav li ul.cattags li a:hover {
	text-decoration: none;
	border-bottom: 0;
}
.pdt_tag_menu img {
	height: 44px;
}
.menu_splite {
	align-self:center;
    display: block;
}
.post-info .cattags {
	margin-bottom: 16px;
    margin-left: -24px;
}
#post-wrap .post-info {
    width: 320px;
}
#post-wrap .post-info h1 {
    line-height: 110%;
}
.title_4_1 {
    width: 123px;
    height: 17px;
    background: url(../images/zh-TW/title_4_1.jpg) no-repeat left 0;
    text-indent: -9999px;
}
.form input.type0, .modifyForm input.type0 {
    width: 60px;
	height: 24px;
}
.artist-column2 .col1 .artist-intro {
    width: 185px;
    height: 114px;
    background: url(../img/hong-zhi-sheng/title_h.gif) no-repeat left -72px;
    text-indent: -9999px;
    margin-bottom: 45px;
}
img {
	max-width: 100%;
}
.artist-column2 .col1 img, .artist-column2 .col2 img {
	max-width: 350px;
}
.home #indexmenu {
    margin-top: 40px;
}
.sublink {
	margin-top: 20px;
	margin-bottom: 40px;
}
.story, .trans {
	margin-bottom: 50px;
    display: inline-block;
	box-sizing: border-box;
}
.story .row, .trans .row {
	margin-left: -10px;
    margin-right: -10px;
}
.story .row .cols2 {
    float: left;
    width: 50%;
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
	margin-bottom: 20px; 
	box-sizing: border-box;
}
.story .row .cols1, .trans .row .cols1 {
    float: left;
    width: 100%;
    position: relative;
	margin-bottom: 20px; 
	padding-left: 10px;
    padding-right: 10px;
	box-sizing: border-box;
}
.story .cols1 img, .story .cols2 img {
    max-width: 100%;
}
.story h2 {
    font-family: PMingLiU, MingLiU;
    font-size: 300%;
    font-weight: bold;
    line-height: initial;
    color: #000;
    margin-bottom: 20px;
}
.story h3, .trans h3 {
    font-family: PMingLiU, MingLiU;
    font-size: 200%;
    font-weight: bold;
}

.story h4, .trans h4 {
    font-family: PMingLiU, MingLiU;
    font-size: 160%;
    font-weight: bold;
	line-height: 300%;
}
.story h3.title {
	display: inline-block;
	margin-right: 10px;
}
.story h3.green {
	color: #008080;
}
.trans a.maplink {
	font-family: arial;
	font-size: 14px;
	font-weight: bold;
	display: initial;
    margin-left: 40px;
}
.trans p {
	padding-left: 16px;
	font-size: 1.3em;
}
.trans p.medium, .trans h3 .address{
	font-size: 14px;
	font-weight: 300;
    font-family: auto;
}
.paged {
    padding: 15px 0 0 0;
    margin: 0 auto;
    display: table;
}
.paged li {
	font-size: 20px;
	color: #000;
	margin: 0 10px;
}
.paged li.active a {
	font-size: 20px;
    color: #bbb;
}
.paged li.alink a {
	font-size: 14px;
	color: #000;
}
.paged li.ulink {
	font-size: 14px;
	color: #bbb;
}
#nav {
	margin: 20px 0;
}
.photo {
	position: relative;
}
.overlap {
	position: absolute;
    left: 0;
    top: 0;
}
.page .side .part li a {
	background: none;
    text-indent: initial;
    font-size: 1.6em;
    width: auto;
    font-weight: bold;
}
.page .side .part li a.active {
	color: #414142;
    text-decoration: underline;
}
.page .side .part ul#place_submenu li a {
	font-weight: normal;
}
.page .side .part .menu_subtitle {
	font-size: 70%;
}
.page .side .part li.part5 a {
    color: #009e96;
}
.page .side .part li ul li a {
    text-indent: 0;
    background: none;
    font-size: 1.2em;
    color: #797979;
    line-height: 100%;
    display: inline-block;
    padding-bottom: 4px;
    width: auto;
    height: 10px;
}

.footer_left {
	float: left;
    text-align: left;
    padding-left: 40px;
    margin-bottom: 20px;
	background: url(../images/arr-left.png) no-repeat left;
}

.footer_right {
	float: right;
    text-align: right;
    padding-right: 40px;
    margin-bottom: 20px;
	background: url(../images/arr-right.png) no-repeat right;
}

.footer_link {
	font-size: 150%;
	font-weight: bold;
}

@media screen and (max-width: 980px){
	.content_bottom {
		padding-top: 105px;
	}

	#list .item, #list .item-last {
	    width: 30%;
	    margin-right: 3%;
	}
	#list .item a, #list .item-last a {
    	width: auto;
		height: auto;
	}
	.photo img {
		width: 100%;
		height: auto;
	}

	#login_div {
		width: 100%;
	}
	#header .logo {
	    margin-left: 20px;
	}
	#header .icon {
		margin-right: 20px;
	}
	.swiper2-container, .swiper3-container {
		margin-top: 65px;
	}
	.home .swiper2-container {
		margin-top: 220px;
	}
	.home #indexmenu {
	    margin-left: 20px;
	    margin-right: 20px;
	}
	.page #header {
		max-width: 760px;
    	width: 100%;
    	margin-left: auto;
	    margin-right: auto;
	}
	#header {
		position: fixed;
	    top: 0;
	    width: 100%;
	    z-index: 11;
	    background-color: #fff;
	}
	.moduletable_pageBanner2{
		margin-top: 65px;
	}
	.post {
		float: initial;
	    max-width: 760px;
	    width: 100%;
	    margin-left: auto;
	    margin-right: auto;
	}
	#post-wrap .post-info {
		width: 250px;
	}
	.post div {
	    max-width: 100%;
	}
	.content_div img{
	    max-width: 100% !important;
	    height: auto !important;
	}
	.content_body {
		margin-top: 125px;
	    width: auto;
	    margin-right: 0;
	    margin-left: 0;
	    padding-left: 20px;
	    padding-right: 20px;
	}
	.teahouse-column4 .col1 {
	    margin-bottom: 30px;
	}
	/*menu*/
	#submenu1 {
		display: block;
	}
	#submenu2 {
		display: block;
	}
	#submenu3 {
		display: block;
	}
	.side {
	    margin-top: 0;
	}
	#nav-btn {
		display: block;
	}
	.primary-nav {
	  position: fixed;
	  z-index: 999;
	}
	.page .side .part {
	    margin-top: 50px;
	    margin-bottom: 30px;
	}

	.menu2 { position: relative; }

	.menu2 ul {
	  margin: 0;
	  list-style: none;
	}

	.open-panel {
	  border: none;
	  background-color: #fafafa;
	  padding: 0;
	}

	.hamburger {
	  background: transparent;
	  position: relative;
	  display: block;
	  text-align: center;
	  padding: 13px 0;
	  width: 50px;
	  height: 57px;
	  left: 0;
	  top: 0;
	  z-index: 1000;
	  cursor: pointer;
	}

	.hamburger:before {
	  content: "\2630"; /* hamburger icon */
	  display: block;
	  color: #000;
	  line-height: 32px;
	  font-size: 16px;
	}

	.openNav .hamburger:before {
	  content: "\2715"; /* close icon */
	  display: block;
	  color: #000;
	  line-height: 32px;
	  font-size: 16px;
	}

	.hamburger:hover:before { color: #777; }

	.primary-nav .menu2 li { position: relative; }

	.menu2 .icon {
	  position: absolute;
	  top: 12px;
	  right: 10px;
	  pointer-events: none;
	  width: 24px;
	  height: 24px;
	  color: #fff;
	}

	.menu2 a:hover { color: #000; }

	.menu2 { margin-bottom: 3em; }

	.menu-dropdown li .icon { color: #777; }

	.menu-dropdown li:hover .icon { color: #000; }

	.menu2 label {
	  margin-bottom: 0;
	  display: block;
	}

	.menu2 label:hover { cursor: pointer; }

	.menu2 input[type="checkbox"] { display: none; }

	input#menu[type="checkbox"] { display: none; }

	.sub-menu-dropdown { 
		/*display: none;*/
	}

	.new-wrapper {
	  position: absolute;
	  left: 50px;
	  width: calc(100% - 50px);
	  transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
	}

	#menu:checked + ul.menu-dropdown {
	  left: 0;
	  -webkit-animation: all .45s cubic-bezier(0.77, 0, 0.175, 1);
	  animation: all .45s cubic-bezier(0.77, 0, 0.175, 1);
	}

	.sub-menu-checkbox:checked + ul.sub-menu-dropdown {
	  display: block!important;
	  -webkit-animation: grow .45s cubic-bezier(0.77, 0, 0.175, 1);
	  animation: grow .45s cubic-bezier(0.77, 0, 0.175, 1);
	}

	.openNav .new-wrapper {
	  position: absolute;
	  -webkit-transform: translate(200px, 0);
	  -webkit-transform: translate3d(200px, 0, 0);
	  transform: translate3d(200px, 0, 0);
	  width: calc(100% - 250px);
	  transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
	}

	.downarrow {
	  background: transparent;
	  position: absolute;
	  right: 50px;
	  top: 0px;
	  color: #777;
	  width: 24px;
	  height: 24px;
	  text-align: center;
	  display: block;
	}

	.downarrow:hover { color: #000; }

	.menu2 {
	  position: absolute;
	  display: block;
	  left: -270px;
	  top: 0;
	  width: 250px;
	  transition: all 0.45s cubic-bezier(0.77, 0, 0.175, 1);
	  background-color: #fff;
	  z-index: 999;
	  padding-left: 20px;
	}

	.menu-dropdown {
	  top: 0;
	  overflow-y: auto;
	}

	.overflow-container {
	  position: relative;
	  height: calc(100vh - 73px)!important;
	  overflow-y: auto;
	  border-top: 73px solid #fff;
	  z-index: -1;
	  display: block;
	}

	.menu2 a.logotype {
		position: absolute!important;
		top: 11px;
		left: 80px;
		display: block;
	}


	.sub-menu-dropdown { 
		background-color: #fff;
	}

	.menu2:hover {
	  position: absolute;
	  left: 0;
	  top: 0;
	}

	.openNav .menu2:hover {
		 position: absolute;
		 left: -270px;
	}

	.openNav .menu2 {
		-webkit-transform: translate(270px, 0);
		-webkit-transform: translate3d(270px, 0, 0);
	  	transform: translate3d(270px, 0, 0);
	  	transition: transform .45s cubic-bezier(0.77, 0, 0.175, 1);
	}

	/*product*/
	
	.productNav {
		height: auto;
		/*margin-top: 90px;*/
		margin-bottom: 10px;
	}
	#related .item {
	    margin-right: 23px;
	}

	#program {
		height: auto;
	}
	.table .count .col1 {
	    /*width: auto; */
	    padding-right: 20px;
	    margin-right: 20px;
	}

	.table .count .col3 {
		margin: 0 40px 40px 178px;
	}
	.payInfo .left {
		width: auto;
	    padding-right: 10px;
	    margin-right: 10px;
	}
	.payInfo .right {
		float: right;
    	width: 340px;
    	margin-left: 0;
	}
	.loginInfo {
    	right: 20px;
    }
    #news-top-margin {
	    margin-top: 80px;
	}
	.custom {
		padding: 0 20px;
	}
	.post-footer .post-footer-col2 .col2 {
		width: auto;
	}
	.post-footer h2, .post-footer .post-footer-col2 {
		margin-bottom: 20px;
	}
	.post-article {
	    margin-top: 80px;
	}
	.post-article p {
	    max-width: 100%;
	}
	.profile {
	    margin-top: 80px;
	}
	.side {
	    width: auto;
	}
	.moduletable_submenu {
		margin-left: 20px;
	}
	.termsList {
		width: auto;
	}
	.payCount .right .col1 {
		margin-bottom: 15px;
	}
	.post h2.shop-title1 {
		width: 100%;
	}
	.post h2.terms-title2 {
		width: 100%;
	}
}

@media screen and (max-width: 776px){
	#related .item-last {
	    margin-right: 23px;
	}
}

@media screen and (max-width: 768px){
	#header #nav_home {
	    top: auto;
	}
	.home #header .icon{
		bottom: 10px;
		top: auto;
	}
	
	.productNav {
		background: none;
	}
	.productNav li {
    	margin-bottom: 5px;
    }

    .table .count .col2 {
    	margin-top: 25px;
    	padding-top: 25px;
	    width: 100%;
	    border-top: 1px dotted #787979;
	}
    .table .count .col1 {
	    border-right: 0;
	    padding-right: 0;
	    margin-right: 0;
	}
	.table .count .col3 {
		border-right: 0;
	}

	.payInfo .left {
		width: 100%;
		border-right: 0;
	    padding-right: 0;
	    margin-right: 0;
	    margin-bottom: 30px;
	}
	.payInfo .right {
		width: 100%;
		border-right: 0;
	    padding-right: 0;
	    margin-right: 0;
	    margin-left: 0;
	}

	.form input.type2, .modifyForm input.type2 {
    	width: 80%;
    }

    .table .count .col2 {
    	border-left: 0px;
    	padding-left: 0;
    }

    .pageBanner .productLogo {
    	top: 20px;
    	right: 0px;
    }

    .productLogo img{
		width: 70%;
	}

	#post-wrap .post-photo {
		width: 100%;
	}

	#post-wrap .post-photo .imgWrapper {
		max-width: 455px;
		height: auto;
    	aspect-ratio: 1/1;
	}
	#post-wrap .post-photo .imgWrapper img {
	    max-width: 100%;
	    height: auto;
	}
	#post-wrap .post-info {
		width: 100%;
	}

	#program li.part1, #program li.part2, #program li.part3, #program li.part4, 
	#program li.part1_active, #program li.part2_active, #program li.part3_active, #program li.part4_active{
		background-size:120px 120px;
		width: 120px;
		height: 120px;
	}
}

@media screen and (max-width: 540px){
	#list .item, #list .item-last {
	    width: 45%;
	    margin-right: 4.5%;
	}
	.teahouse-column5 .col1, .teahouse-column1 .col2{
		width: 100%;
	}
	.block300x175, .block186x227{
		width: 100%;
	}

	.pageBanner .productLogo {
    	top: 10px;
    	right: -10px;
    }
	.productLogo img{
		width: 50%;
	}

	#program li.part1, #program li.part2, #program li.part3, #program li.part4, 
	#program li.part1_active, #program li.part2_active, #program li.part3_active, #program li.part4_active{
		background-size:100px 100px;
		width: 100px;
		height: 100px;
	}

	#shipping, #shipping1, #shipping2 {
		width: 90%;
		margin-left: 0;
	}

	.story .row .cols2 {
		width: 100%;
	}
	
}
@media screen and (max-width: 460px){
	#post-wrap .post-photo .imgWrapper .mask {
		height: auto;
    	aspect-ratio: 1/1;
	}
	#post-wrap .post-photo .imgWrapper {
		height: auto;
    	aspect-ratio: 1/1;
	}
	#program li.part1, #program li.part2, #program li.part3, #program li.part4, 
	#program li.part1_active, #program li.part2_active, #program li.part3_active, #program li.part4_active {
		background-size:80px 80px;
		width: 80px;
		height: 80px;
	}

	#sbox-window {
		width: 100% !important;
		left: 0 !important;
		padding: 0 !important;
	}
	#sbox-content iframe{
		width: 100% !important;
	}
	#sbox-btn-close {
		right: 0 !important;
	}
	#cat_list .main_item {
		width: 100%;
	}
	#cat_list .main_text {
		width: 100%;
	}
	#cat_list .main_text h1 {
		margin-top: 20px;
	}
}
