*{
	margin:0;
	padding:0;
	box-sizing:border-box;
	font-family:'Noto Serif JP', serif;
}
html{
	scroll-behavior:smooth;
}
body:before{
	content:"";
	display:block;
	width:100%;
	height:107px;
}
*[hidden]{
	position: fixed;
	top: -9999px;
	left: 0;
	opacity: 0;
	pointer-events: none;
}
a{
	text-decoration:none;
	color:#000;
}
h3{
	display:inline-block;
}
a:hover{
	opacity:0.8;
	transition:0.1s;
	text-decoration:underline;
}
body{
	/* font-family:'Libre Baskerville', serif; */
	line-height:1.6;
	color:#050505;
	overflow-x:hidden;
}
img.noanime{
  transform:none!important;
	pointer-events:none;
}
.announcement a:hover{
	text-decoration:underline;
}
.arrow:after{
	margin-left:8px;
	font-weight:bold;
}
.l-main{overflow:hidden;}
.display{
	display:flex;
	gap:40px;
}
.content_br{
	display:none;
}
.align_center{
	display:flex;
	justify-content:center;
	align-items:center;
	width:283px;
}
.align_center:last-of-type{
	margin-bottom:60px;
}
.slider-dots{
	visibility:hidden;
}
.review-slider-dot{
	visibility:hidden;
}
.nav-logo{
	display:flex;
	align-items:end;
	gap:66px;
}
/* Header Styles */
.header{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background:white;
	border-bottom:1px solid #F5F2EC;
	z-index:101;
}
/* Header Search (desktop) */
.header-search{
	position:fixed;
	top:106px;
	left:0;
	display:none;
	width:100%;
	background:#fff;
	border-bottom:1px solid #F5F2EC;
	z-index:100;
}
.header-search.active{
	display:block;
}
#searchCheck:checked ~ #headerSearchBar{display:block;}
.header-search-inner{
	padding:16px 20px;
	max-width:1200px;
	margin:0 auto;
	display:flex;
	align-items:center;
	gap:10px;
	border:2px solid transparent;
}
.header-search-input{
	flex:1;
  height:42px;
	padding:12px 14px;
	font-size:16px;
	border:1px solid #ddd;
}
.header-search-submit{
	background:#050505;
	color:#fff;
	border:none;
	padding:10px 16px;
	cursor:pointer;
}
.header-search-submit svg{
  display:block;
  width:20px;
}
.header-search-submit svg use{
	fill:#fff;
}
.header-search-close{
	background:transparent;
	border:none;
	font-size:20px;
	cursor:pointer;
}
.header-top{
	padding:20px 85px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.logo{
	width:178px;
	height:60px;
	background:#ddd;
	flex-shrink:0;
}
.header-right{
	display:flex;
	flex-direction:column;
	gap:20px;
	align-items:flex-end;
}
.header-info{
	display:flex;
	gap:20px;
	align-items:center;
}
.header-info a{
	color:#050505;
	font-size:14px;
	font-weight:500;
	letter-spacing:0.7px;
	white-space: nowrap;
}
.header-info a > img,
.header-info a > svg{width:24px;}
.header-info a:hover > svg{
  transform:scale(1.05);
  filter:brightness(1.1);
  transition:all 0.3s ease;
}
.phone-number{
	display:flex;
	align-items:center;
	gap:5px;
}
.phone-number svg{width:20px;}
.phone-{
	width:14px;
	height:18px;
	border:1px solid #050505;
}
.phone-text{
	color:#050505;
	font-size:16px;
	font-weight:700;
	letter-spacing:1.6px;
	white-space: nowrap;
}
.nav-container{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.social-icons{
	display:flex;
	gap:30px;
	align-items:center;
}
.social-icon{
  position:relative;
	width:20px;
	height:20px;
}
.social-icon:hover{
	cursor:pointer;
	opacity:0.7;
}
.social-icon label{
  display:block;
  margin:0;
}
.social-icon a svg,
.social-icon label svg{
  display:block;
  transition:all 0.3s ease;
}
.social-icon a:hover svg,
.social-icon label:hover svg{
  transform:scale(1.15);
  filter:brightness(1.1);
}
.cart_count{
  position:absolute;
  top:-14px;
  right:-14px;
  display:flex;
    align-items: center;
    justify-content: center;
  width:20px;
  height:20px;
  background-color:#b8941f;
  color:#fff;
  text-align:center;
  border-radius:50%;
}
/* Mobile Menu */
.mobile-menu-btn{
	display:none;
	flex-direction:column;
	cursor:pointer;
	padding:10px;
}
.mobile-menu-btn span{
	width:31px;
	height:1px;
	background:#121212;
	margin:3px 0;
	transition:0.3s;
}
.mobile-nav{
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background:white;
	z-index:1000;
	overflow-y:auto;
}
.mobile-nav.active{
	display:block;
}
.mobile-nav-header{
	position: sticky;
	top: 0;
	left: 0;
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:12px 20px;
	margin-bottom:30px;
	border-bottom:1px solid #F5F2EC;
	background-color: #fff;
	z-index: 1;
}
.mobile-nav-outer{padding:20px;}
.mobile-nav-flex{
	display: flex;
	gap:12px;
	align-items:center;
}
.close-btn{
  margin-top:-9px;
	font-size:28px;
	cursor:pointer;
	height:22px;
  line-height:1.0;
}
.search-container{
  position:relative;
	border:2px solid #050505;
	margin-bottom:30px;
}
.search-box{
	width:100%;
  height:55px;
	padding:15px;
	border:1px solid #ddd;
	font-size:16px;
	position:relative;
}
.l-header-search__submit{
  width:30px;
  position:absolute;
  top:12px;
  right:16px;
  background-color:transparent;
  border:none;
  outline:none;
  
}
.mobile-nav-section{
	padding:15px 0;
  border-bottom:2px solid #000;
}
.mobile-nav-title{
	font-weight:600;
	color:#050505;
	display:flex;
	justify-content:space-between;
	align-items:center;
	cursor:pointer;
}
.mobile-nav-section label{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
  margin-bottom:0;
	font-size:16px;
  font-weight:bold;
	cursor: pointer;
}
.mobile-nav-title svg{
	width: 14px;
	transform-origin: center center;
	transform: rotate(180deg);
	transition: transform 0.4s;
}
input[type="checkbox"]:checked ~ .mobile-nav-title svg{
	transform: rotate(0deg);
}
.mobile-nav-list{
	display: grid;
	grid-template-rows: 0fr;
	max-height: 0px;
  margin-bottom:0;
	list-style:none;
	transition: all 0.4s ease;
	overflow-y: hidden;
}
input[type="checkbox"]:checked ~ .mobile-nav-list{
	grid-template-rows: 1fr;
	max-height: 9999px;
  margin-top:10px;
}
.mobile-nav-list li{
	margin:10px 0;
	font-size:16px;
	color:#050505;
}
.mobile-nav-list li:before{
	content:"¡ü";
	margin-right:10px;
	font-size:12px;
}
.vertical-text-second{
	display:flex;
	justify-content:start;
	writing-mode:vertical-rl;
	color:#050505;
	font-size:32px;
	font-weight:400;
	line-height:38.4px;
	letter-spacing:1.6px;
	margin-right:18px;
	/* display:inline-block; */
}
.vertical-text1{
	display:none;
}
a:hover{
	text-decoration:none;
	opacity:0.8;
	cursor:pointer;
}
.header a:hover, footer a:hover{
	opacity:1;
	text-decoration:none;
  color:#d4af37;
}
.about-section{
	margin-bottom:150px;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
}
.about-image-left{
	position:absolute;
	top:calc(27.944px + 20.282vw);
	bottom:0;
	width:100%;
	height:calc(-14.845px + 37.559vw);
}
.about-image-right{
	position:absolute;
	right:0;
	top:calc(52.254px + 2.066vw);
	height:calc(-14.845px + 37.559vw);
}
.about-image-left img, .about-image-right img{
	width:auto;
	height:100%;
	object-fit:cover;
}
.about-left{
	width:30%;
	display:flex;
	flex-direction:column;
	align-items:center;
}
.about-title{
	display:flex;
	align-items:flex-start;
	flex-direction:row-reverse;
	margin-top: 12px;
	margin-bottom:58px;
	gap:28px;
}
.about-title .vertical-title{
	writing-mode:vertical-rl;
	color:#050505;
	font-size:32px;
	font-weight:400;
	line-height:30.4px;
	letter-spacing:5px;
	display:inline-block;
	margin-left:0;
}
.about-text{
	writing-mode:vertical-rl;
	display:inline-block;
	color:#050505;
	font-size:16px;
	font-weight:400;
	line-height:33px;
	letter-spacing:0.8px;
	height:400px;
}
.about-text p{
	white-space:nowrap;
	margin:0;
	/* remove extra spacing */
}
.about-text p span{
	display:inline-block;
  padding-bottom:3px;
	transform:translateX(-2px);
	text-combine-upright:all;
}
.container{
	max-width:1524px;
	margin:0 auto;
	position:relative;
}

.sp_notcut{
	display:none;
}
.pc_cut{
	display:block;
}
.in_above{
	display:block;
}
.in_bellow{
	display:none;
}
.reverse_1{
	display:flex;
	flex-direction:row-reverse;
	right:0px !important;
}
.product-grid{gap:103px;}
.showcase-container{
	width:1524px;
	height:903px;
	position:relative;
}
.showcase-background{
	width:1400px;
	height:779px;
	padding:30px;
	position:absolute;
	left:0px;
	top:124px;
	background:#F5F2EC;
}
.showcase-products{
	position:absolute;
	left:101px;
	top:573px;
	display:flex;
	justify-content:flex-start;
	align-items:center;
	gap:39px;
}
.showcase-featured{
	position:absolute;
	left:0px;
	top:150px;
	width:560px;
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:flex-start;
	gap:40px;
}
.featured-content{
	display:flex;
	flex-direction:column;
	justify-content:flex-start;
	align-items:flex-start;
	gap:20px;
	width:100%;
}
.featured-title{
	width:205px;
	height:52px;
	display:flex;
	justify-content:center;
	flex-direction:column;
	color:#050505;
	font-size:48px;
	font-family:'Noto Serif JP', serif;
	font-weight:400;
	letter-spacing:4.8px;
	word-wrap:break-word;
}
.featured-description{
	height:151px;
	color:#050505;
	font-size:16px;
	font-family:'Noto Serif JP', serif;
	font-weight:400;
	line-height:32px;
	letter-spacing:0.8px;
	word-wrap:break-word;
}
.featured-button{
	padding:10px 20px;
	background:#050505;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	text-decoration:none;
}
.button-dot{
	width:8px;
	height:8px;
	background:white;
	border-radius:50%;
}
.featured-button{
	color:#fff;
	font-size:18px;
	font-family:'Noto Serif JP', serif;
	font-weight:600;
	line-height:27px;
	letter-spacing:0.9px;
	word-wrap:break-word;
}
.product-card{
	width:580px;
	display:flex;
	align-items:center;
	gap:20px;
}
.product-image{
	width:280px;
	height:250px;
  margin-bottom:0;
	background:#F5F2EC;
	/* padding:30px; */
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:8px;
}
.product-image img{
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:4px;
}
.product-info{
	width:280px;
	display:flex;
	flex-direction:column;
	gap:20px;
}
.product-name{
	color:#050505;
	font-size:16px;
	font-weight:400;
	line-height:24px;
	letter-spacing:0.8px;
}
.product-footer{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.product-price{
	color:#050505;
	font-size:16px;
	font-weight:400;
	line-height:24px;
	letter-spacing:0.8px;
}
.add-button{
	bottom:20px;
	right:24px;
	background:#000;
	color:#fff;
	font-size:23px;
	padding:3px 10px;
	border-radius:100px;
	font-weight:lighter;
}
.add-button:hover{transform:none!important;}
.category-card{
	position:relative;
	width:100%;
	height:386px;
	border-radius:8px;
	overflow:hidden;
	cursor:pointer;
}
.category-card img{
	width:100%;
	height:100%;
	object-fit:cover;
}
.category-card1{
	position:relative;
	width:100%;
	height:100%;
	border-radius:8px;
	cursor:pointer;
}
.category-card1 a{display:block;}
.category-card1 img{
	width:100%;
	height:100%;
	object-fit:cover;
  transition: all 0.3s ease;
  transform-origin: center bottom;
}
.category-card1 a:hover .category-arrow1{
  background: linear-gradient(135deg, #d4af37, #b8941f);
}
.category-overlay{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	padding:30px;
}
.category-overlay a{display: block;}
.category-info{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.category-info1{
	display:flex;
	justify-content:space-between;
	align-items:end;
}
.category-infoIn{
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.category-name{
	color:#fff;
	font-size:32px;
	font-weight:400;
	line-height:1.4;
	letter-spacing:1.6px;
}
.category-name-en{
	color:#fff;
	margin-top: 10px;
	margin-bottom: 23px;
  letter-spacing: 1.5px;
}
.category-name-lead{color: #fff;}
.category-arrow{
	width:40px;
	height:40px;
	background:white;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:all 0.3s ease;
	transform:translateY(0px);
}
.category-arrow1{
	width:40px;
	height:40px;
	background:#050505;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:all 0.3s ease;
}
.category-overlay a:hover .category-arrow1{
	transform:translateY(-3px);
	background:linear-gradient(135deg, #d4af37, #b8941f);
	color:white;
}
.category-arrow1::after{
	content:'¢ª';
	color:#fff;
	font-size:18px;
	font-weight:bold;
}
.section-title{
	padding:30px 30px 30px 0;
	margin-left:70px;
	font-family:'Noto Serif JP', serif;
	font-size:32px !important;
	letter-spacing:2px;
	font-weight:400;
}
.section-title span{
	padding-left:5px;
	font-size:16px;
	color:#777;
	font-weight:400;
	display:block;
}
.product-card1{
	position:relative;
	overflow:hidden;
}
.image-container{
	position:relative;
}
.image-container img{
	width:100%;
	display:block;
	transition:transform 0.3s ease;
}
.image-container:hover img{
	transform:scale(1.05);
}
/* Heart Button */
.heart-btn{
	position:absolute;
	top:10px;
	right:10px;
	width:32px;
	height:32px;
	border:none;
	background-color: transparent;
	cursor:pointer;
	z-index:2;
}
.heart-btn:before,
.heart-btn:after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	transition: opacity 0.4s ease;
}
.heart-btn:before{
	background:url('https://file001.shop-pro.jp/PA01518/610/assets/common/heart-hov.webp') no-repeat center/contain;
	opacity: 0;
}
.heart-btn:hover:before{opacity: 1;}
.heart-btn:after{background:url('https://file001.shop-pro.jp/PA01518/610/assets/common/heart.webp') no-repeat center/contain;}
.heart-btn:hover:after{opacity: 0;}
.heart-btn:focus{outline: none!important;}
.heart-btn.active{
	background:url('https://file001.shop-pro.jp/PA01518/610/assets/common/heart-filled.webp') no-repeat center/contain;
	box-shadow: none!important;
}
.heart-btn.active:before,
.heart-btn.active:after{opacity: 0;}

/* Overlay */
.overlay{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background:rgba(56,37,0,0.6);
	color:#fff;
	padding:30px;
	display:flex;
	flex-direction:column;
	justify-content:end;
	align-items:start;
	transform:translateY(100%);
	transition:transform 0.3s ease;
}
.image-container:hover .overlay{
	transform:translateY(0);
	/* slide up to fill container */
}
.overlay h3{
	font-weight:100;
	margin:0;
	font-size:18px;
}
.overlay-arrow{
	position:absolute;
	bottom:20px;
	right:24px;
	background:#000;
	color:#fff;
	font-size:18px;
	padding:5px 10px;
	border-radius:100px;
}
.price{
	font-weight:100;
	margin:0;
	font-size:18px;
}
.banner{
	width:100%;
	height:500px;
	margin-top:150px;
	/* top & bottom margin */
	overflow:hidden;
	position:relative;
}
.banner img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}
.play-icon{
	border-radius:5px;
	height:38%;
	width:38%;
	background-color:#fff;
	color:#050505;
	font-size:16px;
}
.section1{
	padding:60px 20px;
	max-width:1200px;
	margin:0 auto;
}
.content h3{
	font-weight:bold;
	font-size:30px;
}
/* Section 1:Staff Assistance */
#staff-assistance{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:40px;
}
#staff-assistance img{
	width:500px;
	max-width:100%;
	border-radius:16px;
}
#staff-assistance .content{
	flex:1;
}
#staff-assistance h2{
	font-weight:100;
	font-size:28px;
	margin-bottom:20px;
}
#staff-assistance p{
	font-size:16px;
	margin-bottom:20px;
}
#repair-support{
	height:431px;
	align-items:center;
	background:url('https://file001.shop-pro.jp/PA01518/610/assets/common/Repair2.webp') center/cover no-repeat;
	/* replace with your bg image or color */
	color:#fff;
	display:flex;
	justify-content:flex-start;
	margin-bottom:150px;
}
#repair-support .button{
	display:inline-block;
	padding:10px 20px;
	background:#fff;
	color:#333;
	text-decoration:none;
	/* border-radius:8px; */
	font-weight:bold;
	transition:all 0.3s ease;
}
#repair-support .button:hover{
	opacity:1 !important;
	background:linear-gradient(135deg, #d4af37, #b8941f);
	color:#fff;
}
#repair-support .button::before{
	content:'';
	display: inline-block;
	width:8px;
	height:8px;
	margin-right: 6px;
	background-color:#000;
	border-radius:50%;
}
#repair-support .button:hover::before{background-color: #fff;}
.repair-support, .content, .button{
	border-radius:0px;
}
#repair-support .content{
	align-items:flex-start;
	max-width:738px;
	padding-left:180px;
	display:flex;
	flex-direction:column;
}
#repair-support h2{
	font-size:28px;
	font-weight:100;
	margin-bottom:10px;
  letter-spacing:1.5px;
}
#repair-support p.sttl{
	display: block;
	margin-bottom:38px;
	font-size:16px;
	line-height:1.6;
	font-family: "Libre Baskerville", serif;
	color: #fff;
  letter-spacing:1px;
}
#repair-support .repair-button{
	margin-top:40px; 
}
#repair-support .button{
	display:inline-block;
	padding:10px 20px;
	background:#fff;
	color:#333;
	text-decoration:none;
	font-weight:bold;
	transition:all 0.3s ease;
	margin:auto;
}
.banner1Outer{
	margin-right:30px;
	margin-left: 30px;
}
.banner1{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:60px;
	background:#fff;
	max-width:960px;
	min-height: 204px;
	margin:60px auto;
	border:4px solid #F4F1EB;
	position:relative;
}
.banner1 .bg-img{
	display: block;
	width: 180px;
	position: absolute;
	top: calc(50% - 86px);
	left: 16px;
}
.banner-text{
	position: relative;
	font-size:26px;
	color:#333;
	line-height:1.8;
	z-index: 1;
}
.highlight{
	color:#c18b2c;
	font-weight:bold;
}
.banner-logo{
	display:flex;
	align-items:center;
	gap:10px;
	white-space:nowrap;
}
.banner-logo img{
	height:auto;
	width:auto;
}
.banner-logo span{
	font-size:16px;
	font-weight:600;
	color:#222;
}
.reviews-section{
	position: relative;
	padding:60px 20px 150px;
	max-width:1200px;
	margin:0 auto;
	text-align:center;
}
.reviews-section .flower-img{
	display: block;
	position: absolute;
	width: 152px;
	bottom: 48px;
	right: 0;
}
body.products .reviews-section .flower-img{
	bottom: initial;
	top: 46px;
}
.br1{
	display:none;
}
.reviews-section h2{
	font-size:32px;
	/* font-family:'Courier New', Courier, monospace; */
	margin-bottom:8px;
	font-weight:400;
}
.reviews-section p.subtitle{
	font-size:16px;
	color:#050505;
	margin-bottom:40px;
	letter-spacing:1.5px;
}
.reviews-container{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:69px;
}
.review-card{
	width:112%;
	background:#f8f6f2;
	padding:28px 24px;
	text-align:left;
	position:relative;
	border-radius:4px;
	box-shadow:0 1px 4px rgba(0, 0, 0, 0.05);
}
.review-card h3{
	font-size:18px;
	margin-bottom:12px;
	font-weight:600;
	color:#222;
}
.review-card p{
	font-size:15px;
	line-height:1.8;
}
/* Section 2:Repair Support */
#repair-support1{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	background:url("https://file001.shop-pro.jp/PA01518/610/assets/common/ft-bg.webp") no-repeat center top;
	background-size:cover;
	overflow:hidden;
	min-height:400px;
	margin-top:150px;
}
#repair-support1 .bg-img{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:auto;
	object-fit:contain;
	z-index:0;
}
.bg-img_sp_div{
	display:none;
}
#repair-support1 .display{
	display:flex;
	gap: 35px;
}
#repair-support1 .content{
	padding-top:12px;
	align-items:center;
	position:relative;
	z-index:1;
	max-width:738px;
	display:flex;
	flex-direction:column;
	gap:3px;
}
#repair-support1 .button{
	display: flex;
	align-items: center;
  font-size:16px;
  letter-spacing:0.2px;
}
#repair-support1 .button img,
#repair-support1 .button svg{
  width:24px;
	margin-right:8px;
}
#repair-support1 .button svg use{fill:#fff;}
#repair-support1 h2{
	margin-top:166px;
	text-align:center;
	align-items:center;
	font-size:32px;
	line-height:150%;
	letter-spacing:5%;
	margin-bottom:10px;
	font-weight: 100;
}
#repair-support1 h3 svg{
  width:20px;
  margin-right: 6px;
}
#repair-support1 p{
	font-size:16px;
	line-height:1.6;
	margin-bottom:20px;
}
#repair-support1 .button{
	margin-bottom:140px;
	padding:17px 40px;
	background:#050505;
	color:#fff;
	text-decoration:none;
	font-weight:100;
	transition:all 0.3s ease;
}
#repair-support1 .button:hover{
	background:linear-gradient(135deg, #d4af37, #b8941f);
	color:#fff;
}
/* === Calendar Section === */
.calendar-section{
	background:#f9f7f2;
	padding:60px 20px;
	text-align:center;
}
.calendar-section h2{
	font-size:32px;
	margin-bottom:5px;
	font-weight:normal;
	letter-spacing:2px;
}
.calendar-section .subtitle{
	font-size:16px;
	font-family:'Libre Baskerville', serif;
	color:#000000;
	margin-bottom:30px;
	letter-spacing:1px;
}
.calendar-section p{
	font-size:14px;
	color:#000000;
	margin-bottom:40px;
}
.calendar-container{
	display:flex;
	justify-content:center;
	gap:120px;
	flex-wrap:wrap;
}
.tbl_calendar{
	text-align:center;
	border-spacing:3px;
}
.tbl_calendar caption{
	margin-bottom:20px;
	font-size:18px;
	font-weight:normal;
}
.tbl_calendar th,.tbl_calendar td{
	width:40px;
	height:40px;
	text-align:center;
	font-size:14px;
	vertical-align:middle;
	padding:0;
	margin:0;
	border:none;
}
.tbl_calendar th{
	font-weight:normal;
	color:#666;
	padding-bottom:10px;
}
.tbl_calendar td{
	position:relative;
}
.holiday{
	background:#000;
	color:#fff;
	font-weight:bold;
}
/* === Shopping Guide === */
.guide-container{
	max-width:1200px;
	margin:0 auto;
	padding:60px 20px;
	text-align:center;
}
.guide-container h2{
	font-size:32px;
	margin-bottom:5px;
	font-weight:400;
}
.guide-container p.subtitle{
	font-size:16px;
	color:#000000;
	margin-bottom:40px;
	font-family:'Libre Baskerville', serif;
}
.guide-sections{
	display:flex;
	justify-content:space-between;
	gap:62px;
	flex-wrap:wrap;
	text-align:left;
}
.guide-section{
	flex:1;
	min-width:280px;
}
.guide-section h3{
  display:block;
  width:100%;
	font-size:24px;
	margin-bottom:20px;
	border-bottom:1px solid #eee;
	padding-bottom:5px;
	font-weight:400;
}
.guide-section p{
	font-size:14px;
	color:#050505;
	margin-bottom:10px !important;
}
.guide-section strong{
	margin-bottom:10px;
	padding-bottom:10px;
}
/* === Footer === */
footer{
	margin-top:136px;
	background:#fff;
	border-top:1px solid #eee;
	padding:40px 20px;
}
.footer-container{
	max-width:1200px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.footer-left{
	flex:1;
	min-width:250px;
}
.footer-left > img{
	height:50px;
	margin-bottom:15px;
}
.social-icons2{
	margin-top:23px;
	display:flex;
	gap:9px;
	align-items:center;
  margin-left:0;
}
.social-icons2 li{
	display:inline-block;
	list-style:none;
	height:24px;
	width:24px;
}
.social-icons2 li + li{
	margin-left:12px;
}
.social-icons2 li a{
	display:block;
}
.social-icons1{
	display:inline-block;
	font-size:20px;
	color:#000;
	text-decoration:none;
}
.footer-links{
	flex:1;
	min-width:250px;
	display:grid;
	grid-template-columns:repeat(3, auto);
	gap:23px 40px;
}
.footer-links a{
	text-decoration:none;
	color:#050505;
	font-size:14px;
}
.copyright{
	margin:0 auto;
	max-width:1200px;
	text-align:start;
	margin-top:58px;
	font-size:12px;
	color:#050505;
}
.c-ttl-main{
  width:100%;
  text-align:center;
  margin:40px auto;
}
/* Container */
.c-breadcrumbs-list,
.mokab-breadcrumb{
	max-width: 1200px;
	display:flex;
	align-items:center;
	margin:0 auto;
	padding:20px 20px 0;
	font-size:14px;
	line-height: 1.4;
	font-weight:400;
  list-style:none;
}
.c-breadcrumbs-list li,
.mokab-breadcrumb li{
  display: block;
  list-style:none;
}
.c-breadcrumbs-list li > *,
.mokab-breadcrumb li > *{
	display:inline-block;
	align-self: center;
}
.c-breadcrumbs-list li a:hover,
.mokab-breadcrumb li a:hover{text-decoration: underline;}
.c-breadcrumbs-list li+li,
.mokab-breadcrumb li+li{
	position: relative;
	padding-left: 36px;
}
.c-breadcrumbs-list li+li:before,
.mokab-breadcrumb li+li:before{
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	display:block;
	width: 36px;
	height: 20px;
	background: url("https://file001.shop-pro.jp/PA01518/610/assets/common/angle.svg") no-repeat center center / contain;
}
.mokab-floating-wrapper{
	position:fixed;
	right:30px;
	bottom:30px;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:10px;
	z-index:999;
}
.mokab-floating-small-phone{
	visibility:hidden;
	width:50px;
	height:50px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:all 0.3s ease;
}
.mokab-floating-small-phone a{
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
  height:100%;
  border-radius:50%;
  background-color:#fff;
  border:2px solid #000;
}
.mokab-floating-small-phone a svg{width:30px;}
.mokab-floating-small-phone img,
.mokab-floating-small-phone svg{
	width:100%;
	height:100%;
	display: block;
}
.mokab-floating-small{
	visibility:hidden;
	width:50px;
	height:50px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:all 0.3s ease;
}
.mokab-floating-small a{
  display:flex;
  justify-content: center;
  align-items: center;
  border-radius:50%;
  overflow:hidden;
}
.mokab-floating-small svg,
.mokab-floating-small img{
	width:100%;
	height:100%;
	display: block;
}
.mokab-floating-small:hover{
	background:#333;
	transform:scale(1.05);
}
.mokab-floating-cart{
	width:110px;
	height:110px;
	background:#050505;
	border-radius:50%;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:5px;
	cursor:pointer;
	transition:all 0.3s ease;
}
.mokab-floating-cart a{
  display:block;
  text-align:center;
}
.mokab-floating-cart:hover{
	background:linear-gradient(135deg, #d4af37, #b8941f);
	transform:scale(1.05);
}
.mokab-floating-icon{
	width:20px;
	height:20px;
  margin:0 auto;
}
.mokab-floating-text{
	margin-top: 4px;
	text-align:center;
	color:#fff;
	font-size:14px;
	font-weight:500;
	line-height:1.2;
}
/* Small Images */
.mokab-small-images{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:40px;
	max-width:1000px;
	margin-inline:auto;
	background:linear-gradient(to top, #F5F2EC 88%, transparent 50%);
	/* padding:0 20px; */
}
.mokab-small-images img{
	width:100%;
	height:auto;
}
.button1{
	display:none;
}
.mokab-dot{
	background:white;
	outline:1px #E8D2A8 solid;
	outline-offset:-0.5px;
}
.mokab-dot-large{
	width:27.51px;
	height:9.21px;
}
.mokab-dot-medium{
	width:18.67px;
	height:5.59px;
}
.mokab-dot-small{
	width:10.98px;
	height:3.46px;
}
.mokab-dot-tiny{
	width:2.99px;
	height:1.50px;
}
.mokab-dot-large-alt{
	width:24.18px;
	height:6.11px;
}
.mokab-dot-medium-alt{
	width:15.34px;
	height:3.25px;
}
.mokab-dot-small-alt{
	width:8.10px;
	height:1.54px;
}
.mokab-dot-tiny-alt{
	width:2.73px;
	height:0.91px;
}
.avatar-icon-small{
	width:8.45px;
	height:8.45px;
	border:1px solid #050505;
}
.avatar-icon-large{
	width:18.72px;
	height:8.72px;
	border:1px solid #050505;
}
.container{
	max-width:1200px;
	margin:0 auto;
	padding:0 20px;
}
.breadcrumb-nav{
	padding:40px 0 20px;
}
.breadcrumb-nav .container{
	display:flex;
	align-items:center;
	gap:10px;
}
.breadcrumb-separator{
	width:3px;
	height:7px;
	background:white;
	border:1px solid #050505;
}
.breadcrumb-text{
	font-size:14px;
	font-weight:400;
}
.breadcrumb-current{
	font-weight:500;
}
.page-title{
	font-size:32px;
	font-weight:400;
	line-height:48px;
	letter-spacing:1.6px;
	margin-bottom:10px;
}
.page-subtitle{
	font-family:'Libre Baskerville', serif;
	font-size:16px;
	font-weight:400;
	letter-spacing:1.6px;
}
.section-header{
	display:flex;
	align-items:center;
	gap:10px;
	margin-bottom:20px;
}
.section-title{
	font-size:20px;
	letter-spacing:2px;
}
.contact-info{
	margin-bottom:20px;
}
.main-nav{
	display:flex;
	gap:31px;
}
.main-nav > li{
	display: block;
	list-style: none;
	cursor: pointer;
  transition:all 0.3s ease;
}
.main-nav > li:hover > a{
  color:#d4af37;
}
.main-nav > li:hover > a svg{transform: rotate(0deg);}
.main-nav a{transition:all 0.3s ease;}
.main-nav a{
	color:#050505;
	font-size:16px;
	font-weight:500;
	letter-spacing:0.8px;
	text-decoration:none!important;
	transform:translateY(-1px);
	transition:all 0.3s ease;
}
.main-nav a:hover{
  color:#d4af37;
}
.main-nav > li > a{
	position: relative;
	display: flex;
	align-items: center;
}
.main-nav > li > a:before{
	content: "";
	display: block;
	width: calc(100% + 30px);
	height: 30px;
	position: absolute;
	top: 99%;
	left: -15px;
	z-index: 0;
}
.main-nav > li > a span{
	position: relative;
	white-space: nowrap;
	z-index: 1;
}
.main-nav > li > a svg{
	display: block;
	width: 14px;
	transform-origin: center center;
	transform: rotate(180deg);
	transition: all 0.4s ease;
}
.main-nav > li > a:hover svg{transform: rotate(0deg);}
.main-nav-list-outer{
	position:absolute;
	top:100%;
	left: 0;
	width: 100vw;
	text-align: center;
	opacity: 0;
	pointer-events: none;
	transition: all 0.4s ease;
	z-index: -1;
}
.main-nav > li:hover .main-nav-list-outer{
	opacity: 1;
	pointer-events: auto;
	z-index: 1;
}
.main-nav-list{
	display: inline-flex;
	justify-content: center;
	margin:0 auto;
	min-width: 860px;
	padding: 20px 40px;
	background-color: #fff;
}
.main-nav-list li{
	display: block;
	list-style: none;
}
.main-nav-list li+li{margin-left: 20px;}
.main-nav-list li:before{
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 6px;
	background-color: #000;
	border-radius: 50%;
}
.footer-links a{
	transition:0.15s;
}

/* ===== COMPREHENSIVE HOVER EFFECTS ===== */
/* Button Hover Effects */
button:hover, .button:hover, .hero-button:hover, .hero-button1:hover, .button1:hover, .add-button:hover, .mokab-add-cart:hover, .mokab-add-favorite:hover, .post-testimonial-btn:hover, .catalog-product-card a:hover .catalog-download-button, .catalog-email-button:hover, .catalog-line-button:hover, .header-search-submit:hover, .header-search-close:hover, .mobile-menu-btn:hover, .close-btn:hover, .ig-btn:hover, .story-play:hover{
	transform:translateY(3px);
	transition:all 0.3s ease;
}
.ig-btn:hover, .hero-button:hover, .hero-button1:hover{
	background:linear-gradient(135deg, #d4af37, #b8941f);
	color:#fff;
}
.button:hover, .button1:hover{
	background-color:#333;
	color:#fff;
}
.add-button:hover{
	background-color:#d4af37;
	color:#fff;
	transform:translateY(-2px) scale(1.05);
}
.heart-btn:hover{
	transform:translateY(-2px) scale(1.1);
}
img:hover{
	transform:scale(1.02);
	transition:all 0.3s ease;
	filter:brightness(1.05);
}
.social-icons1:hover{
	transform:scale(1.1);
	filter:brightness(1.2);
  opacity:0.8;
}
img[alt*="¿÷¿Í·Á"]:hover, img[alt*="¿Í·Á"]:hover, img[alt*="¾¦ÉÊ"]:hover{
	transform:scale(1.03);
	box-shadow:0 6px 20px rgba(0, 0, 0, 0.15);
}
img[alt*="flower"]:hover, img[alt*="decor"]:hover{
	transform:scale(1.1) rotate(5deg);
	filter:hue-rotate(30deg);
}
img[alt*="logo"]:hover, img[alt*="Logo"]:hover{
	transform:scale(1.05);
	filter:brightness(1.1);
}
.social-icon:hover img, .social-icons:hover img{
	transform:scale(1.1);
	filter:brightness(1.2);
}
.mobile-nav a:hover{
	transform:translateY(-1px);
	transition:all 0.3s ease;
}
.mokab-floating-icon:hover{
	transform:scale(1.1);
	transition:all 0.3s ease;
}
.bg-img:hover,
.decorative-line-image:hover{
	transform:none;
	filter:none;
}
button, .button, img, a, .social-icon, .news-content, .product-card{
	transition:all 0.3s ease;
}
button:focus, .button:focus{
	outline:2px solid #d4af37;
	outline-offset:2px;
}
button:active, .button:active{
	transform:translateY(0);
	box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);
}
.mobile-review-slider-outer{
	position:relative;
}
.mobile-review-slider-container{
	position:relative;
	width:100%;
	overflow:hidden;
	padding:10px 0;
}
.mobile-review-slider-wrapper{
	display:flex;
	transition:transform 0.3s ease;
}
.mobile-review-slide{
	display:flex;
	flex-direction:column;
	align-items:center;
	box-sizing:border-box;
}
.mobile-slide{
	display:flex;
	flex-direction:column;
	align-items:center;
	box-sizing:border-box;
}
.mobile-review-slide > div{
	width:100%;
	height:100%;
	max-width:350px;
	background:#f8f6f2;
	padding:28px 24px;
	text-align:left;
	position:relative;
	border-radius:4px;
	box-shadow:0 1px 4px rgba(0, 0, 0, 0.05);
	margin:0 auto;
}
.review-slider-nav{
	position:absolute;
	top:calc(50% - 17px);
	background:#000;
	color:#fff;
	border-radius:50%;
	border:none;
	width:34px;
	height:34px;
	font-size:24px;
	cursor:pointer;
	z-index:10;
	display:flex;
	align-items:center;
	justify-content:center;
}
.review-slider-nav.prev{
	left:-17px;
}
.review-slider-nav.prev:before{
	font-family:"Material Symbols Outlined";
	content:"\e5cb";
}
.review-slider-nav.next{
	right:-17px;
}
.review-slider-nav.next:before{
	font-family:"Material Symbols Outlined";
	content:"\e5cc";
}
.review-slider-dots{
	position:absolute;
	bottom:20px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	gap:10px;
	z-index:10;
}
.review-slider-dot{
	width:12px;
	height:12px;
	border-radius:50%;
	border:none;
	cursor:pointer;
	transition:background 0.3s ease;
}
.mobile-slider-container{
	position:relative;
	width:100%;
	overflow:hidden;
	background:#F5F2EC;
	padding:20px 0;
}
.mobile-slider-wrapper{
	display:flex;
	transition:transform 0.3s ease;
}
.product-card{
	width:100%;
	max-width:350px;
	flex-direction:column;
	text-align:center;
}
.product-info{
	width:100%;
	display:flex;
	flex-direction:column;
	gap:20px;
}
.product-image{
	width:100%;
	height:250px;
	background:#F5F2EC;
	padding:0px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:8px;
	margin-bottom:10px;
}
.mobile-slider-outer{
	position:relative;
}
.slider-nav{
	position:absolute;
	top:calc(50% - 17px);
	background:#000;
	color:#fff;
	border:none;
	border-radius:50%;
	width:34px;
	height:34px;
	font-size:24px;
	cursor:pointer;
	z-index:10;
	display:flex;
	align-items:center;
	justify-content:center;
}
.slider-nav.prev{
	left:-17px;
}
.slider-nav.prev:before{
	font-family:"Material Symbols Outlined";
	content:"\e5cb";
}
.slider-nav.next{
	right:-17px;
}
.slider-nav.next:before{
	font-family:"Material Symbols Outlined";
	content:"\e5cc";
}
.slider-dots{
	position:absolute;
	bottom:20px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	gap:10px;
	z-index:10;
}
.slider-dot{
	width:12px;
	height:12px;
	border-radius:50%;
	border:none;
	cursor:pointer;
	transition:background 0.3s ease;
}
@media (prefers-reduced-motion:reduce){
	*{
		animation-duration:0.01ms !important;
		animation-iteration-count:1 !important;
		transition-duration:0.01ms !important;
	}
	.mokab-floating-cart:hover{
		transform:translateY(-50%) scale(1);
	}
}
@media (max-width:1400px){
	.about-cloud{
		width:calc(94.268px + 3.662vw);
		margin-bottom:20px;
	}
	.about-cloud img{
		width:100%;
	}
	.showcase-container{
		width:100%;
		max-width:1200px;
	}
	.showcase-background{
		width:90%;
		left:5%;
	}
	.showcase-products{
		left:50px;
		flex-wrap:wrap;
	}
	.main-nav a{
		white-space:nowrap;
		color:#050505;
		font-size:16px;
		font-weight:500;
		letter-spacing:0.8px;
		text-decoration:none;
	}
	.main-nav a:hover{
		text-decoration:underline;
	}
	.header-info a{
		white-space:nowrap;
		color:#050505;
		font-size:14px;
		font-weight:500;
		letter-spacing:0.7px;
	}
	.phone-text{
		white-space:nowrap;
		color:#050505;
		font-size:16px;
		font-weight:700;
		letter-spacing:1.6px;
	}
	.header-top{
		display:flex;
		padding:20px 20px;
	}
}
@media (max-width:1224px){
	body:before{
		height:70px;
	}
	.header-search{
		top:70px;
	}
	.about-image-left img, .about-image-right img{
		width:auto;
		object-fit:cover;
	}
	.contact-info p{
		margin-bottom:24px;
	}
	.break{
		display:block;
	}
	.social-icons{
		display:flex;
		gap:14px;
	}
	.banner-logo img{
		height:85%;
		width:85%;
	}
	.header-top{
		justify-content:space-between;
	}
	.text{
		display:none;
		flex-direction:column;
		position:absolute;
		left:32px;
		top:36px;
		z-index:2;
	}
	.vertical-text1{
		gap:45px;
		font-size:24px;
		writing-mode:vertical-rl;
		color:#050505;
		font-weight:400;
		line-height:38.4px;
		letter-spacing:6.6px;
		margin-right:18px;
		display:block;
		z-index:1000;
	}
	.button1{
		background:#050505;
		color:#fff;
		padding:10px 20px;
		display:flex;
		align-items:center;
		gap:10px;
		text-decoration:none;
		z-index:1000;
		position:relative;
		top:auto;
		left:auto;
		width:auto;
		margin-left:-10px;
		font-size:16px;
	}
	.button1::before{
		content:'';
		width:8px;
		height:8px;
		background:white;
		border-radius:50%;
	}
	.button1 span{
		font-size:11px;
		font-weight:600;
		letter-spacing:0.9px;
	}
	.button1 span{
		font-size:16px;
	}
	.social-icons2{
		justify-content:center;
	}
  .mobile-nav-flex .social-icons{display:none;}
	.container{
		padding:0 15px;
	}
	.copyright{
		text-align:center;
	}
	.page-title{
		font-size:24px;
	}
	.schedule-time br{
		display:none;
	}
	.sp_notcut{
		display:block;
	}
	.pc_cut{
		display:none;
	}
	.featured-title{
		font-size:36px;
		letter-spacing:3.6px;
	}
	.product-card{
		width:100%;
		flex-direction:column;
		text-align:center;
	}
	.product-image, .product-info{
		width:100%;
	}
	.category-card{
		height:auto;
	}
	.header-top{
		padding:15px 20px;
		flex-wrap:wrap;
	}
	.logo{
		width:120px;
		height:40px;
	}
	.header-right{
		flex-direction:row;
		gap:15px;
	}
	.phone-text{
		display:none;
	}
	.main-nav{
		display:none;
	}
	.logo img{
		height:112%;
	}
	.mobile-menu-btn{
		gap:4px;
		display:flex;
		opacity:0.7;
	}
	.vertical-text{
		font-size:32px;
	}
	.revese_heroimg{
		margin-left:auto;
	}
	.about-title .vertical-title{
		writing-mode:vertical-lr;
		font-size:20px;
	}
	.mokab-floating-small{
		visibility:visible;
	}
	.mokab-floating-small-phone{
		visibility:visible;
	}
	.about-image-left{
		left:0;
		bottom:0;
	}
	.add-button{
		display:none;
	}
	.about-text{
		writing-mode:horizontal-tb;
		display:flex;
		justify-content:center;
		flex-direction:row-reverse;
		align-items:flex-start;
		gap:10px;
	}
	.header-top{
		padding:15px 20px;
		flex-wrap:wrap;
		gap:15px;
	}
	.logo{
		width:120px;
		height:40px;
	}
	.header-right{
		flex-direction:row;
		gap:10px;
	}
	.header-info{display: none;}
	.phone-number{
		display:flex;
	}
	.phone-text{
		font-size:14px;
	}
	.main-nav{
		display:none;
	}
	.mobile-menu-btn{
		display:flex;
	}
	#staff-assistance .content{
		text-align:start;
	}
	.review-card .flower-img{
		display:none;
	}
	.about-title .vertical-title{
		font-size:20px;
	}
	.about-text{
		font-size:14px;
		line-height:1.6;
	}
	.featured-title{
		font-size:28px;
		letter-spacing:1.5px;
	}
	.featured-description{
		font-size:14px;
		line-height:1.6;
	}
	.product-card{
		flex-direction:column;
		text-align:center;
	}
	.product-image, .product-info{
		width:100%;
	}
	.product-name{
	}
	/*.category-card{
		height:250px;
	}*/
	.section-title{
		font-size:24px;
		padding:16px 16px 16px 0;
		margin-left:20px;
	}
	.banner{
		margin-top:60px;
	}
	.section1{
		padding:40px 20px;
	}
	#staff-assistance h2{
		font-size:22px;
	}
	.banner1{
		padding:40px 30px;
		margin:78px auto;
	}
	.banner-text{
		font-size:20px;
	}
	.banner-text::after{
		width:80px;
		height:55px;
		left:-40px;
	}
	#repair-support{
		position:relative;
		height:422px;
		align-items:center;
		background:url("https://file001.shop-pro.jp/PA01518/610/assets/common/Repair.webp") center / cover no-repeat;
		color:#fff;
		display:flex;
		justify-content:flex-start;
		overflow:hidden;
	}
	#repair-support::before{
		content:"";
		position:absolute;
		top:0;
		left:0;
		width:100%;
		height:100%;
		background:rgba(0, 0, 0, 0.5);
		z-index:1;
	}
	#repair-support > *{
		position:relative;
		z-index:2;
	}
	#repair-support .content{
		padding-left:30px;
		padding-right: 30px;
	}
	#repair-support h2, #repair-support1 h2{
		font-size:28px;
	}
	.reviews-section{
		padding:40px 20px 150px;
	}
	#repair-support1{
		background-image:url("https://file001.shop-pro.jp/PA01518/610/assets/common/ft-bg-sp2.webp");
	}
  .tbl_calendar{max-width:280px;}
	footer{
		text-align:center;
	}
	.footer-left > img{
		margin-right:auto;
		margin-left:auto;
	}
	.footer-container{
		padding:0px;
	}
	.calendar-section{
		padding:40px 20px;
	}
	.guide-container{
		padding:40px 20px;
	}
	.footer-container{
		padding:30px 20px;
	}
	.footer-links{
		display:none;
		grid-template-columns:1fr;
		gap:15px;
	}
	.mokab-breadcrumb{
		padding:15px;
		font-size:12px;
	}
	.banner img{
		width:100%;
		height:100%;
		object-fit:contain;
		display:block;
	}
	.about-text p{
		writing-mode:vertical-lr;
		white-space:nowrap;
		margin:0;
		font-size:16px;
	}
}
@media (max-width:1024px){
	.br2{
		display:none;
	}
	.br1{
		display:block;
	}
	.bg-award-text{
		left:10px;
		position:absolute;
		top:-25px;
	}
	.about-image-left, .about-image-right{
		position:absolute;
	}
	.mokab-floating-cart{
		right:20px;
		width:80px;
		height:80px;
	}
	.mokab-floating-text{
		font-size:12px;
	}
	.mokab-floating-icon{
		max-width:22px;
		width:100%;
		height:16px;
	}
	.mokab-floating-icon img{
		width:100%;
		object-fit:cover;
	}
}
@media (max-width:968px){
	.about-section{
		height:auto;
	}
	.about-left{
		padding-right:0;
		margin-bottom:60px;
	}
	.about-title .vertical-title{
		margin-left:0;
		margin-bottom:10px;
	}
	.about-image{
		width:100%;
		height:300px;
		max-width:500px;
		margin:0 auto;
	}
	.header-top{
		padding:15px 30px;
	}
	.main-nav{
		gap:20px;
	}
	.main-nav a{
		font-size:14px;
	}
}
@media (max-width:768px){
	.header-search-inner{
		padding:12px 12px;
		margin:0 12px;
	}
	.product-grid{display: none;}
	.mobile-slider-outer{display: block;}
	.reviews-container{display: none;}
	.mobile-review-slider-outer{display: block;}
	.reviews-section{padding-bottom: 70px;}
	.reviews-section .flower-img{
		width: 75px;
		right: 28px;
		bottom: -12px;
	}
  .category-card1{margin-top:20px;}
}
@media (max-width:700px){
	.category-card img{
		width:100%;
		height:100%;
		object-fit:contain;
	}
	.banner{
		flex-direction:column;
		text-align:center;
		gap:20px;
	}
	.banner-text::before{
		display:none;
	}
}
@media (max-width:650px){
	body:before{
		height:55px;
	}
  br[data-sp]{display:block!important;}
	.header-search{
		top:54px;
	}
	.category-card img{
		width:100%;
		height:100%;
		object-fit:cover;
	}
	.featured-title{
		font-size:28px;
		letter-spacing:2.8px;
	}
	.featured-description{
		font-size:14px;
		line-height:28px;
	}
  .category-overlay{padding:30px 20px;}
	.category-name{
		font-size:28px;
	}
	.header-top{
		padding:10px 15px;
	}
	.text{
		display:flex;
		flex-direction:column;
		position:absolute;
		left:35px;
		top:28px;
		z-index:2;
		gap:63px;
	}
	#repair-support{
		height:425px;
		margin:20px;
	}
	.header-top{
		padding:10px 15px;
		align-items:center;
	}
	.logo{
		width:100px;
		height:35px;
	}
  .cart_count{right:-10px;}
	.phone-text{
		font-size:12px;
	}
	.about-section{
		overflow-x:hidden;
	}
	.about-title .vertical-title{
		writing-mode:vertical-lr;
		font-size:22px;
	}
	.about-image-left, .about-image-right{
		width:112px;
		height:auto;
		bottom:initial;
	}
	.about-image-right{
		top:66px;
	}
	.about-image-left{
		top:calc(66px + 10.4vw);
	}
	.about-image-left img, .about-image-right img{
		width:100%;
		height:100%;
		object-fit:cover;
	}
	.overlay h3{
		font-size:16px;
	}
	.price{
      display:block;
      margin-top:16px;
		font-size:16px;
	}
	.overlay-arrow{
		display:none;
	}
	.banner img{
		width:100%;
		height:29%;
		object-fit:contain;
		display:block;
	}
	.banner{
		height:auto;
	}
	.overlay{
		position:static;
		font-size:56px;
		top:0;
		left:0;
		right:0;
		bottom:0;
		background:white;
		color:#050505;
		padding:8px;
		display:flex;
		flex-direction:column;
		justify-content:end;
		align-items:start;
		transform:none;
	}
	.about-text{
		font-size:13px;
		gap:3px;
		letter-spacing:2px;
	}
	.about-cloud{
		margin-bottom: 15px;
	}
	.about-title{
		display:flex;
		align-items:flex-start;
		margin-top: 0;
		margin-bottom:10px;
		gap:2px;
	}
	.about-title .vertical-title{
		letter-spacing:6px;
	}
	.featured-title{
		font-size:24px;
		letter-spacing:1px;
	}
	.featured-description{
		font-size:13px;
	}
	.product-info{gap:12px;}
	.product-price{
	}
	/*.category-card{
		height:200px;
	}*/
	.category-name{
		font-size:20px;
	}
	.section-title{
		font-size:20px;
	}
	.section1{
		padding:30px 15px;
	}
	#staff-assistance{display: block;}
	#staff-assistance .content{margin-top: 32px;}
	#staff-assistance h2{
		font-size:20px;
	}
	.banner-text{
		font-size:20px;
      text-align:center;
	}
	#repair-support .content{
		padding-left:20px;
	}
	#repair-support1 h2{
		font-size:20px;
	}
	.content_br{
		display:block;
	}
	.reviews-section{
		padding:30px 15px;
	}
	.review-card{
		padding:20px;
	}
	.review-card h3{
		font-size:16px;
	}
	.social-icon:nth-child(2){
		display:none;
	}
	.review-card p{
		font-size:16px;
	}
	.review-slider-nav.prev{
		left:-10px;
	}
	.review-slider-nav.next{
		right:-10px;
	}
	.calendar-container{
		flex-direction:column;
		gap:30px;
	}
  .tbl_calendar{
    margin-right:auto;
    margin-left:auto;
  }
	.calendar-section{
		padding:30px 15px;
	}
	.guide-container{
		padding:30px 15px;
	}
	.guide-section h3{
		font-size:16px;
	}
	.guide-section p{
		font-size:13px;
	}
	footer{
		padding:30px 15px;
		text-align:center;
	}
	.display{
		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;
		gap:16px;
		margin-top:20px;
	}
	.display{
		gap:10px;
	}
	.display .button{
		display:flex;
		justify-content:center;
		align-items:center;
		padding:10px 20px;
		background:#050505;
		color:#fff;
		text-decoration:none;
		font-size:16px;
		font-weight:600;
	}
	.display .button:first-of-type{
		display:inline-flex;
		align-items:center;
		padding:11px 20px;
		background:#050505;
		color:#fff;
		text-decoration:none;
		font-size:16px;
		font-weight:600;
	}
	#repair-support1 .button{
		margin-bottom:0px !important;
	}
	#repair-support1 .display{
		margin-bottom:0px;
		gap:10px;
	}
	.mokab-breadcrumb{
		padding:10px;
	}
	.mokab-breadcrumb-separator{
		margin:0 5px;
	}
	.mokab-product-container{
		padding:10px;
		gap:20px;
	}
	.mokab-product-title{
		font-size:20px;
	}
	.banner1{
		flex-direction:column;
		padding:30px 20px;
		margin:78px 15px;
	}
	.banner1 .bg-img{
		width: 208px;
		height: 113px;
		top: 2px;
		left: calc(50% - 104px);
	}
	.mokab-floating-wrapper{
		right: 5px;
      bottom:20px;
	}
  .mokab-floating-wrapper .mokab-floating-small,
  .mokab-floating-wrapper .mokab-floating-small-phone{
  margin-right:10px;
    margin-left:auto;
  }
	.mokab-floating-small{
		visibility:visible;
	}
	.mokab-floating-cart{
		right:15px;
		width:76px;
		height:76px;
	}
	.mokab-floating-text{
		font-size:10px;
	}
	.mokab-floating-icon{
		width:22px;
		height:21px;
	}
	.social-icons2{
		justify-content:center;
	}
	.copyright{
		margin-top:10px;
		text-align:center;
	}
	.product-name{
		text-align:start;
	}
	.add-button{
		display:none;
	}
	.br{
		display:none;
	}
	.content_h2{
		margin-top:68px !important;
	}
	.banner1{
		margin:60px 15px;
	}
	#repair-support1{
		margin-top:60px;
		padding-bottom:60px;
	}
}
@media (max-width:375px){
	.vertical-text1{
		line-height:21px;
	}
	.avatar-icon-small{
		width:7px;
		height:7px;
	}
	.avatar-icon-large{
		width:16px;
		height:7px;
	}
	.header-top{
		padding:8px 12px;
	}
	.logo{
		width:90px;
		height:30px;
	}
	.phone-text{
		font-size:11px;
	}
	.featured-title{
		font-size:22px;
	}
	/*.category-card{
		height:180px;
	}*/
	.category-name{
		font-size:18px;
	}
	.section-title{
		font-size:18px;
		padding:25px 5% 25px 0;
	}
	.banner1{
		padding:30px 20px;
	}
	.banner-text{
		font-size:40px 30px;
	}
	.reviews-section, .calendar-section, .guide-container{
		padding:25px 20px;
	}
	.review-card{
		padding:16px;
	}
	.calendar-container{
		gap:20px;
	}
	.calendar th, .calendar td{
		width:25px;
		height:25px;
		font-size:12px;
	}
	.mokab-breadcrumb{
		padding:8px;
		font-size:11px;
	}
	.container{
		padding:14px;
	}
	.mokab-floating-cart{
		right:10px;
		width:90px;
		height:90px;
		gap:5px;
	}
	.mokab-floating-text{
		margin-top: 0;
		font-size:11px;
	}
	.mokab-floating-icon{
		margin:0 auto;
	}
	.bg-img_sp{
		width:100%;
	}
	.bg-img{
		display:none;
	}
	.bg-img_sp_div{
		display:block;
		position:absolute;
		top:0;
		left:-77px;
		width:230%;
		height:auto;
		z-index:0;
	}
}
@media (min-width:650.02px){
	br[data-sp]{display:none!important;}
}
@media (min-width:768.02px){
	.product-grid{display: flex;}
	.mobile-slider-outer{display: none;}
	.reviews-container{display: grid;}
	.review-card{min-height: 360px;}
	.mobile-review-slider-outer{display: none;}
}
@media (min-width:1224.02px) and (max-width:1330px){
	.header{height: 110px;}
	.nav-logo{flex:1;}
	.header-info{
		position: absolute;
		top: 20px;
		right: 20px;
	}
	.nav-container{
		position: absolute;
		bottom: 20px;
		right: 20px;
	}
}



.p-privacy .u-container{
  width:1200px;
  margin:0 auto;
}

.p-category-list,
.c-item-list {
  margin-left: 0;
}
.c-item-list__item {
  list-style: none;
}