@import url('/css/icheck-material.css');
/* price_box */
.price_box { margin-bottom: 0; display: flex; align-items: baseline; }
.price_box * { margin: 0 .2em; font-weight: 500; font-size: .9em; color: var(--g_300); }
.price_box ins { text-decoration: none; font-size: 1em; color: var(--primary); }
/* product_list */
#product_area .main-heading { font-size: 2.25rem; font-weight: 800; color: #0f172a; text-align: center; margin-bottom: 48px; letter-spacing: -0.025em; }
#product_area .sub-heading { font-size: 1.15rem; font-weight: 700; color: #1e293b; margin: 0; line-height: 1.4; transition: color 0.3s ease; }
#product_area .cart-icon { width: 18px; height: 18px; margin-right: 8px; flex-shrink: 0; fill: none; stroke: rgb(255 255 255); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
#product_area .category_btn { display: inline-flex; align-items: center; padding: 4px 14px; background: #e3d6c4; color: #9e8d7d; border-radius: 99px; font-size: 0.75rem; font-weight: 400; margin-bottom: 16px; transition: all 0.3s ease; position: relative; z-index: 2; align-self: flex-start; letter-spacing: 0.05em; border: 1px solid transparent; }
#product_area .category_btn:hover { background: #0f172a; color: #ffffff; border-color: #0f172a; }
#product_area .action_btn { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 14px 20px; border-radius: 12px; font-weight: 600; font-size: 0.95rem; cursor: pointer; transition: all 0.3s cubic-bezier(0.4,0,0.2,1); position: relative; z-index: 2; border: none; background: var(--red); color: white; }
#product_area  .contact_btn { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 14px 20px; border-radius: 12px; font-weight: 600; font-size: 0.95rem; cursor: pointer; transition: all 0.3s cubic-bezier(0.4,0,0.2,1); position: relative; z-index: 2; border: none; background: #413b39; color: #ffffff; }
#product_area { padding: 120px 20px 100px 20px; margin: 0 auto; overflow: hidden; z-index: 66; position: relative; clip-path: polygon(0 0,100% 80px,100% 100%,0 100%); background: linear-gradient(to bottom,#f2e9dc,#ffffff); }
#product_area .slick-list { margin: 0; padding: 10px 0 60px 0; }
#product_area .slick-track { display: flex; gap: 20px; justify-content: center; }
#product_area .slick-slide { display: flex; outline: none; margin: 0; list-style: none; }
#product_area .item_row { background: #ffffff; border-radius: 20px; padding: 16px; box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.02); transition: all 0.4s cubic-bezier(0.165,0.84,0.44,1); display: flex; flex-direction: column; width: 100%; border: 1px solid rgba(226,232,240,0.8); margin: 0; }
#product_area .item_row:hover { transform: translateY(-10px); box-shadow: 0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.04); border-color: #cbd5e1; }
#product_area .item_row:hover .sub-heading { color: var(--primary); }
#product_area .item_row:hover .contact_btn { background: #4e4d4f; }
#product_area .item_row:hover .action_btn { background: #b19a85; }
#product_area .img_box { width: 100%; aspect-ratio: 1/1; border-radius: 14px; overflow: hidden; margin-bottom: 24px; background: #f1f5f9; position: relative; }
#product_area .img_box::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom,rgba(0,0,0,0) 60%,rgba(0,0,0,0.05) 100%); pointer-events: none; mix-blend-mode: multiply; }
#product_area .img_cover { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94); }
#product_area .item_row:hover .img_cover { transform: scale(1.08); }
#product_area .info_box { display: flex; flex-direction: column; flex-grow: 1; z-index: 2; padding: 0 4px; }
#product_area .txt_clamp { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
#product_area .price_box { margin: auto 0 18px 0; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#product_area ins { text-decoration: none; font-size: 1.5rem; font-weight: 800; color: var(--primary); font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; letter-spacing: -0.05em; margin: 0; }
#product_area del { color: #94a3b8; font-size: 0.95rem; text-decoration: line-through; font-weight: 500; }
#product_area .atag_item { top: 0; left: 0; width: 100%; height: 100%; z-index: 1; border-radius: 20px; }
#product_area .slick-dots { display: flex; justify-content: center; gap: 12px; padding: 0; margin: 0; list-style: none; }
#product_area .slick-dots button { width: 32px; height: 4px; border-radius: 2px; border: none; background: #e5d3c4; font-size: 0; cursor: pointer; transition: all 0.3s ease; padding: 0; }
#product_area .slick-dots .slick-active button { background: #80654c; width: 48px; }
/* grid_list */
.grid_list { display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 2em; }
/* product_item */
.product_item { margin: 0 auto 3em; }
.product_item .item_title_box { position: relative; margin-bottom: 1em; padding-bottom: .3em; letter-spacing: .1em; text-align: center; font-weight: 500; font-size: 1.5em; }
.product_item .item_title_box:before { position: absolute; width: 3em; height: .1em; background: var(--primary); display: block; bottom: 0; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); content: ""; }
/* product_detail */
#product_detail { flex-wrap: wrap; display: flex; justify-content: space-between; }
/* imglist */
#imglist { width: 45%; }
#imglist a,#imglist img { width: 100%; aspect-ratio: 1/1; }
#imglist .img_box { margin-bottom: 1.3em; padding: 4%; border: 1px var(--g_100) solid; }
#imglist .img_nav .item { margin: 0 .5em; width: 100px; aspect-ratio: 1/1; border: 1px var(--g_100) solid; }
#imglist .img_nav .item img { margin: 10%; width: 80%; }
/* product_info */
#product_info { margin-left: 5%; width: 1%; flex: 1 1 auto; }
#product_info .tit_box { margin-bottom: 2em; }
#product_info .tit_box .cat { color: var(--g_500); }
#product_info .tit_box .title { font-weight: 500; font-size: 2.3em; }
#product_info .tit_box article { margin-top: 1em; font-size: .9em; color: var(--g_700); }
#product_info .price_box ins { margin: 0 .5em 0 0; font-size: 1.3em; }
/* order_box */
#order_box .box label { width: 4em; display: block; font-size: .9em; color: var(--g_600); }
#order_box #quantity_box label { width: 100%; }
/* shape_box */
#shape_box { margin-top: 1.3em; }
#shape_box .control_list { margin-bottom: 1.3em; }
#shape_box .control_list .option_list { display: flex; flex-wrap: wrap; align-items: center; gap: .5em; }
#shape_box .control_list .option_list font { padding: .4em 1em; border: 1px var(--g_200) solid; line-height: 1; color: var(--g_700); cursor: pointer; }
#shape_box .control_list .option_list font.action { background: var(--primary); border-color: var(--primary); color: var(--g_100); }
/* q_control */
.q_control { border: 1px var(--g_200) solid; display: inline-flex; align-items: stretch; }
.q_control button { position: relative; width: 2em; cursor: pointer; }
.q_control button:before { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); content: ""; }
.q_control button.plus:after { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%) rotate(90deg); transform: translate(-50%,-50%) rotate(90deg); content: ""; }
.q_control input { padding: .3em; width: 5em; border: 0; border-radius: 0; text-align: center; }
.q_control button[disabled],.q_control input[disabled],#buy_btns button[disabled] { opacity: .5; cursor: not-allowed; }
/* buy_btns */
#buy_btns { display: flex; flex-wrap: wrap; align-items: center; gap: .3em .5em; }
#buy_btns button { padding: .3em .5em; width: 7em; border: 1px var(--g_200) solid; text-align: center; }
#buy_btns button[data-type="0"] { background: var(--primary); border-color: var(--primary); color: white; }
/* quantity_box */
#quantity_box { margin-bottom: 1.3em; display: flex; flex-wrap: wrap; align-items: center; gap: .3em .5em; }
#quantity_box .inventory_txt { margin-top: .3em; width: 100%; font-size: .9em; color: var(--g_600); }
#quantity_box .inventory_txt.red { color: var(--red); }
/* track */
#track { display: inline-flex; align-items: center; color: var(--g_500); }
#track:before { margin-right: .2em; font-family: 'Font Awesome 5 Free'; font-weight: 400; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; -webkit-transition: none; transition: none; content: "\f004"; }
/* add_product_list */
#add_product_list .grid_list { grid-gap: .8em 1em; }
#add_product_list li { position: relative; padding: 4%; border: 2px var(--g_100) solid; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
#add_product_list li [class*="icheck-material"] { position: absolute; margin-right: 0; top: 4%; right: 0; }
#add_product_list li .img_box img { width: 100px; aspect-ratio: 1/1; }
#add_product_list li .info_box { margin-left: 4%; width: 1%; flex: 1 1 auto; }
#add_product_list li .info_box h3 { margin-bottom: .5em; max-height: 3.2em; height: auto; -webkit-line-clamp: 2; }
/* product_tabs */
#product_tabs .tabs { margin-bottom: 1.5em; display: flex; flex-wrap: wrap; align-items: center; }
#product_tabs .tabs li { margin: 0 2em; padding: .2em; border-bottom: 2px transparent solid; letter-spacing: .2em; font-weight: 500; font-size: 1.1em; color: var(--g_400); cursor: pointer; }
#product_tabs .tabs li:first-child { margin-left: 0; }
#product_tabs .tabs li.active { border-color: var(--primary); color: var(--primary); }
/* other_product */
#other_product { grid-template-columns: repeat(4,1fr); grid-gap: .5em; }
/* sort_box */
#sort_box { position: relative; margin-bottom: 1em; display: flex; justify-content: end; align-items: center; gap: .5em 1em; }
#sort_box font { padding: .3em 1em; width: 9em; background: url("data:image/svg+xml,%3Csvg viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14 5l-6.5 7L1 5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") white no-repeat calc(100% - .5em) 50%/auto .5em;background-clip: padding-box; border: 1px solid var(--g_200); border-radius: .2em; cursor: pointer; }
#sort_box .sort_list { position: absolute; width: 9em; display: flex; flex-direction: column; background: #fff; box-shadow: 0 0 10px #ccc; top: 3em; right: 0; -webkit-transform: translateY(-.5em); transform: translateY(-.5em); opacity: 0; z-index: -1; pointer-events: none; }
#sort_box .sort_list button { padding: .3em 1em; text-align: center; }
#sort_box .sort_list button.action { background: var(--blue); border-color: var(--blue); color: white; }
#sort_box .sort_list button:not(:last-child) { border-bottom: 1px var(--g_200) solid; }
#sort_box font[data-type="1"] { background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.5 7.5L7 .5l6.5 7' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
#sort_box .sort_list[data-type="1"] { -webkit-transform: translateY(.2em); transform: translateY(.2em); opacity: 1; z-index: 999; pointer-events: auto; }
/* ask_btns */
#ask_btns { margin: 1.3em 0; display: flex; align-items: center; }
#ask_btns .btn { width: min(50%,15em); background: #fff; border: 1px var(--g_200) solid; border-radius: 0; }
#ask_btns .btn.contact_btn { background: var(--primary); border-color: var(--primary); color: white; }
@media screen and (min-width:1161px) {
  #shape_box .control_list .option_list font:hover { background: var(--primary); border-color: var(--primary); color: var(--g_100); }
  #track:hover { color: var(--primary); }
  #track:hover:before { font-weight: 900; }
}
@media screen and (max-width:980px) {
  .product_item { width: min(700px,100%); margin-bottom: 1em; }
  #imglist { margin-bottom: 2em; width: 100%; }
  #product_info { margin-left: 0; width: 100%; }
  #add_product_list .grid_list { grid-template-columns: repeat(2,1fr); }
  #other_product { grid-template-columns: repeat(2,1fr); grid-gap: 2em; }
  .grid_list { grid-template-columns: repeat(2,1fr); grid-gap: 1em; }
}
@media screen and (max-width:640px) and (min-width:551px) {
  #add_product_list li .img_box { width: 100%; }
  #add_product_list li .img_box img { width: 100%; aspect-ratio: 1/1; }
  #add_product_list li .info_box { position: relative; margin: .5em 0 0; width: 100%; }
}
@media screen and (max-width:550px) {
  #add_product_list .grid_list { grid-template-columns: repeat(1,1fr); }
  #other_product { grid-gap: 3% 2%; gap: 25px; }
  .grid_list { display: flex; flex-direction: column; }
}
