@import url('/css/icheck/icheck-material-custom.css');

/* header */
header { grid-template-columns: 300px 1fr 255px; background: #9ab8c9; }
header #cis { width: 130px; }
header #cis a svg { height: 80px; }

header.scroll #cis a svg { width: 90%; height: 80px; }

/* sub_banner */
#sub_banner { top: 100px; z-index: 10; height: 180px; }
#sub_banner .banner_img { z-index: 2; display: none; }
#sub_banner .banner_tit { width: 100%; height: 100%; z-index: 3; position: relative; top: 90px; }
#sub_banner .banner_tit .workframe { min-height: calc(100% - 10vmax); display: flex; align-items: center; position: relative; justify-content: center; }
#sub_banner .banner_tit .other_txt { font-size: 72px; -webkit-transform: rotate(-11deg) translate(120%, .1em); transform: rotate(-11deg) translate(120%, .1em); }
#sub_banner .banner_tit h2 { border-bottom: 1px #2f3e47 solid; line-height: 1; letter-spacing: .2rem; font-weight: 300; font-size: 55px; color: #2f3e47; text-transform: uppercase; }
#sub_banner .banner_tit h3 { font-size: 23px; letter-spacing: 0.2rem; font-weight: 400; color: #2f3e47; margin-top: 0.55rem; }
#sub_banner .top_slogan { text-transform: uppercase; text-align: right; white-space: nowrap; -webkit-text-stroke: 1px #6190aa; text-stroke: 1px #6190aa; line-height: 1; letter-spacing: 2rem; font-size: 12vmax; color: transparent; opacity: .4; -webkit-transform: translate(2vw, .7em); transform: translate(2vw, .7em); pointer-events: none; right: 0; bottom: 0; display: none; }

/* wrap */
#wrap { z-index: 1; }

/* detail_title */
#detail_title { width: 100%; }
#detail_title h2 { padding-left: 40px; font-size: 38px; color: #2f3e47; }
#detail_title h2:before { position: absolute; width: 30px; height: 4px; background: #6190aa; top: 0; left: 40px; content: ""; }
#detail_title h2:after { position: absolute; width: 100%; height: 1px; background: #2f3e47; bottom: 0; left: 0; -webkit-transform: translateX(360px); transform: translateX(360px); content: ""; }

/* waylink */
.waylink { margin: 15px 0 30px; }
.waylink ol li, .waylink ol li a { font-size: 13px; color: #6d6d6d; }
.waylink ol li:after { margin: 0 10px; display: inline-block; color: #6d6d6d; content: "|"; }
.waylink ol li:last-child:after { margin: 0; content: ""; }

/* aside */
aside { padding: 0 70px 0 40px; width: 360px; }
aside h4, aside ul li>div { position: relative; }
aside li a { padding: 13px 40px 13px 10px; border-bottom: 1px #d6d6d6 solid; display: block; font-weight: 400; font-size: 17px; color: #2f3e47; }
aside b[data-action="sideOpen"] { position: absolute; height: 100%; width: 40px; display: flex; justify-content: center; align-items: center; top: 0; right: 0; }
aside b[data-action="sideOpen"] i:before, aside b[data-action="sideOpen"] i:after { width: 15px; height: 1px; background: #747474; display: block; content: ""; }
aside b[data-action="sideOpen"] i:after { -webkit-transform: translateY(-1px) rotate(90deg); transform: translateY(-1px) rotate(90deg); -webkit-transition: all .2s linear; transition: all .2s linear; }
aside b[data-action="sideOpen"] i.fa-minus:after { -webkit-transform: translateY(-1px) rotate(0deg); transform: translateY(-1px) rotate(0deg); }
aside .action h4 a { background: var(--primary); color: #fff; }
aside .action h4 b[data-action="sideOpen"] i:before, aside .action h4 b[data-action="sideOpen"] i:after { background: #fff; }
aside>ul>li ul { margin-left: .5em; display: none; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
aside>ul>li li a { padding: 8px 40px 8px 10px; font-size: 16px; color: var(--dark_gary); }
aside li.action>ul { display: block; }

/* content_wrap */
#content_wrap { width: 1%; flex: auto 1; }

/* list_box */
.list_box li { margin-top: 10px; margin-bottom: 10px; }
.list_box li h3 { height: 30px; font-weight: 500; font-size: 20px; }

/* describe */
#describe { margin-bottom: 5vw; }
#describe * { vertical-align: bottom; }

/* article_list */
#article_list img { height: 350px; }
#article_list .info_box { padding: 25px 30px; }
#article_list .info_box article { font-weight: 300; }
#article_list .info_box { color: #616161; background-image: none; background-color: #ffffff; border: 1px solid rgba(97, 97, 97, 0.5); letter-spacing: 1.3px; position: relative; }
#article_list .info_box::before { content: ""; position: absolute; top: 53%; right: 30px; width: 10px; height: 10px; border-left: 1px solid rgba(97, 97, 97, 0.5); border-bottom: 1px solid rgba(97, 97, 97, 0.5); -webkit-transform: translateX(-50%) translateY(-50%) rotate(-135deg); transform: translateX(-50%) translateY(-50%) rotate(-135deg); }

/* news_list */
#news_list li { padding-bottom: 30px; }
#news_list li img { height: 320px; }
#news_list li .info_box { padding: 15px; width: calc(100% - 70px); box-shadow: 0 0 10px rgba(var(--black-rgb), .3); left: 20px; bottom: 0; }
#news_list li .info_box p * { font-weight: 100; font-size: 14px; }
#news_list li .info_box p a { margin-right: 10px; padding: 0 2px; max-width: calc(100% - 82px); height: 23px; z-index: 2; }

/* pagenav */
#pagenav { margin: 60px 0 0; padding: 50px 0 20px; display: flex; justify-content: center; align-items: center; }
#pagenav a, #pagenav strong { margin: 0 4px; display: flex; justify-content: center; align-items: center; border-radius: .2rem; font-size: 15px; color: #808080; }
#pagenav a, #pagenav strong { margin: 0 10px; display: inline-block; font-weight: 400; vertical-align: middle; }
#pagenav a:first-child, #pagenav a:last-child { line-height: 9px; }
#pagenav strong { color: var(--primary); }
#pagenav a[class^="page-"] { float: left; width: calc(50% - 20px); display: block; }
#pagenav a[class^="page-"] font { width: calc(100% - 22px); display: inline-block; vertical-align: text-top; }
#pagenav a[class^="page-"] i { margin: 0 10px 0 0; display: inline-block; }
#pagenav a.page-next { float: right; text-align: right; }
#pagenav a.page-next font { text-align: right; }
#pagenav a.page-next i { margin: 0 0 0 10px; }

/* product_list */
#product_list { margin-top: 40px; grid-template-columns: repeat(3, 1fr); grid-gap: 55px 0; }
#product_list li>div { margin: 0 15px; background: #fff; border-radius: .5rem; box-shadow: 0 0 30px rgb(0 0 0 / 20%); }
#product_list li img { width: 100%; }
#product_list li .info_box { padding: 5px 35px 7px; border-bottom: 1px #a5a5a5 solid; }
#product_list li .info_box p { font-weight: 300; font-size: 16px; }
#product_list li .info_box h3 { height: 30px; font-weight: 500; font-size: 19px; color: #3a4351; }
#product_list li .price_box { padding: 13px 35px 25px; display: flex; justify-content: space-between; align-items: center; }
#product_list li .price_box .price { font-weight: 300; font-size: 15px; color: #222; }
#product_list li .price_box a { font-weight: 500; font-size: 14px; color: #3a4351; z-index: 6; }

/* product_add */
#product_add { margin: 40px 0; border: 1px #e8e8e8 solid; }
#product_add .tit_box { padding: .5em 3%; background: #f5f5f5; font-size: 20px; color: #363636; }
#product_add .body_box { padding: 3%; }

/* add_product_list */
#add_product_list { grid-template-columns: repeat(2, 1fr); grid-gap: 40px 25px; }
#add_product_list .img_box { margin-right: 40px; width: 100px; height: 100px; }
#add_product_list .img_box img { width: 100%; height: 100%; }
#add_product_list .info_box h3 { font-weight: 500; font-size: 16px; color: #262626; }
#add_product_list .info_box .price_box p { font-weight: bold; font-size: 14px; color: #262626; }
#add_product_list .info_box .price_box p.original { text-decoration: line-through; color: #949494; }

/* other_product_box */
#other_product_box .tit_box { margin-top: 5%; padding-bottom: 5px; border-bottom: 1px #545454 solid; text-align: center; font-weight: bold; font-size: 28px; color: #252525; }

/* book_list */
#book_list { display: flex; flex-wrap: wrap; }
#book_list li h3 { text-align: inherit; margin-bottom: 10px; }
#book_list li p { color: #919191; overflow: hidden; height: 54px; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
#book_list .row img { width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: top; border-radius: 25px; }
#book_list .row .info_box { padding: 20px 15px 30px; width: calc(100% - 0px); background: -webkit-linear-gradient(top, transparent 0, rgba(var(--black-rgb), .01) 2%, rgba(var(--black-rgb), .8) 90%); background: linear-gradient(to bottom, transparent 0, rgba(var(--black-rgb), .01) 2%, rgba(var(--black-rgb), .8) 90%); bottom: 0; left: 0; }

/* faq_list */
#faq_list >li { margin: 20px 0; background: #fff; box-shadow: 0 0 17px rgb(0 0 0 / 7%); }
#faq_list >li >a { padding: 15px 25px; }
#faq_list >li >a font { font-weight: 400; font-size: 20px; color: #2f3e47; }
#faq_list >li .info { padding: 0 25px 40px; display: none; border-top: 1px #ebebeb solid; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
#faq_list >li { margin-bottom: 30px; }
#faq_list >li .title { padding: 10px 45px 10px 5px; display: block; position: relative; }
#faq_list >li .title label { padding: 0 0 0 10px; width: 70px; }
#faq_list >li .title font { width: calc(100% - 80px); font-size: 18px; }
#faq_list >li .info { padding: 15px 35px 15px 85px; font-size: 14px; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }
#faq_list >li .title span { position: absolute; width: 16px; height: 16px; display: block; top: calc((100% - 16px) / 2); right: 25px; }
#faq_list >li .title span:before, #faq_list >li .title span:after { width: 16px; height: 1px; background: #696969; display: block; content: ""; -webkit-transform: translateY(9px); transform: translateY(9px); }
#faq_list >li .title span:after { -webkit-transform: translateY(8px) rotate(90deg); transform: translateY(8px) rotate(90deg); }
#faq_list >li.current .title span:after { -webkit-transition-duration: .2s; transition-duration: .2s; -webkit-transform: translateY(8px) rotate(180deg); transform: translateY(180deg) rotate(0); }

/* search_list */
#search_list { grid-template-columns: repeat(4, 1fr); grid-gap: 55px 0; }
#search_list li>div { margin: 0 15px; background: #fff; border-radius: .5rem; box-shadow: 0 0 30px rgb(0 0 0 / 20%); }
#search_list li img { width: 100%; height: 300px; }
#search_list li .info_box { padding: 5px 35px 10px; border-bottom: 1px #a5a5a5 solid; }
#search_list li .info_box h3 { height: 30px; font-weight: 500; font-size: 19px; color: #3a4351; }
#search_list li .more_box { padding: 10px 35px; display: flex; justify-content: flex-end; font-weight: 300; font-size: 15px; color: #222; }

/* community */
#community li { margin-right: 5px; }
#community li, #community li * { line-height: 100%; }
#community li .fb_iframe_widget { display: block !important; }

/* form_box */
.form_box { margin-top: 50px; }
.form_box p { margin-bottom: 30px; }
.form_box input#Checknum { margin-right: 10px; width: 100px; }
.form_box #btnOK { padding: 5px 10px; width: 250px; background-color: #9ab8c9; color: #fff; }

/* lodbg */
[data-action="loader"] { position: fixed; width: 100vw; height: 100vh; background: rgb(0 0 0 / .3); text-align: center; line-height: 100vh; top: 0; left: 0; opacity: 0; z-index: -1; }
[data-action="loader"] .loader-circle { width: 50px; height: 50px; border: 2px rgba(0, 0, 0, .6) solid; border-left-color: rgb(255 255 255 / .4); border-radius: 100%; display: inline-block; }
#lodbg { opacity: 1; z-index: 99999; }
#lodbg .loader-circle { -webkit-animation: circle infinite .75s linear; -moz-animation: circle infinite .75s linear; -o-animation: circle infinite .75s linear; animation: circle infinite .75s linear; }

@keyframes circle { 0%{ transform: rotate(0); } 100% { transform: rotate(360deg); } }
@-webkit-keyframes circle { 0%{ -webkit-transform: rotate(0); } 100% { -webkit-transform: rotate(360deg); } }
@-moz-keyframes circle { 0%{ -webkit-transform: rotate(0); } 100% { -webkit-transform: rotate(360deg); } }
@-o-keyframes circle { 0%{ -webkit-transform: rotate(0); } 100% { -webkit-transform: rotate(360deg); } }

#top_title .m_title { display: flex; flex-direction: column; align-items: center; }
#top_title .description_box { text-align: center; }

#contentBox { width: 80%; margin: auto; }

@media screen and (min-width: 1501px) {
	#wrap:before { width: calc((100% - 1440px) / 2); }
}
@media screen and (max-width: 1500px) {
	#sub_banner .banner_img img { width: 80vmax; }
	#sub_banner .banner_tit .other_txt { font-size: 4vmax; }
	#sub_banner .banner_tit h2 { font-size: 3.2vmax; }
	#sub_banner .banner_tit h3 { font-size: 1.6vmax; }
}
@media screen and (max-width: 1360px) {
	header { grid-template-columns: 200px 1fr 255px; }
	header:before { width: calc(5vw + 180px); }
}
@media screen and (max-width: 1280px) {
	#search_list { grid-template-columns: repeat(3, 1fr); }
}
@media screen and (min-width: 1161px) {
	header.scroll { background: #fff; }
	header.scroll #cis a svg use { fill: #6190aa; }
	header.scroll #cis a svg use:nth-child(2) { fill: #7d7d7d; }
	header.scroll #webmenu * { color: #424242; }
	header.scroll #topbtns .btn svg { fill: #6190aa; }
	header.scroll #topbtns #openshop font { color: #6190aa; }
	#sub_banner .top_slogan { font-size: 10vmax; }
	#wrap { padding-bottom: calc(20px + 1.2vmax); margin-top: 160px; }
	#wrap:before { height: calc(100% - 130px); }
	aside h4:hover a { background: var(--primary); color: #fff; }
	aside h4:hover b[data-action="sideOpen"] i:before, aside h4:hover b[data-action="sideOpen"] i:after { background: #fff; }
	#wrap:before { position: absolute; width: 5vw; height: 100%; background: #f8f8f8; display: block; content: ""; top: 0; left: 0; z-index: 0; }
}
@media screen and (max-width: 1160px) {
	header { grid-template-columns: 130px 1fr; }
	header:before { width: 100%; }
	#sub_banner { top: 0; height: 100%; }
	#sub_banner:before { width: 100%; height: 100%; opacity: .7; z-index: 2; -webkit-transform: translateY(0); transform: translateY(0); }
	#sub_banner .banner_img { z-index: 1; }
	#sub_banner .banner_img img { width: 100%; }
	#sub_banner .banner_tit { height: 100%; top: 0; z-index: 3; }
	#sub_banner .banner_tit .workframe { padding: 140px 0 2vw; height: 100%; align-items: center; top: 0; z-index: 3; }
	#sub_banner .banner_tit h2 { font-size: 5.2vmax; }
	#sub_banner .banner_tit .other_txt { font-size: 5.5vmax; }
	#sub_banner .banner_tit h3 { font-size: 2.2vmax; }
	#sub_banner .top_slogan { margin-bottom: -0.3em; }
	#wrap .workframe { padding: 80px 0 50px; }
	aside { position: absolute; padding: 0; width: 300px; top: 10px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); z-index: 1; }
	aside #sidebtn { padding: 7px 10px; width: 100%; background: var(--light); border: 1px solid var(--light_gary); z-index: 12; }
	aside #sidebtn i { position: absolute; top: 50%; right: 10px; -webkit-transform: translateY(-40%); transform: translateY(-40%); }
	aside #sidebtn[data-type="2"] i { -webkit-transform: rotate(180deg) translateY(40%); transform: rotate(180deg) translateY(40%); }
	aside>ul { position: absolute; overflow: hidden; margin-top: 1px; width: 100%; height: 0; background: var(--light); border: 0 var(--light_gary) solid; left: 0; z-index: 11; -webkit-transform: translateY(-30px); transform: translateY(-30px); }
	aside>ul.open { height: auto; border-width: 1px; -webkit-transform: translateY(5px); transform: translateY(5px); }
	aside ul li { position: relative; border-bottom: 0; }
	aside ul li h4 a { padding: 10px; text-align: center; }
	aside>ul>li ul.subUL { overflow: hidden; width: 100%; height: 0; background: var(--light); top: 0; left: 0; }
	aside>ul.open>li[data-type="2"]>ul { position: relative; height: auto; top: auto; bottom: 0; opacity: 1; }
	#content_wrap { width: 100%; flex: inherit; }
	#detail_title h2 { padding-left: 0; font-size: 36px; padding: 5px 0 20px; }
	#detail_title h2:before { left: 0; }
	#detail_title h2:after { -webkit-transform: translateX(0px); transform: translateX(0px); }
}
@media screen and (max-width: 980px) {
	#sub_banner .banner_img img { height: 400px; }
	#product_list { padding: 0 30px; grid-template-columns: repeat(2, 1fr); }
	#book_list { display: flex; flex-direction: column; }
	#book_list .row img { height: 400px; }
	#search_list li img { height: 30vw; }
}
@media screen and (max-width: 768px) {
	#search_list { grid-template-columns: repeat(2, 1fr); }
	#search_list li img { height: 40vw; }
}
@media screen and (max-width: 640px) {
	#wrap { padding-top: 50px; }
	#detail_title h2 { font-size: 28px; }
}
@media screen and (max-width: 550px) {
	header { grid-template-columns: 110px 1fr; }
	#banner .banner_tit .more_btn { padding-left: 40px; }
	#wrap .workframe { padding: 30px 0 50px; }
	#product_list { padding: 0 10px; grid-template-columns: repeat(1, 1fr); }
	#book_list .row img { height: 300px; }
	#search_list { padding: 0 10vw; grid-template-columns: repeat(1, 1fr); }
	#search_list li img { height: 55vw; }
}