@import url('/css/icheck-material.css');
.fancybox-container #order_box .q_control *{color:black}

/* 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_list li >div{display:flex;flex-direction: column;width: auto;align-items: center;}
#product_list li .photo{position:relative;width: 60%;}
#product_list li .bgBox{top: 27px;z-index: -1;border-radius: 330px;width: 70%;left: 10px;background-size: cover;}
#product_list li >div >p{background:var(--primary);padding: 10px 20px;margin-top: -20px;border-radius: 10px;color: var(--white);cursor: pointer;display: flex;position: relative;z-index: 5;}
#product_list li >div >p button{letter-spacing: 2px;font-weight: bold;font-size: 13px;color: var(--white);cursor: pointer;}
#product_list li:hover >div >p{background:var(--triadic1)}
#product_list li:hover .h3{color:var(--triadic1)}
#product_list .info_box{display: flex;background: var(--white);padding: 4vw 30px 80px;margin: -4vw 0 0;z-index: -2;flex-direction: column;align-items: center;border-radius: 30px;}
#product_list .info_box p,#product_list .info_box p *{font-size:13px;color: var(--info);}
#product_list .info_box .h3,#product_list .info_box .h3 *{color:var(--primary);font-size:22px;font-weight:500;letter-spacing:1px;height: 75px;margin-bottom: 15px;-webkit-line-clamp: 2;text-align: center;}
#product_list .info_box article,#product_list .info_box article *{-webkit-line-clamp: 2;font-size: 15px;text-align: center;color: var(--info);}
#product_list .info_box article{height: auto;}
#product_list .info_box article{    padding: 0 30px;}

/* 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;object-fit: cover;}
#imglist .img_box {margin-bottom: 1.3em;padding: 4%;border: 1px rgb(255 255 255 / 20%) solid;}
#imglist .img_nav .item {margin: 0 .5em;width: 100px;aspect-ratio: 1/1;border: 1px rgb(255 255 255 / 20%) 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: 29px;margin-bottom: 20px;letter-spacing: 1px;}
#product_info .tit_box article {margin-bottom: 2em;font-size: .9em;color: white;}
#product_info .price_box ins { margin: 0 .5em 0 0; font-size: 1.3em; }
#product_info .tit_box .Spec li{font-size:15px;font-weight: 200;list-style: square;}
#product_info .tit_box .Spec li::marker{color: rgb(255 255 255 / 25%);}

/* order_box */
#order_box .box label {width: 4em;display: block;font-size: .9em;color: var(--g_200);}
#order_box #quantity_box label { width: 100%; }
#order_box .q_control *{color: #3b3636;}
#order_box #buy_btns button:last-child{background: var(--triadic1);border-color: var(--triadic1);}

/* 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 rgb(255 255 255 / 15%) 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;background: white;}
.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); }

/* sort_box */
#sort_box {position: relative;margin-bottom: 1em;display: flex;justify-content: end;align-items: stretch;gap: .5em 1em;flex-direction: column;border-top: 1px solid rgb(255 255 255 / 15%);margin-top: 20px;padding-top: 20px;}
#sort_box font {padding: .3em 1em;width: 100%;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='%23fff' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") transparent no-repeat calc(95% - .5em) 55% / auto .5em;background-clip: padding-box;border: 1px solid rgb(255 255 255 / 25%);border-radius: .2em;cursor: pointer;}
#sort_box .sort_list {position: absolute;width: 100%;display: flex;flex-direction: column;background: var(--primary);top: 6em;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: left;}
#sort_box .sort_list button.action {background: #725e36;color: white;}
#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='%23fff' 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){
	#product_list .item_row:hover { border-color: var(--primary); }
	#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; }
    #other_product li:last-child{display:none;}
}
@media screen and (max-width: 1160px){
    #sort_box .sort_list[data-type="1"]{top: 3em;}
    #sort_box .sort_list{width:164px}
	aside {width: 100%;}
    #sort_box{display: grid;flex-direction: row;align-items: center;border: 0;margin: 0;padding: 0;width: 250px;grid-template-columns: 70px 1fr;position: absolute;right: 0;bottom: 0;}
    #sort_box label{font-size:14px;}
}
@media screen and (max-width: 980px){
    .grid_list{grid-template-columns: repeat(2, 1fr);}
	.product_item { width: min(700px, 100%); }
	#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: 1em;}
}
@media screen and (max-width: 640px){
    #product_info .tit_box .title{font-size:26px;}
    #product_list .info_box .h3, #product_list .info_box .h3 *{height:auto;}
    #product_list .info_box{padding-top: 20vw;margin-top: -20vw;}
    #sort_box{position:relative;margin-top:15px;}
    .grid_list{grid-template-columns: 1fr;}
	#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: 1% 2%;grid-template-columns: 1fr;}
}