/*
Website Url:
*/
* { -webkit-tap-highlight-color: transparent; }
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section { display: block; }
div,
html,
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td,
hr,
button,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main,
.aiyuanma { margin: 0; padding: 0; }
body { background-color: #fff; font: 16px/1.875em 'Arial', 'Microsoft Yahei', 'Verdana', 'Tahoma', 'sans-serif'; color: #222; word-break: break-all; }
a { text-decoration: none; outline: none; color: #222; }
a:hover { color: #F65E4F; }
input,
textarea { -webkit-appearance: none; border: none; }
input:focus,
textarea:focus { outline: none; }
li { list-style: none; }
a img { border: none; }
table { background-color: transparent; border-spacing: 0; border-collapse: collapse; font-size: 16px; width: 100%; border-top: solid 1px #e4e4e4; border-left: solid 1px #e4e4e4; box-sizing: border-box; }
table th { background-color: #f9f9f9; text-align: center; box-sizing: border-box; }
table td,
table th { padding: 10px 1%; border: 1px solid #e4e4e4; box-sizing: border-box; }

/*gold*/
.inner { width: 1400px; margin: 0 auto; }
.submit { cursor: pointer; }
.clear { clear: both; }
.mb { margin-bottom: 25px; }

/*thumbnail*/
.thumbnail { position: relative; overflow: hidden; }
.thumbnail a { display: block; padding-bottom: 75%; position: relative; overflow: hidden; background: no-repeat center center; background-size: cover; }
.thumbnail img { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; transition: transform .3s; object-fit: cover; }
.thumbnail img:hover { transform: scale(1.1, 1.1); }

/*box*/

.boxTitle { border-bottom: 2px solid #e4e4e4; position: relative; margin-bottom: 15px; background-color: #0F1E4D; color: #fff; padding: 5px 15px 3px; border-radius: 5px; }
.boxTitle .name { font-size: 16px; line-height: 1.875em; margin-right: 50px; }
.boxTitle .name a {color: #fff;}
.boxTitle:after { display: block; width: 6px; height: 6px; background-color: #fff; position: absolute; left: -3px; top: 50%; transform: translateY(-50%); border-radius: 50%; }
.boxTitle span,
.boxTitle .arrow { display: block; position: absolute; right: 15px; top: 50%; transform: translateY(-50%); font-weight: bold; font-size: 14px; line-height: 24px; overflow: hidden; }
.boxTitle i { font-style: normal; font-weight: bold; color: #fff; }
.boxTitle span a { font-weight: normal; color: #fff; position: relative; padding-right: 10px; font-size: 12px; }
.boxTitle span a:after { width: 6px; height: 6px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; content: ''; display: block; position: absolute; right: 1px; top: 50%; transform: rotate(-45deg); margin-top: -4px; }
.boxTitle .slick-arrow { display: block; width: 24px; height: 24px; float: left; border: none; background: none; position: relative; cursor: pointer; }
.boxTitle .slick-arrow:before { content: ''; display: block; background: url(../images/icon_arrow.png) no-repeat 0 0; background-size: 100% auto; width: 41.667%; height: 66.667%; position: absolute; left: 50%; top: 50%; margin-left: -20.8335%; transform: translateY(-50%); }
.boxTitle .slick-prev:before { background-position: 0 100%; }

/*dot*/
.dot { position: relative; padding-left: 13px; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dot:before { width: 3px; height: 3px; background-color: #0F1E4D; content: ''; display: block; position: absolute; left: 0; top: 50%; transform: translateY(-50%); }

/*line*/
.line { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; }

/* Slider */
.slick-load { display: none; overflow: hidden; }
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; display: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track,
.slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; }
.slick-track:before,
.slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; font-size: 0; line-height: normal; }
[dir='rtl'] .slick-slide { float: right; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; }
.slick-arrow.slick-hidden { display: none; }
.slick-dots button { display: block; border: none; background-color: transparent; cursor: pointer; }

/*topbar*/
#topbar { background-color: #f6f6f6; color: #666; border: 1px solid #eee; border-top: none; overflow: hidden; border-radius: 0 0 6px 6px; }

/*welcome*/
#welcome { float: left; padding: 0 15px; }
#welcome,
#pagelist { line-height: 2em; font-size: 14px; }

/*pagelist*/
#pagelist { float: right; }
#pagelist ul { overflow: hidden; }
#pagelist li { float: left; padding: 0 10px; position: relative; }
#pagelist li:after { width: 1px; height: 10px; background-color: #ddd; content: ''; display: block; position: absolute; left: 0; top: 50%; margin-top: -5px; }
#pagelist li:first-child:after { display: none; }
#pagelist a { color: #666; }
#pagelist a:hover { color: #F65E4F; }

/*header*/
#header { display: table; table-layout: fixed; width: 100%; z-index: 2; padding: 3.125% 0; }
#header .td { display: table-cell; vertical-align: bottom; }
#header .clear {width: 0; display: none;}
/*logo*/
#logo { position: relative; z-index: 2; width: 250px; }
#logo a { display: block; height: 56px; background: url(../images/logo.png) no-repeat left center; background-size: contain; text-indent: -9999em; }

/*hotTel*/
#hotTel { width: 250px; font-size: 14px; line-height: 1.5em; color: #666;}
#hotTel .tel { float: right; background: url(../images/icon_tel.png) no-repeat left center; background-size: auto 40px; padding-left: 60px; }
#hotTel span { font-size: 28px; line-height: 1em; color: #F65E4F; font-weight: bold; }

/*search*/
#search { overflow: hidden; display: table-cell; vertical-align: middle; padding: 0 3.5%;}
#search form { float: right; overflow: hidden; width: 70%; border-radius: 6px; }
#search .submit { float: right; width: 50px; height: 50px; background: #0F1E4D url(../images/search_white.png) no-repeat center center; background-size: 44% auto; }
#search .input { border: 2px solid #0F1E4D; margin-right: 50px; display: block; color: #333; border-right: none; border-top-left-radius: 6px; border-bottom-left-radius: 6px; overflow: hidden; }
#search .text { height: 28px; line-height: 28px; width: 98%; padding: 9px 2% 9px 0; font-size: 16px; background-color: #fff; text-indent: 15px; }

/*topBtn*/
#topBtn { width: 0; }
#topBtn .btn { float: left; }
#topBtn i { display: block; cursor: pointer; }

/*schBtn*/
#schBtn { display: none; }
#schBtn i { width: 20px; height: 20px; background: url(../images/search_blue.png) no-repeat 0 0; background-size: 100% auto; }

/*navBtn*/
#navBtn { display: none; width: 22px; height: 20px; overflow: hidden; margin-left: 15px; opacity: .85; cursor: pointer;}
#navBtn i { display: block; width: 100%; height: 3px; background-color: #0F1E4D; position: relative; float: right; top: 50%; transform: translateY(-50%); transition: width .3s; }
#navBtn i:before,
#navBtn i:after { width: 130%; height: 3px; background-color: #0F1E4D; content: ''; display: block; position: absolute; right: 0; transition: width .3s; }
#navBtn i:before { bottom: 8px; }
#navBtn i:after { top: 8px; }
#navBtn.active i { width: 100%; }
#navBtn.active i:before,
#navBtn.active i:after { width: 70%; }

/*nav*/
#nav { position: relative; background-color: #0F1E4D; border-radius: 6px; z-index: 3;}
#nav ul { font-size: 0; line-height: normal; }
#nav li { display: inline-block; line-height: 55px; font-size: 16px; position: relative; font-weight: bold; width: 12.5%; text-align: center; }
#nav li a { color: #fff; display: block; position: relative; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 0 5px; }
#nav li.on > a,
#nav li.cur > a,
#nav li a:hover { background-color: rgba(255, 255, 255, .15); }
#nav li ul { position: absolute; left: 0; top: 100%; width: 100%; background-color: #0F1E4D; box-shadow: 0px 3px 3px rgba(0, 0, 0, .2); padding: 10px 0; display: none; }
#nav li li { text-align: center; display: block; font-weight: normal; width: auto; line-height: 40px; }
#nav li em { display: block; position: absolute; top: 50%; right: 3px; height: 15px; width: 15px; transform: translateY(-50%); display: none; }
#nav li em:after,
#nav li.hasSub > a:after { content: ''; width: 5px; height: 5px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; transform: rotate(45deg); transition: all .3s; }
#nav li em:after { display: block; position: absolute; left: 50%; top: 50%; margin: -4px 0 0 -4px; }
#nav li.hasSub > a:after { display: inline-block; vertical-align: middle; margin: -5px 0 0 5px; }

/*table*/
.table { display: table; table-layout: fixed; width: 100%; }
.table .td { display: table-cell; vertical-align: top; }

/*main*/
#main.td { padding-left: 25px; }


/*slides*/
#slides { border-radius: 6px; overflow: hidden; background-color: #f9f9f9; }
#slides .item a { display: block; color: #fff; position: relative; }
#slides .pic {background: no-repeat center center; background-size: cover; height:440px; }
#slides .wap {display: none;}
#slides .slick-arrow { position: absolute; top: 50%; display: block; transform: translateY(-50%); width: 30px; height: 40px; background: rgba(0, 0, 0, .35) no-repeat center center; background-size: contain; opacity: .5; color: #fff; font-size: 0; line-height: normal; transition: all .3s; text-indent: -99999em; overflow: hidden; z-index: 3; border: none; cursor: pointer; }
#slides .slick-prev { left: -30px; border-top-right-radius: 6px; border-bottom-right-radius: 6px; }
#slides .slick-next { right: -30px; border-top-left-radius: 6px; border-bottom-left-radius: 6px; }
#slides .slick-prev:after,
#slides .slick-next:after { content: ''; display: block; width: 13px; height: 21px; position: absolute; left: 50%; margin-left: -6.5px; top: 50%; transform: translateY(-50%); background: url(../images/icon_arrow.png) no-repeat 0 100%; background-size: 100% auto; }
#slides .slick-next:after { background-position: 0 0; }
#slides:hover .slick-prev { left: 0; }
#slides:hover .slick-next { right: 0; }
#slides .slick-dots { position: absolute; left: 50%; bottom: 3.125%; transform: translateX(-50%); font-size: 0; line-height: normal; white-space: nowrap; }
#slides .slick-dots li { display: inline-block; margin: 0 5px; }
#slides .slick-dots button { display: block; text-indent: -9999em; overflow: hidden; width: 5px; height: 5px; background-color: rgba(255, 255, 255, .75); transition: all .3s; line-height: 5px; font-size: 0; border-radius: 2.5px; }
#slides .slick-dots .slick-active button { background-color: #0F1E4D; width: 20px; }
#slides .load { padding-bottom: 100%; background-color: #f9f9f9; position: relative; }
#slides .load span { display: block; position: absolute; left: 0; top: 50%; width: 100%; transform: translateY(-50%); font-size: 36px; line-height: 1.125em; color: #999; text-align: center; }
/*wrapper*/
#wrapper {overflow: hidden;}
/*about*/
#about .info { overflow: hidden; padding: 5px 0;}
#about .pic { float: left; width: 350px; }
#about .pic i {display: block; padding-bottom: 75%; background: no-repeat center center; background-size: cover;}
#about img { display: block; width: 100%; height: auto; }
#about .text { margin-left: 380px; overflow: hidden; font-size: 14px; line-height: 2em; text-align: justify;}
#about .intro {height: 260px; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch;}
/*latest*/
#news { overflow: hidden; }
#news .boxTitle {margin-bottom: 10px;}
#news ul { overflow: hidden; }
#news li { font-size: 14px; line-height: 32px; overflow: hidden; float: left; width: 48%; }
#news li:nth-child(2n) { float: right; }
#news li time { display: block; float: right; color: #888; font-size: 12px; }
#news li a { margin-right: 80px; }

/*carousel*/

#showcase .slick-load { width: 101.786%; }
#showcase .info { margin-right: 8%; overflow: hidden; }
#showcase .thumbnail { margin-bottom: 10px; }
#showcase .title { font-size: 14px; line-height: 1.5em; font-weight: normal; max-height: 3em; -webkit-line-clamp: 2; }
#showcase .load { padding-bottom: 11.544%; margin-bottom: 55px; }

/*product*/

#product ul { overflow: hidden; width: 101%; }
#product li { float: left; width: 19%; padding: 0.5% 1% .5% 0; }
#product .thumbnail { margin-bottom: 10px; }
#product .title { font-size: 14px; line-height: 1.5em; font-weight: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; }
/*proList*/
#proList ul { overflow: hidden; width: 102%; }
#proList li { float: left; width: 31.333%; padding: 0 2% 2% 0; }
#proList .thumbnail { margin-bottom: 10px; }
#proList .title { font-size: 14px; line-height: 1.5em; font-weight: normal; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; }

/*文章列表*/
.blogItem { overflow: hidden; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px dashed #e4e4e4; }
.blogItem .thumbnail { float: left; width: 250px; }
.blogItem .info { margin-left: 265px; overflow: hidden; padding: 5px 0; }
.blogItem .title { line-height: 1.35em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 18px; margin-bottom: 5px; }
.blogItem .meta { color: #888; margin-bottom: 5px; overflow: hidden; }
.blogItem .meta a { color: #888; }
.blogItem .meta span { font-size: 12px; background: no-repeat left center; padding: 0 16px; background-size: auto 10px; display: block; float: left; }
.blogItem .meta .views { float: right; padding-right: 0; background-image: url(../images/icon_01.png); }
.blogItem .meta .tag { background-image: url(../images/icon_02.png); }
.blogItem .meta .date { background-image: url(../images/icon_03.png); }
.blogItem .intro { font-size: 14px; color: #666; line-height: 1.75em; height: 5.25em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; margin-bottom: 13px; text-align: justify; }
.blogItem .more { overflow: hidden; }
.blogItem .more a { display: block; float: right; color: #fff; background-color: #0F1E4D; padding: 0 10px; font-size: 12px; height: 26px; line-height: 26px; }
.blogItem .more a:hover { opacity: .75; }

/*pagenavi*/
#pagenavi { clear: both; font-size: 0; line-height: normal; text-align: center; }
#pagenavi a,
#pagenavi span.now-page { display: inline-block; font-size: 14px; height: 32px; line-height: 32px; padding: 0 12px; background-color: #f1f1f1; color: #888; margin: 2px; }
#pagenavi span.now-page,
#pagenavi a:hover { background-color: #0F1E4D; color: #fff; }

/*侧边*/
#sidebar { width: 300px; }

/*侧边*/
.widget ul { overflow: hidden; }
.widget li { overflow: hidden; font-size: 14px; line-height: 1.875em; }
.widget img { max-width: 100%; height: auto; }
.widget .custom { margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px dashed #e4e4e4; }
.widget .custom:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.widget .thumbnail { width: 100px; float: left; }
.widget .info { margin-left: 110px; }
.widget h2 { font-size: 14px; line-height: 1.75em; height: 3.5em; color: #333; overflow: hidden; margin-bottom: 5px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.widget .meta { font-size: 12px; line-height: 1.5em; color: #888; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; background: no-repeat left center; background-size: auto 12px; padding-left: 17px; }
.widget .views { background-image: url(../images/icon_01.png); }
.widget .cmt { background-image: url(../images/icon_04.png); }
.widget .date { background-image: url(../images/icon_03.png); }

/*textwidget*/
.textwidget a { display: block; }
.textwidget img { display: block; }

/*divStatistics*/
#divStatistics li { display: table; width: 100%; table-layout: fixed; padding: 2px 0; color: #555; }
#divStatistics li span { display: table-cell; vertical-align: top; }
#divStatistics li .left { width: 5em; }
#divStatistics li .right { text-align: right; }
#divStatistics li i { font-style: normal; }

/*divComments*/
#divComments li { overflow: hidden; color: #444; margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px dashed #e4e4e4; text-align: justify; }
#divComments li:last-child { border-bottom: none; padding-bottom: 0; margin-bottom: 0; }
#divComments li .top { border: 1px solid #eee; padding: 5px 10px; font-size: 12px; line-height: 1.75em; color: #999; position: relative; margin-bottom: 10px; }
#divComments li .top:after { content: ''; display: block; width: 7px; height: 7px; border-right: 1px solid #eee; border-bottom: 1px solid #eee; background-color: #fff; transform: rotate(45deg); position: absolute; bottom: -5px; left: 7px; }
#divComments li .avatar { float: left; width: 24px; height: 24px; overflow: hidden; border-radius: 50%; }
#divComments li img { display: block; width: 100%; height: 100%; object-fit: cover; }
#divComments li .text { margin-left: 30px; line-height: 24px; max-height: 48px; display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
#divComments li a { overflow: hidden; color: #555; }

/*divPrevious*/
#divPrevious li { position: relative; padding: 0 0 10px 10px; margin-bottom: 10px; border-bottom: 1px dashed #e4e4e4; }
#divPrevious li:before { width: 3.5px; height: 3.5px; content: ''; display: block; background-color: #0F1E4D; position: absolute; left: 0; top: 12px; }
#divPrevious li:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }

/*divSearchPanel*/
#divSearchPanel input[type='text'] { height: 24px; line-height: 24px; padding: 5px 3%; border: 1px solid #e4e4e4; width: 94%; }
#divSearchPanel input[type='submit'] { color: #fff; position: absolute; right: 0; top: 0; height: 100%; width: 40px; background-color: #0F1E4D; cursor: pointer; }
#divSearchPanel form { position: relative; padding-right: 40px; overflow: hidden; }

/*divLinkage*/
#divLinkage li,
#divCatalog li,
#divMisc li { float: left; width: 48%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 1% 0; }
#divLinkage li:nth-child(2n),
#divCatalog li:nth-child(2n),
#divMisc li:nth-child(2n) { float: right; }
#divLinkage li a,
#divCatalog li a { background-color: #f9f9f9; color: #555; padding: 5px 10px; display: block; }
#divLinkage li { padding: 0 0 2%; }

/*divMisc*/
#divMisc a { display: block; }
#divMisc img { display: block; }

/*divTags*/
#divTags ul { overflow: hidden; width: 102%; }
#divTags li { float: left; padding: 1% 2% 1% 0; }
#divTags li a { display: block; background-color: #f9f9f9; border-radius: 0px; padding: 0 10px; color: #fff; font-size: 12px; }
#divTags li a:hover { opacity: .8; }
#divTags li:nth-child(8n-7) a { background-color: #8A9B0F; }
#divTags li:nth-child(8n-6) a { background-color: #EB6841; }
#divTags li:nth-child(8n-5) a { background-color: #3FB8AF; }
#divTags li:nth-child(8n-4) a { background-color: #FE4365; }
#divTags li:nth-child(8n-3) a { background-color: #FC9D9A; }
#divTags li:nth-child(8n-2) a { background-color: #EDC951; }
#divTags li:nth-child(8n-1) a { background-color: #C8C8A9; }
#divTags li:nth-child(8n) a { background-color: #83AF9B; }
#divTags li:first-child a { background-color: #E1474D; }
#divTags li:last-child a { background-color: #3299BB; }

/*divCalendar*/
#divCalendar caption { margin-bottom: 10px; font-size: 0; line-height: normal; }
#divCalendar caption a { display: inline-block; font-size: 16px; line-height: 1.35em; margin: 0 5px; vertical-align: middle; font-weight: bold; }
#divCalendar td,
#divCalendar th { width: 13.285%; padding: 0 0.5%; text-align: center; font-size: 14px; }
#divCalendar td a { padding: 10%; background-color: #0F1E4D; border-radius: 50%; color: #fff; }

/*sideMenu*/
#sideMenu li{font-size: 16px; line-height: 1.875em; border-bottom: 1px solid #eee; padding-bottom: 10px; margin-bottom: 10px;}
#sideMenu li:last-child {margin-bottom: 0;}
#sideMenu li a {color: #333; display: block;}
/*entry*/
.entry { font-size: 16px; line-height: 1.875em; overflow: hidden; }
.entry img { max-width: 100%; height: auto !important; }
.entry blockquote { margin: 0 2em 15px; overflow: hidden; padding: 15px 15px 0; color: #555; background-color: #f9f9f9; font-style: italic; }
.entry ul,
.entry ol { margin-bottom: 15px; margin-left: 2em; padding-left: 1em; }
.entry ul li { list-style: outside disc none; }
.entry ol li { list-style: outside decimal none; }
.entry li p { margin-bottom: 0; }
.entry p,
.entry h1,
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6 { margin-bottom: 15px; }
.entry a { color: #0F1E4D; text-decoration: underline; }
.entry hr { border: none; margin-bottom: 15px; border-bottom: 1px solid #e4e4e4; overflow: hidden; clear: both; }

/*postTags _aiyuanma*/
#postTags { font-size: 14px; line-height: 1.75em; }
#postTags span { font-weight: bold; color: #000; }
#postTags a { margin: 0 1.5%; }

/*postnavi*/
#postnavi { font-weight: bold; font-size: 14px; line-height: 1.75em; overflow: hidden;}
#postnavi .prev,
#postnavi .next { width: 45%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#postnavi .prev { float: left; }
#postnavi .next { float: right; text-align: right; }

/*breadcrumb*/
#breadcrumb { font-size: 14px; line-height: 1.5em; color: #eee; position:absolute; right:15px; top:50%; transform:translateY(-50%); }
#breadcrumb a { color: #eee; padding-right: 0; font-size: 14px; }
#breadcrumb a:after { display: none; }
#breadcrumb .home { background: url(../images/icon_home.png) no-repeat left; background-size: auto 14px; padding-left: 20px; }
#breadcrumb i { font-style: normal; font-family: 'Simsun'; margin: 0 5px 0 3px; color: #eee; }

/*postTitle aiyuanma_*/
#postTitle { font-size: 24px; text-align: center; line-height: 1.5em; padding: 2% 0 3%; }

/*postmeta*/
#postmeta { font-size: 0; line-height: normal; text-align: center; margin-bottom: 2.5%; border-bottom: 1px dashed #eee; padding-bottom: 2.5%; }
#postmeta span { font-size: 14px; color: #888; margin: 0 10px; display: inline-block; background: no-repeat left center; padding-left: 20px; background-size: auto 12px; }
#postmeta a { color: #888; }
#postmeta a:hover { color: #0F1E4D; }
#postmeta .views { background-image: url(../images/icon_01.png); }
#postmeta .tag { background-image: url(../images/icon_02.png); }
#postmeta .date { background-image: url(../images/icon_03.png); }

/*errorPage*/
#errorPage #postTitle { margin-top: 10%; }
#errorPage .entry { text-align: center; margin-bottom: 15%; }

/*related*/
#related ul { overflow: hidden; width: 102%; }
#related li { float: left; width: 23%; padding: 1% 2% 1% 0; }
#related .thumbnail { margin-bottom: 5px; }
#related h4 { font-size: 14px; line-height: 1.75em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; }

/*links*/
#links ul { overflow: hidden; width: 102%; }
#links li { font-size: 14px; line-height: 1.75em; padding: 0.5% 1% 0.5% 0; float: left; }

/*comment*/
#comment { position: relative; overflow: hidden; }
#comment .item { margin-bottom: 2%; position: relative; }
#comment label { display: block; font-size: 14px; line-height: 1.75em; color: #555; margin-bottom: 5px; }
#comment label i { font-style: normal; color: #f00; font-size: 12px; margin-left: 5px; }
#comment .input { border: 1px solid #e4e4e4; overflow: hidden; }
#comment .text { font-size: 14px; line-height: 24px; padding: 5px 5%; width: 90%; display: block; border: none; border-radius: 3px; color: #555; font-family: 'Microsoft Yahei'; }
#comment textarea.text { height: 110px; resize: vertical; padding: 5px 1.5%; width: 97%; }
#comment .inp { width: 102%; overflow: hidden; }
#comment .inp .item { float: left; width: 31.333%; padding-right: 2%; }
#comment .verify { width: 130px; float: left; margin-bottom: 0; }
#comment .verify img { display: block; cursor: pointer; height: 36px; width: auto; position: absolute; left: 110%; bottom: 0; }
#comment .btn { overflow: hidden; padding-top: 30.5px; margin-left: 250px; }
#comment .submit { float: right; background-color: #0F1E4D; border: none; width: 100px; height: 35px; color: #fff; font-size: 14px; border-radius: 3px; cursor: pointer; }
#comment .submit:hover { opacity: .85; }
#cancel-reply { font-size: 12px; color: #999; line-height: 2em; float: right; padding-right: 10px; line-height: 35px;}

/*warning*/
.warning { font-size: 12px; color: #999; line-height: 2em; clear: both; margin-bottom: 2%; }

/*commentslist*/
#commentslist { overflow: hidden; }
#commentslist li { position: relative; padding-bottom: 15px; margin-bottom: 20px; border-bottom: 1px solid #f6f6f6; overflow: hidden; }
#commentslist .avatar { float: left; padding: 3px 0; }
#commentslist .avatar img { width: 40px; height: 40px; display: block; }
#commentslist .info { margin-left: 55px; overflow: hidden; }
#commentslist .meta { overflow: hidden; font-size: 12px; line-height: 1.35em; color: #999; margin-bottom: 10px; }
#commentslist .meta span { display: block; float: left; }
#commentslist .meta .reply { float: right; }
#commentslist .meta a { color: #0F1E4D; }
#commentslist .user { font-size: 16px; font-weight: bold; line-height: 1.5em; color: #333; margin-bottom: 5px; }
#commentslist .user a { color: #333; }
#commentslist .text { font-size: 14px; line-height: 2em; color: #666; }
#commentslist .text li { margin-left: 0; }
#commentslist li li { margin: 15px 0 5px 55px; background-color: #f9f9f9; padding: 15px; border-bottom: none; }
#commentslist li li li { margin: 10px 10px 5px; background-color: #fff; border: 1px solid #e5e5e5; }

/*footer*/
#footer { line-height: 26px; font-size: 14px; padding: 2.5% 20px; background-color: #f6f6f6; border: 1px solid #eee; border-bottom: 0; border-radius: 6px 6px 0 0; color: #666;}
#footer a {color: #666;}
#footer a:hover {color: #333;}
/*social*/
#social { float: right; }
#social ul { font-size: 0; line-height: normal; padding: 2px 0; }
#social li { display: inline-block; margin-left: 20px; position: relative; }
#social a { display: block; overflow: hidden; width: 22px; height: 22px; background: no-repeat center center; background-size: contain; opacity: .5; }
#social a:hover { opacity: 1; }
#social .wx a { background-image: url(../images/icon_wechat.png); }
#social .wb a { background-image: url(../images/icon_weibo.png); }
#social .qq a { background-image: url(../images/icon_qq.png); }
#social .em a { background-image: url(../images/icon_email.png); }
#social .qr { position: absolute; left: 50%; transform: translateX(-50%); bottom: 100%; background-color: #fff; padding: 5px; width: 100px; margin-bottom: 10px; border: 1px solid #e4e4e4; display: none; }
#social .qr:after { width: 7px; height: 7px; background-color: #fff; border-right: 1px solid #e4e4e4; border-bottom: 1px solid #e4e4e4; transform: rotate(45deg); content: ''; display: block; position: absolute; left: 50%; margin-left: -5px; bottom: -5px; }
#social img { display: block; width: 100%; height: auto; }

/*copyright*/
#copyright { margin-right: 168px; }
#copyright a {display: inline-block;}
#copyright img {display: inline-block; vertical-align: middle; width: auto; height: 20px; margin-top: -4px;}
/*screen width*/
@media only screen and (max-width:1600px) {

	/*1536px*/
	.inner { width: 87.5%; }
}
@media only screen and (max-width:1280px) {

	

	/*1280px*/
	#logo { width: 214px; }
	#logo a { height: 48px; }

	/*1280px*/
	#search form {width: 80%;}
	#search .text { height: 24px; line-height: 24px; }
	#search .submit { width: 46px; height: 46px; }
	#search .input { margin-right: 46px; }

	/*1280px*/
	#nav li { line-height: 50px; }


	/*1280px*/
	#showcase .slick-load { width: 101.282%; }
	#showcase .info { margin-right: 6.329%; }

	/*1280px*/
	#sidebar { width: 280px; }
}
@media only screen and (max-width:1024px) {
	/*1024px*/
	.inner {width: auto;}
	/*1024px*/
	#top {box-shadow: 0px 2px 5px rgba(0,0,0,.35); position: relative; z-index: 10;}
	/*1024px*/
	#topbar {border-radius: 0; border-left: none; border-right: none; }
	/*1024px*/
	#welcome {float: none; padding:0 3.125%;}
	
	/*1024px*/
	#header {width: auto; padding: 20px 3.125%; display: block; position: relative;}	
	#header .td {display: block;}
	#header .clear {width: 100%; display: block;}
	#header #hotTel {display: none;}

	/*1024px*/
	#logo { float: left; width: auto; }
	#logo a { width: 178px; height: 40px; }
	/*1024px*/


	/*1024px*/
	#topBtn { position: absolute; right: 3.125%; top: 50%; transform: translateY(-50%); width: auto; }

	/*1024px*/
	#schBtn { display: block; }

	/*1024px*/
	#search.td { display: none; }
	#search { padding: 0; margin: 0 80px; position: absolute; top: 50%; transform: translateY(-50%); right: 3.125%; width: 350px; }
	#search .text { padding: 6px 3%; width: 94%; font-size: 14px; text-indent: 0; }
	#search .submit { width: 40px; height: 40px; }
	#search .input { margin-right: 40px; }

	/*1024px*/
	#navBtn { display: inline-block; }

	/*1024px*/
	#nav { position: fixed; left: -100%; top: 0; height: 100%; width: 100%; margin: 0; cursor: pointer; background-color: #fff; z-index: 9; overflow-y: auto; -webkit-overflow-scrolling:touch; transition: left .3s;}	
	#nav.active { left: 0; }
	#nav ul { padding: 130px 0; }
	#nav li { display: block; width: auto; text-align: left; }
	#nav li a { color: #333; margin: 0 3.125%; padding:0 50px 0 0; }
	#nav li a:hover { background-color: transparent; }
	#nav li ul { padding: 0; display: none; width: auto; position: static; left: auto; top: auto; background-color: transparent; box-shadow: none; }
	#nav li li { text-align: left; font-size: 14px; line-height: 40px; font-weight: bold; }
	#nav li li a { padding: 0 0 0 2em; }
	#nav li.hasSub > a::after { display: none; }
	#nav li em { width: 50px; height: 50px; top: 0; right: 0; z-index: 2; transform: none; display: block; }
	#nav li em:after { width: 6px; height: 6px; border-color: #333; transform: rotate(-45deg); margin-left: -4px; transition: all .3s; }
	#nav li em.open:after { transform: rotate(45deg); }

	/*1024px*/
	.boxTitle {border-radius: 0; padding-left: 3.125%; padding-right: 3.125%;}
	.boxTitle span, .boxTitle .arrow {right: 3.125%;}
	/*1024px*/
	.table,
	.table .td { display: block; width: auto; }

	/*1024px*/
	#main.td { padding-left: 0; }
	/*1024px*/
	#slides {border-radius: 0; margin-bottom: 0;}
	

	/*1024px*/
	#sidebar { width: auto; display: none;}

	/*1024px*/
	#divTags li { padding: 0.5% 1% 0.5% 0; }

	/*1024px*/
	#product { margin-bottom: 1.5625%; }
	/*1024px*/
	#showcase .slick-load { width: 101%; }
	#showcase .info { margin-right: 4.5%; }
	/*1024px*/
	#about .info {padding-left:3.125%; padding-right:3.125%;}
	#about .pic {width: 300px;}
	#about .text {margin-left: 325px;}
	#about .intro {height: 225px;}
	/*1024px*/
	#product .box,
	#showcase .box,
	#news ul,
	#links .box,
	#blogList,
	#proList {padding: 0 3.125%;}
	/*1024px*/
	#footer { padding: 20px 3.125%; border-radius: 0; border-left:none; border-right:none; }
	/*1024px*/
	#article .box {padding: 0 3.125%;}
	/*1024px*/
	.entry {font-size: 14px; line-height: 1.75em;}
}
@media only screen and (max-width:768px) {
	#slides .pic { height:200px; }
	/*768px*/
	.dot { padding-left: 10px; }
	.mb {margin-bottom: 15px;}
	
	/*768px*/
	#logo a { height: 30px; width: 134px; }

	/*768px*/
	#search { position: absolute; top: 100%; right: 0; width: 100%; margin: 0; background-color: #0F1E4D; transform: none; padding:5px 0; }
	#search form {width: 96.875%; float: none; padding-left: 3.125%;}
	#search .input {border-radius: 0;}
	/*768px*/
	
	
	#nav li { font-size: 14px; line-height: 40px; }
	#nav li a {padding-right: 40px; }
	
	#nav li em { width: 40px; height: 40px; }

	/*768px*/
	

	#slides .wap {display: block;}
	#slides .pc {display: none;}
	#slides .slick-arrow { width: 20px; height: 30px; }
	#slides .slick-prev:after,
	#slides .slick-next:after { width: 8px; height: 13px; margin-left: -4px; }
	#slides .slick-prev { left: 0; }
	#slides .slick-next { right: 0; }
	#slides .slick-dots { bottom: 35px; }

	/*768px*/
	.boxTitle {margin-bottom: 10px;}	
	.boxTitle .name { font-size: 14px; }
	.boxTitle .slick-arrow { width: 20px; height: 20px;}

	/*768px*/
	
	#product ul { width: 103%; }
	#product li { width: 47%; padding: 1.5% 3% 0 0; }
	#product .thumbnail { margin-bottom: 5px; }
	#product .title { margin-bottom: 5px; }

	/*768px*/
	#blogList {padding-top: 5px;}
	.blogItem { margin-bottom: 15px; padding-bottom: 15px; }
	.blogItem .thumbnail { width: 100px; }
	.blogItem .info { margin-left: 115px; padding: 0; }
	.blogItem .info h2 { font-size: 14px; line-height: 1.75em; max-height: 3.5em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; margin-bottom: 0; white-space: normal; white-space: normal; }
	.blogItem .intro { white-space: nowrap; display: block; height: auto; margin-bottom: 0; }
	.blogItem .meta,
	.blogItem .more { display: none; }

	/*768px*/
	
	#pagenavi a,
	#pagenavi span.now-page { font-size: 12px; height: 28px; line-height: 28px; }

	

	/*768px*/
	.widget .info { margin-left: 110px; }
	.widget .custom { margin-bottom: 10px; padding-bottom: 10px; }

	/*768px*/
	#divComments li { margin-bottom: 12px; padding-bottom: 8px; }

	/*768px*/
	#divStatistics li { padding: 1px 0; }
	/*768px*/
	#footer {line-height: 1.75em;}

	/*768px*/
	#copyright { text-align: center; font-size: 12px; margin-right: 0; }

	/*768px*/
	#social { float: none; margin-bottom: 5px; }
	#social ul { text-align: center; }

	/*768px*/
	#related ul { width: 105%; }
	#related li { width: 45%; padding: 2% 5% 2% 0; }

	/*768px*/
	#postnavi { font-weight: normal; line-height: 2em; }
	#postnavi .prev,
	#postnavi .next { float: none; width: auto; text-align: left; }

	/*768px*/
	
	.entry p,
	.entry h1,
	.entry h2,
	.entry h3,
	.entry h4,
	.entry h5,
	.entry h6,
	.entry hr,
	.entry blockquote,
	.entry ol,
	.entry ul { margin-bottom: 3%; }

	/*768px*/
	#postTitle { font-size: 20px; padding: 3% 0 4%; }

	/*768px*/
	#postmeta { margin-bottom: 3%; padding-bottom: 3%; }
	#postmeta span { margin: 0 5px; font-size: 12px; background-size: auto 12px; padding-left: 18px; }

	/*768px*/
	#breadcrumb { line-height: 22px; }
	#breadcrumb a { font-size: 12px; }
	#breadcrumb .home { background-size: auto 12px; padding-left: 18px; }

	/*768px*/
	#comment .inp { width: auto; }
	#comment .inp .item { float: none; width: auto; padding-right: 0; }
	#comment .verify { width: auto; float: none; padding-right: 110px; margin-bottom: 10px; }
	#comment .verify img { left: auto; right: 0; }
	#comment .btn { clear: both; padding: 2% 0; overflow: hidden; margin-left: 0; }
	#comment .submit { height: 30px; width: 100%; }

	/*768px*/
	#commentslist li { padding-bottom: 10px; margin-bottom: 10px; }
	#commentslist .avatar img { width: 30px; height: 30px; }
	#commentslist .info { margin-left: 40px; }
	#commentslist .meta { margin-bottom: 5px; }
	#commentslist .user { font-size: 14px; }
	#commentslist li li { margin: 10px 0 5px 40px; padding: 10px; }
	#commentslist li li li { margin: 5px; }

	

	/*768px*/
	#pagelist { display: none; }


	/*768px*/
	
	#links li { padding: 0 10px 0 0; }

	/*768px*/
	#showcase .boxTitle {margin-bottom: 15px;}
	#showcase .slick-load { width: 102.521%; }
	#showcase .info { margin-right: 5.848%; }
	#showcase .thumbnail { margin-bottom: 5px; }

	/*768px*/
	
	#news li:nth-child(2n),
	#news li {float: none; width: auto; line-height: 30px; }
	/*768px*/
	#about .info {padding-top: 5px; padding-bottom: 0;}
	#about .pic {float: none; width: auto; margin-bottom: 15px;}
	#about .text {margin-left: 0; line-height: 1.75em;}
	#about .intro {height: 250px;}
	/*768px*/
	#proList ul {width: 103%;}
	#proList li {width: 47%; padding: 0 3% 3% 0;}

}
#maximg img{ max-width:100% !important; height:auto !important}
.pagebar { padding:20px; overflow:hidden; clear:both}
.pagebar .pagination {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}
.pagination a {
  background: #fff;
  border: 1px solid #ccc;
  color: #333;
  font-size: 12px;
  padding: 8px 10px;
  margin: 0 2px;
  border-radius: 3px; line-height:100%
}
.pagination span {
    color: #333;
    font-size: 12px;
    padding: 7px 2px;
    margin: 0 2px;
    border-radius: 3px;
}
.pagination a:hover {
  color: #333;
  border: 1px solid #333;
}
.pagination a.page-num-current {
  color: #fff;
  background: #333;
  border: 1px solid #333;
}
.pagination .st{ font-family:宋体}
.text-secondary{ text-align:center; padding:20px 0}

/* ===============================
   Custom: 修理一覧 图片完整显示 / 隐藏下方文字
   2026-05-06
   - 首页修理一覧：12个，3排，每排4个
   - 修理一覧页面：图片完整显示，隐藏下方文字
   =============================== */
#product .box ul {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 18px 14px !important;
    width: 100% !important;
    overflow: visible !important;
}

#product .box li {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

#proList ul {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 25px 20px !important;
    width: 100% !important;
    overflow: visible !important;
}

#proList li {
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

#product .thumbnail,
#proList .thumbnail {
    margin-bottom: 0 !important;
    background: #FFFFFF !important;
    overflow: hidden !important;
}

#product .thumbnail a,
#proList .thumbnail a {
    display: block !important;
    padding-bottom: 75% !important;
    position: relative !important;
    overflow: hidden !important;
    background-color: #FFFFFF !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: contain !important;
}

#product .thumbnail img,
#proList .thumbnail img {
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    transform: none !important;
    transition: none !important;
    background: #ffffff !important;
}

#product .thumbnail img:hover,
#proList .thumbnail img:hover {
    transform: none !important;
}

#product .title,
#proList .title {
    display: none !important;
}

@media only screen and (max-width: 900px) {
    #product .box ul,
    #proList ul {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 14px !important;
    }
}

@media only screen and (max-width: 520px) {
    /* 手机版修理一覧改为双排显示 */
    #product .box ul,
    #proList ul {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px 8px !important;
    }
}

/* ===============================
   Custom: お問い合わせフォーム
   2026-05-06
   =============================== */
#repair-contact {
    max-width: 1120px;
    margin: 0 auto 40px;
    padding: 0 18px 20px;
    font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    color: #111;
}

#repair-contact * {
    box-sizing: border-box;
}

#repair-contact .contact-heading {
    text-align: center;
    padding: 6px 0 24px;
}

#repair-contact .contact-heading h1,
#repair-contact .contact-heading .contact-title {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 22px;
    font-weight: 700;
}

#repair-contact .contact-heading p {
    font-size: 14px;
    color: #333;
}

#repair-contact .contact-form {
    background: #fff;
}

#repair-contact .form-row {
    display: grid;
    grid-template-columns: 170px 84px 1fr;
    gap: 14px;
    align-items: start;
    padding: 16px 0 28px;
    border-top: 1px dotted #e60012;
}

#repair-contact .form-row > label {
    font-weight: 700;
    font-size: 15px;
    line-height: 42px;
}

#repair-contact .required-badge,
#repair-contact .optional-badge {
    display: inline-block;
    min-width: 72px;
    margin-top: 9px;
    padding: 2px 12px;
    background: #d7271f;
    color: #fff;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    line-height: 24px;
    border-radius: 2px;
    letter-spacing: .08em;
}

#repair-contact .optional-badge {
    background: #999;
}

#repair-contact .field-wrap {
    width: 100%;
}

#repair-contact input,
#repair-contact select,
#repair-contact textarea {
    display: block;
    width: 100%;
    border: 1px solid transparent;
    background: #f3eee8;
    color: #222;
    font-size: 15px;
    line-height: 1.5;
    min-height: 48px;
    padding: 11px 18px;
    border-radius: 0;
    transition: border-color .2s, background-color .2s;
    font-family: inherit;
}

#repair-contact input:focus,
#repair-contact select:focus,
#repair-contact textarea:focus {
    border-color: #e60012;
    background: #fff;
    outline: none;
}

#repair-contact select {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 50px;
    cursor: pointer;
}

#repair-contact .select-wrap {
    position: relative;
    max-width: 430px;
}

#repair-contact .select-wrap::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    width: 48px;
    height: 48px;
    background: #e60012;
    pointer-events: none;
}

#repair-contact .select-wrap::before {
    content: "";
    position: absolute;
    right: 19px;
    top: 18px;
    width: 9px;
    height: 9px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    z-index: 2;
    pointer-events: none;
}

#repair-contact textarea {
    min-height: 200px;
    resize: vertical;
}

#repair-contact .textarea-wrap,
#repair-contact .form-row:not(.visit-row) .field-wrap:not(.select-wrap) {
    max-width: 770px;
}

#repair-contact .visit-wrap {
    max-width: 770px;
}

#repair-contact #visit_date {
    max-width: 300px;
    margin-bottom: 12px;
}

#repair-contact .time-selects {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    font-size: 14px;
}

#repair-contact .time-selects select {
    width: 100px;
    min-height: 44px;
    padding: 9px 34px 9px 13px;
    border: 2px solid #e60012;
    background: #fff;
}

#repair-contact .time-selects select + span {
    margin-right: 4px;
}

#repair-contact .shop-note {
    margin-top: 12px;
    color: #e60012;
    font-size: 14px;
    line-height: 1.8;
    font-weight: 700;
}

#repair-contact .privacy-card {
    margin: 30px auto 26px;
    padding: 26px 34px;
    border: 1px solid #e60012;
    background: #fff;
    max-width: 920px;
    max-height: 185px;
    overflow-y: auto;
    text-align: left;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .04);
}

#repair-contact .privacy-card h2 {
    margin-bottom: 12px;
    text-align: center;
    color: #e60012;
    font-size: 17px;
    line-height: 1.6;
}

#repair-contact .privacy-card p {
    margin-bottom: 10px;
    color: #333;
    font-size: 14px;
    line-height: 1.85;
}

#repair-contact .privacy-check {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
    font-weight: 700;
    color: #222;
    cursor: pointer;
}

#repair-contact .privacy-check input {
    width: 18px;
    height: 18px;
    min-height: 18px;
    padding: 0;
    appearance: auto;
    -webkit-appearance: checkbox;
    cursor: pointer;
}

#repair-contact .confirm-notice {
    margin: 0 auto 18px;
    text-align: center;
    font-size: 20px;
    line-height: 1.8;
    font-weight: 700;
}

#repair-contact .confirm-notice strong {
    color: #e60012;
}

#repair-contact .submit-area {
    text-align: center;
}

#repair-contact .contact-submit,
#repair-contact .send-btn,
#repair-contact .back-btn {
    display: inline-block;
    border: none;
    background: #e60012;
    color: #fff;
    min-width: 252px;
    min-height: 48px;
    padding: 12px 28px;
    border-radius: 3px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity .2s, transform .2s;
    font-family: inherit;
}

#repair-contact .back-btn {
    background: #666;
}

#repair-contact .contact-submit:hover,
#repair-contact .send-btn:hover,
#repair-contact .back-btn:hover {
    opacity: .86;
}

#repair-contact .confirm-panel {
    display: none;
    margin-top: 28px;
}

#repair-contact .confirm-panel.show {
    display: block;
}

#repair-contact .confirm-box {
    max-width: 920px;
    margin: 0 auto;
    padding: 28px;
    border: 1px solid #e60012;
    background: #fff;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
}

#repair-contact .confirm-box h2 {
    margin-bottom: 16px;
    text-align: center;
    color: #e60012;
    font-size: 19px;
}

#repair-contact .confirm-list dl {
    display: grid;
    grid-template-columns: 190px 1fr;
    border-top: 1px solid #eee;
    border-left: 1px solid #eee;
}

#repair-contact .confirm-list dt,
#repair-contact .confirm-list dd {
    padding: 10px 14px;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    line-height: 1.7;
}

#repair-contact .confirm-list dt {
    background: #faf5f1;
    font-weight: 700;
}

#repair-contact .confirm-actions {
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 22px;
}

@media only screen and (max-width: 768px) {
    #repair-contact {
        padding: 0 10px 18px;
    }

    #repair-contact .contact-heading h1,
#repair-contact .contact-heading .contact-title {
        font-size: 20px;
    }

    #repair-contact .form-row {
        display: block;
        padding: 14px 0 22px;
    }

    #repair-contact .form-row > label {
        display: inline-block;
        line-height: 1.7;
        margin-right: 10px;
    }

    #repair-contact .required-badge,
    #repair-contact .optional-badge {
        margin: 0 0 10px;
        min-width: 58px;
        line-height: 22px;
        padding: 1px 9px;
    }

    #repair-contact .select-wrap,
    #repair-contact .textarea-wrap,
    #repair-contact .form-row:not(.visit-row) .field-wrap:not(.select-wrap),
    #repair-contact .visit-wrap,
    #repair-contact #visit_date {
        max-width: none;
    }

    #repair-contact textarea {
        min-height: 160px;
    }

    #repair-contact .privacy-card {
        max-height: none;
        padding: 20px 16px;
    }

    #repair-contact .confirm-notice {
        font-size: 17px;
    }

    #repair-contact .contact-submit,
    #repair-contact .send-btn,
    #repair-contact .back-btn {
        width: 100%;
        min-width: 0;
    }

    #repair-contact .confirm-list dl {
        display: block;
    }

    #repair-contact .confirm-list dt,
    #repair-contact .confirm-list dd {
        display: block;
    }

    #repair-contact .time-selects select {
        flex: 1 1 88px;
    }
}


/* ===============================
   Custom: ホームSNS QRセクション
   2026-05-06
   =============================== */
#home-social {
    max-width: 1120px;
    margin: 0 auto 40px;
    padding: 0 18px 10px;
    font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}

#home-social * {
    box-sizing: border-box;
}

#home-social .social-intro {
    margin: 18px 0 20px;
    padding: 22px 24px;
    background: #fff7f7;
    border: 1px solid #ffd1d1;
    border-radius: 10px;
    text-align: center;
}

#home-social .social-intro h3 {
    margin-bottom: 8px;
    color: #e60012;
    font-size: 20px;
    line-height: 1.5;
}

#home-social .social-intro p {
    color: #333;
    font-size: 14px;
    line-height: 1.8;
}

#home-social .social-qr-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
}

#home-social .social-qr-card {
    display: block;
    padding: 16px 12px 18px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .06);
    transition: transform .2s, box-shadow .2s, border-color .2s;
}

#home-social .social-qr-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(0, 0, 0, .1);
    border-color: #e60012;
    color: #222;
}

#home-social .social-qr-card img {
    display: block;
    width: 100%;
    max-width: 145px;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin: 0 auto 12px;
    padding: 6px;
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 8px;
}

#home-social .social-qr-card h3 {
    margin-bottom: 5px;
    color: #e60012;
    font-size: 16px;
    line-height: 1.4;
}

#home-social .social-qr-card p {
    color: #444;
    font-size: 13px;
    line-height: 1.5;
}

@media only screen and (max-width: 1100px) {
    #home-social .social-qr-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and (max-width: 640px) {
    #home-social {
        padding: 0 10px 10px;
    }

    #home-social .social-intro {
        padding: 18px 14px;
    }

    #home-social .social-intro h3 {
        font-size: 18px;
    }

    #home-social .social-qr-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    #home-social .social-qr-card {
        padding: 12px 8px 14px;
    }

    #home-social .social-qr-card img {
        max-width: 128px;
    }
}

@media only screen and (max-width: 420px) {
    #home-social .social-qr-grid {
        grid-template-columns: 1fr;
    }
}


/* ===============================
   Custom: テーマ統一調整
   2026-05-06
   =============================== */
/* contact page / home contact block */
#repair-contact {
    max-width: none;
    margin: 0 auto 30px;
    padding: 0;
    color: #1f2a44;
}

#repair-contact .contact-panel {
    background: #fff;
    border: 1px solid #dbe3f2;
    border-radius: 6px;
    padding: 24px 28px 32px;
    box-shadow: 0 8px 20px rgba(15, 30, 77, .05);
}

#repair-contact .contact-heading {
    text-align: center;
    padding: 4px 0 24px;
}

#repair-contact .contact-heading h1,
#repair-contact .contact-heading .contact-title {
    margin-bottom: 12px;
    font-size: 28px;
    line-height: 1.45;
    font-weight: 700;
    color: #0F1E4D;
}

#repair-contact .contact-heading p {
    font-size: 14px;
    color: #5b6788;
}

#repair-contact .contact-form {
    background: transparent;
}

#repair-contact .form-row {
    display: grid;
    grid-template-columns: 190px 84px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    padding: 18px 0 24px;
    border-top: 1px solid #e4eaf6;
}

#repair-contact .form-row:first-of-type {
    border-top: none;
}

#repair-contact .form-row > label {
    font-weight: 700;
    font-size: 15px;
    line-height: 46px;
    color: #1b2645;
}

#repair-contact .required-badge,
#repair-contact .optional-badge {
    display: inline-block;
    min-width: 72px;
    margin-top: 10px;
    padding: 2px 12px;
    background: #0F1E4D;
    color: #fff;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    line-height: 24px;
    border-radius: 3px;
    letter-spacing: .08em;
}

#repair-contact .optional-badge {
    background: #98a1b8;
}

#repair-contact .field-wrap {
    width: 100%;
}

#repair-contact input,
#repair-contact select,
#repair-contact textarea {
    display: block;
    width: 100%;
    border: 1px solid #d7dfef;
    background: #fff;
    color: #222;
    font-size: 15px;
    line-height: 1.5;
    min-height: 48px;
    padding: 11px 16px;
    border-radius: 4px;
    transition: border-color .2s, box-shadow .2s, background-color .2s;
    font-family: inherit;
}

#repair-contact input::placeholder,
#repair-contact textarea::placeholder {
    color: #98a1b8;
}

#repair-contact input:focus,
#repair-contact select:focus,
#repair-contact textarea:focus {
    border-color: #0F1E4D;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(15, 30, 77, .08);
    outline: none;
}

#repair-contact select {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 52px;
    cursor: pointer;
}

#repair-contact .select-wrap,
#repair-contact .textarea-wrap,
#repair-contact .form-row:not(.visit-row) .field-wrap:not(.select-wrap),
#repair-contact .visit-wrap {
    max-width: none;
}

#repair-contact .select-wrap {
    position: relative;
}

#repair-contact .select-wrap::after {
    content: "";
    position: absolute;
    right: 1px;
    top: 1px;
    width: 46px;
    height: calc(100% - 2px);
    background: #0F1E4D;
    border-radius: 0 4px 4px 0;
    pointer-events: none;
}

#repair-contact .select-wrap::before {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    margin-top: -6px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    z-index: 2;
    pointer-events: none;
}

#repair-contact textarea {
    min-height: 200px;
    resize: vertical;
}

#repair-contact #visit_date {
    max-width: 320px;
    margin-bottom: 12px;
}

#repair-contact .time-selects {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    font-size: 14px;
    color: #43506f;
}

#repair-contact .time-selects select {
    width: 100px;
    min-height: 44px;
    padding: 9px 34px 9px 13px;
    border: 1px solid #d7dfef;
    background: #fff;
}

#repair-contact .shop-note {
    margin-top: 12px;
    color: #F65E4F;
    font-size: 14px;
    line-height: 1.8;
    font-weight: 700;
}

#repair-contact .privacy-card {
    margin: 28px 0 24px;
    padding: 24px 28px;
    border: 1px solid #dbe3f2;
    background: #f7f9fe;
    max-width: none;
    max-height: 205px;
    overflow-y: auto;
    text-align: left;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.7);
}

#repair-contact .privacy-card h2 {
    margin-bottom: 12px;
    text-align: center;
    color: #0F1E4D;
    font-size: 20px;
    line-height: 1.6;
}

#repair-contact .privacy-card p {
    margin-bottom: 10px;
    color: #384463;
    font-size: 14px;
    line-height: 1.85;
}

#repair-contact .privacy-check {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
    margin-top: 14px;
    font-weight: 700;
    color: #1b2645;
    cursor: pointer;
}

#repair-contact .privacy-check input {
    width: 18px;
    height: 18px;
    min-height: 18px;
    padding: 0;
    appearance: auto;
    -webkit-appearance: checkbox;
    cursor: pointer;
}

#repair-contact .confirm-notice {
    margin: 0 auto 20px;
    text-align: center;
    font-size: 20px;
    line-height: 1.8;
    font-weight: 700;
    color: #1b2645;
}

#repair-contact .confirm-notice strong {
    color: #F65E4F;
}

#repair-contact .submit-area {
    text-align: center;
}

#repair-contact .contact-submit,
#repair-contact .send-btn,
#repair-contact .back-btn {
    display: inline-block;
    border: none;
    background: #0F1E4D;
    color: #fff;
    min-width: 252px;
    min-height: 48px;
    padding: 12px 28px;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity .2s, transform .2s, background-color .2s;
    font-family: inherit;
}

#repair-contact .contact-submit:hover,
#repair-contact .send-btn:hover,
#repair-contact .back-btn:hover {
    opacity: .92;
    transform: translateY(-1px);
}

#repair-contact .back-btn {
    background: #98a1b8;
}

#repair-contact .confirm-panel {
    display: none;
    margin-top: 28px;
}

#repair-contact .confirm-panel.show {
    display: block;
}

#repair-contact .confirm-box {
    max-width: none;
    margin: 0;
    padding: 28px;
    border: 1px solid #dbe3f2;
    border-radius: 6px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(15, 30, 77, .08);
}

#repair-contact .confirm-box h2 {
    margin-bottom: 16px;
    text-align: center;
    color: #0F1E4D;
    font-size: 22px;
}

#repair-contact .confirm-list dl {
    display: grid;
    grid-template-columns: 190px 1fr;
    border-top: 1px solid #e6ebf6;
    border-left: 1px solid #e6ebf6;
}

#repair-contact .confirm-list dt,
#repair-contact .confirm-list dd {
    padding: 10px 14px;
    border-right: 1px solid #e6ebf6;
    border-bottom: 1px solid #e6ebf6;
    font-size: 14px;
    line-height: 1.7;
}

#repair-contact .confirm-list dt {
    background: #f7f9fe;
    font-weight: 700;
    color: #0F1E4D;
}

#repair-contact .confirm-actions {
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-top: 22px;
}

/* social qr theme */
#home-social {
    max-width: none;
    margin: 0 auto 40px;
    padding: 0;
    font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
}

#home-social .social-intro {
    margin: 18px 0 20px;
    padding: 26px 24px;
    background: linear-gradient(180deg, #f8fbff 0%, #f3f7ff 100%);
    border: 1px solid #dbe3f2;
    border-radius: 8px;
    text-align: center;
}

#home-social .social-intro h3 {
    margin-bottom: 8px;
    color: #0F1E4D;
    font-size: 28px;
    line-height: 1.5;
}

#home-social .social-intro p {
    color: #43506f;
    font-size: 14px;
    line-height: 1.8;
}

#home-social .social-qr-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
}

#home-social .social-qr-card {
    display: block;
    padding: 16px 12px 18px;
    background: #fff;
    border: 1px solid #dde5f3;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 10px 24px rgba(15, 30, 77, .06);
    transition: transform .2s, box-shadow .2s, border-color .2s;
}

#home-social .social-qr-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 30px rgba(15, 30, 77, .12);
    border-color: #0F1E4D;
    color: #222;
}

#home-social .social-qr-card img {
    display: block;
    width: 100%;
    max-width: 145px;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin: 0 auto 12px;
    padding: 6px;
    background: #fff;
    border: 1px solid #eef2fa;
    border-radius: 8px;
}

#home-social .social-qr-card h3 {
    margin-bottom: 5px;
    color: #0F1E4D;
    font-size: 16px;
    line-height: 1.4;
}

#home-social .social-qr-card p {
    color: #586482;
    font-size: 13px;
    line-height: 1.5;
}

/* general inner page alignment */
.page-article .page-shell {
    margin: 0 auto;
}

.page-content-card {
    background: #fff;
    border: 1px solid #dbe3f2;
    border-radius: 6px;
    padding: 26px 28px;
    box-shadow: 0 8px 20px rgba(15, 30, 77, .05);
}

#postTitle {
    color: #0F1E4D;
    font-size: 24px;
    text-align: center;
    line-height: 1.5em;
    padding: 2% 0 3%;
}

.page-content-card .boxTitle,
.entry .boxTitle {
    box-shadow: none;
}

.page-content-card table,
.entry table {
    border-color: #dbe3f2;
}

.page-content-card table th,
.entry table th {
    background-color: #f5f8ff;
    color: #0F1E4D;
}

@media only screen and (max-width: 1100px) {
    #home-social .social-qr-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media only screen and (max-width: 768px) {
    #repair-contact .contact-panel,
    .page-content-card {
        padding: 20px 14px 24px;
    }

    #repair-contact .contact-heading h1,
    #repair-contact .contact-heading .contact-title,
    #home-social .social-intro h3 {
        font-size: 22px;
    }

    #repair-contact .form-row {
        display: block;
        padding: 14px 0 22px;
    }

    #repair-contact .form-row > label {
        display: inline-block;
        line-height: 1.7;
        margin-right: 10px;
        margin-bottom: 6px;
    }

    #repair-contact .required-badge,
    #repair-contact .optional-badge {
        margin: 0 0 10px;
        min-width: 58px;
        line-height: 22px;
        padding: 1px 9px;
    }

    #repair-contact textarea {
        min-height: 160px;
    }

    #repair-contact .privacy-card {
        max-height: none;
        padding: 20px 16px;
    }

    #repair-contact .confirm-notice {
        font-size: 17px;
    }

    #repair-contact .contact-submit,
    #repair-contact .send-btn,
    #repair-contact .back-btn {
        width: 100%;
        min-width: 0;
    }

    #repair-contact .confirm-list dl {
        display: block;
    }

    #repair-contact .confirm-list dt,
    #repair-contact .confirm-list dd {
        display: block;
    }

    #repair-contact .time-selects select {
        flex: 1 1 88px;
    }
}

@media only screen and (max-width: 640px) {
    #home-social .social-intro {
        padding: 18px 14px;
    }

    #home-social .social-qr-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    #home-social .social-qr-card {
        padding: 12px 8px 14px;
    }

    #home-social .social-qr-card img {
        max-width: 128px;
    }
}

@media only screen and (max-width: 420px) {
    #home-social .social-qr-grid {
        grid-template-columns: 1fr;
    }
}


/* 隐藏 NEWS 下方空白横条 / links 区块 */
#links {
  display: none !important;
}




/* 手机版：首页轮播图完整显示 + logo 放大 */
@media only screen and (max-width: 768px) {

  /* 1) logo 放大 */
  #logo a {
    width: 170px !important;
    height: 40px !important;
    background-size: contain !important;
    background-position: left center !important;
    background-repeat: no-repeat !important;
  }
}

/* ===============================
   Custom: 手机版首页轮播图完整显示
   2026-05-07
   - 手机端使用真实 img 高度，按轮播图片原始比例自适应
   - 避免 background-size: cover 导致左右裁切
   - 去掉轮播上下左右空隙，不拉伸、不留白
   =============================== */
#slides .pic img {
    display: none;
}

@media only screen and (max-width: 768px) {
    #slides {
        background: transparent !important;
        margin-bottom: 0 !important;
        overflow: hidden !important;
    }

    #slides .item,
    #slides .item a,
    #slides .slick-list,
    #slides .slick-track,
    #slides .slick-slide {
        line-height: 0 !important;
    }

    #slides .slick-slide {
        height: auto !important;
    }

    #slides .pc {
        display: none !important;
    }

    #slides .wap {
        display: block !important;
    }

    #slides .pic {
        height: auto !important;
        background-image: none !important;
        background: none !important;
        line-height: 0 !important;
        overflow: hidden !important;
    }

    #slides .pic img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    #slides .slick-dots {
        bottom: 8px !important;
    }

    #slides .load {
        padding-bottom: 30.52% !important;
    }
}


/* ===============================
   Custom: 手机版顶部白色区域缩短
   2026-05-07
   - 缩短 logo / 搜索 / 菜单所在白色头部区域的上下留白
   =============================== */
@media only screen and (max-width: 768px) {
    #header {
        padding: 10px 3.125% !important;
    }

    #logo {
        margin: 0 !important;
    }

    #logo a {
        width: 155px !important;
        height: 34px !important;
    }

    #topBtn {
        right: 3.125% !important;
    }

    #schBtn i {
        width: 18px !important;
        height: 18px !important;
    }

    #navBtn {
        height: 18px !important;
        margin-left: 12px !important;
    }
}

@media only screen and (max-width: 420px) {
    #header {
        padding: 8px 3.125% !important;
    }

    #logo a {
        width: 148px !important;
        height: 32px !important;
    }
}


/* ===============================
   Fix: 电话图标显示不全
   放在 style.css 最底部
   =============================== */

#hotTel {
    width: 330px !important;
    overflow: visible !important;
}

#hotTel .tel {
    float: right !important;
    display: flex !important;
    align-items: center !important;
    min-height: 48px !important;
    padding-left: 56px !important;

    background-image: url(../images/icon_tel.png) !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: 40px 40px !important;

    overflow: visible !important;
    box-sizing: border-box !important;
}

#hotTel span {
    display: inline-block !important;
    font-size: 28px !important;
    line-height: 48px !important;
    color: #F65E4F !important;
    font-weight: bold !important;
    white-space: nowrap !important;
}
/* ===============================
   Custom Fix: 首页大图全屏幕尺寸完整显示
   2026-05-11
   - PC / 平板 / 手机统一使用真实图片比例显示
   - 取消固定高度与 background-size: cover 裁切
   - 图片宽度自适应容器，高度自动，不拉伸、不压缩、不留白
   =============================== */
#slides {
    overflow: hidden !important;
    background: transparent !important;
}

#slides .item,
#slides .item a,
#slides .slick-list,
#slides .slick-track,
#slides .slick-slide,
#slides .slick-slide > div {
    height: auto !important;
    line-height: 0 !important;
}

#slides .pic {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    background-image: none !important;
    overflow: hidden !important;
    line-height: 0 !important;
}

#slides .pic img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
}

#slides .load {
    padding-bottom: 30.52% !important; /* 586 / 1920，避免加载前高度跳动 */
}

@media only screen and (max-width: 768px) {
    #slides .pic {
        height: auto !important;
    }

    #slides .pic img {
        width: 100% !important;
        height: auto !important;
    }
}

/* ===============================
   Custom Fix v2: 首页大图在 787px 等中间尺寸也完整显示
   2026-05-11
   - 针对 769px ~ 1024px 以及所有尺寸统一强制按原图比例显示
   - 使用 aspect-ratio 锁定轮播比例，避免固定高度 440px 导致横向裁切
   - img 绝对定位 + object-fit: contain，确保整张图完整显示
   =============================== */
#slides,
#slides .slick-list,
#slides .slick-track,
#slides .slick-slide,
#slides .slick-slide > div,
#slides .item,
#slides .item a {
    height: auto !important;
}

#slides .pic.pc,
#slides .pic.wap,
#slides .pic {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1920 / 586 !important;
    background: none !important;
    background-image: none !important;
    overflow: hidden !important;
}

#slides .pic.pc img,
#slides .pic.wap img,
#slides .pic img {
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center center !important;
}

#slides .load {
    padding-bottom: 30.52% !important;
}

@media only screen and (max-width: 1024px) {
    #slides .pic.pc,
    #slides .pic.wap,
    #slides .pic {
        aspect-ratio: 1920 / 586 !important;
    }

    #slides .pic.pc img,
    #slides .pic.wap img,
    #slides .pic img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
    }
}

@supports not (aspect-ratio: 1 / 1) {
    #slides .pic.pc,
    #slides .pic.wap,
    #slides .pic {
        height: 0 !important;
        padding-bottom: 30.52% !important;
    }

    #slides .pic.pc img,
    #slides .pic.wap img,
    #slides .pic img {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }
}


/* ===============================
   Custom Fix v3: 首页大图只显示一张，防止 PC/WAP 双图重复
   2026-05-11
   - 电脑和平板显示 .pc 图
   - 手机尺寸显示 .wap 图
   - 修复之前两个图片同时 display:block 导致重复出现的问题
   =============================== */
#slides .pic.pc {
    display: block !important;
}

#slides .pic.wap {
    display: none !important;
}

@media only screen and (max-width: 768px) {
    #slides .pic.pc {
        display: none !important;
    }

    #slides .pic.wap {
        display: block !important;
    }
}


/* ===============================
   Custom Fix v4: 客户指摘事项修正
   2026-05-11
   - 普通滚动条替代 mCustomScrollbar
   - 隐藏分页中不可用的 javascript:; 链接
   - 当前页 span 保持按钮样式
   =============================== */
#about .intro {
    overflow-y: auto !important;
    overflow-x: hidden !important;
}
.pagination a[href="javascript:;"] {
    display: none !important;
}
.pagination span.page-item {
    background: #fff;
    border: 1px solid #ccc;
    color: #333;
    font-size: 12px;
    padding: 8px 10px;
    margin: 0 2px;
    border-radius: 3px;
    line-height: 100%;
}
.pagination span.current {
    color: #fff;
    background: #333;
    border-color: #333;
}







/* ===============================
   WeChat QR 拡大表示ライトボックス
   =============================== */
body.qr-lightbox-open {
    overflow: hidden;
}

#home-social .qr-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(7, 16, 42, .72);
}

#home-social .qr-lightbox.show {
    display: flex;
}

#home-social .qr-lightbox-panel {
    position: relative;
    width: min(92vw, 460px);
    padding: 34px 28px 28px;
    background: #fff;
    border-radius: 18px;
    text-align: center;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
}

#home-social .qr-lightbox-panel h3 {
    margin: 0 0 18px;
    color: #0F1E4D;
    font-size: 22px;
    line-height: 1.4;
}

#home-social .qr-lightbox-panel img {
    display: block;
    width: 100%;
    max-width: 330px;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    margin: 0 auto 16px;
    padding: 10px;
    background: #fff;
    border: 1px solid #dbe3f2;
    border-radius: 12px;
}

#home-social .qr-lightbox-panel p {
    margin: 0;
    color: #586482;
    font-size: 14px;
    line-height: 1.7;
}

#home-social .qr-lightbox-close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 38px;
    height: 38px;
    border: none;
    border-radius: 50%;
    background: #0F1E4D;
    color: #fff;
    font-size: 26px;
    line-height: 36px;
    cursor: pointer;
}

#home-social .qr-lightbox-close:hover {
    opacity: .86;
}

@media only screen and (max-width: 640px) {
    #home-social .qr-lightbox {
        padding: 16px;
    }
    #home-social .qr-lightbox-panel {
        padding: 30px 18px 22px;
    }
    #home-social .qr-lightbox-panel h3 {
        font-size: 19px;
    }
    #home-social .qr-lightbox-panel img {
        max-width: 280px;
    }
}

/* ===============================
   Custom: 日本語サイト向けフォント統一（レイアウト変更なし）
   2026-05-12
   =============================== */
html,
body {
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
}

input,
select,
textarea,
button {
    font-family: inherit;
}

.fa,
[class^="fa-"],
[class*=" fa-"] {
    font-family: FontAwesome !important;
}

/* ===============================
   Custom: スマホ専用・4連フローティングボタン
   2026-05-17
   PC版は変更なし。スマホ表示時のみ、参考画像と同じ色味で表示。
   電話：管理画面「会社情報 > 電話番号」 {pboot:companyphone}
   LINE：管理画面「SNS・QRコード／リンク設定 > LINEリンク」 {pboot:companysocial_line_url}
   =============================== */
#fixedContactBar.fixed-contact-bar,
#fixedContactBar.fixed-contact-bar * {
    box-sizing: border-box;
}

#fixedContactBar.fixed-contact-bar {
    display: none !important;
    visibility: hidden !important;
}

#fixedContactBar .fixed-contact-btn {
    color: #fff !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent;
}

#fixedContactBar svg {
    display: block !important;
    width: 26px !important;
    height: 26px !important;
    max-width: 26px !important;
    max-height: 26px !important;
    fill: currentColor !important;
}

@media only screen and (min-width: 769px) {
    body {
        padding-bottom: 0 !important;
    }
    #fixedContactBar,
    #fixedContactBar * {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
    }
}

@media only screen and (max-width: 768px) {
    body {
        padding-bottom: calc(116px + env(safe-area-inset-bottom)) !important;
    }

    #fixedContactBar.fixed-contact-bar {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        transform: none !important;
        z-index: 99999 !important;
        width: 100% !important;
        max-width: none !important;
        display: grid !important;
        visibility: visible !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 9px 8px calc(9px + env(safe-area-inset-bottom)) !important;
        background: rgba(255, 248, 239, .52) !important;
        background-image: linear-gradient(180deg, rgba(255,255,255,.26) 0%, rgba(255,255,255,.10) 100%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(145%) !important;
        backdrop-filter: blur(16px) saturate(145%) !important;
        border-top: 1px solid rgba(255, 255, 255, .58) !important;
        border-left: 0 !important;
        border-right: 0 !important;
        border-bottom: 0 !important;
        border-radius: 22px 22px 0 0 !important;
        overflow: hidden !important;
        box-shadow: 0 -8px 24px rgba(8, 18, 50, .18) !important;
        pointer-events: none !important;
    }

    #fixedContactBar .fixed-contact-btn {
        min-width: 0 !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
        padding: 5px 2px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        border-radius: 14px !important;
        border: 2px solid rgba(255, 255, 255, .84) !important;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .36), 0 3px 8px rgba(0, 0, 0, .14) !important;
        overflow: hidden !important;
        pointer-events: auto !important;
        transition: transform .15s ease, opacity .15s ease !important;
    }

    #fixedContactBar .fixed-contact-btn:active {
        transform: translateY(1px) scale(.98) !important;
        opacity: .9 !important;
    }

    /* 参考画像の色：オレンジ / ピンク / グリーン / パープル */
    #fixedContactBar .fixed-contact-tel {
        background: linear-gradient(135deg, #ff9c1a 0%, #f36b00 100%) !important;
    }

    #fixedContactBar .fixed-contact-mail {
        background: linear-gradient(135deg, #ff5d9d 0%, #ef2676 100%) !important;
    }

    #fixedContactBar .fixed-contact-line {
        background: linear-gradient(135deg, #1fce69 0%, #00a84f 100%) !important;
    }

    #fixedContactBar .fixed-contact-map {
        background: linear-gradient(135deg, #9d63ff 0%, #6f49d8 100%) !important;
    }

    #fixedContactBar .fixed-contact-icon {
        width: 34px !important;
        height: 34px !important;
        max-width: 34px !important;
        max-height: 34px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 34px !important;
        color: #fff !important;
        line-height: 1 !important;
        overflow: visible !important;
    }

    #fixedContactBar svg {
        width: 31px !important;
        height: 31px !important;
        max-width: 31px !important;
        max-height: 31px !important;
    }

    #fixedContactBar .fixed-contact-icon-line svg {
        width: 34px !important;
        height: 34px !important;
        max-width: 34px !important;
        max-height: 34px !important;
    }

    #fixedContactBar .fixed-contact-label {
        display: block !important;
        width: 100% !important;
        color: #fff !important;
        font-size: 15px !important;
        font-weight: 800 !important;
        line-height: 1.06 !important;
        letter-spacing: 0 !important;
        text-align: center !important;
        white-space: nowrap !important;
        text-shadow: 0 1px 1px rgba(0, 0, 0, .18) !important;
    }
}

@media only screen and (max-width: 374px) {
    body {
        padding-bottom: calc(98px + env(safe-area-inset-bottom)) !important;
    }
    #fixedContactBar.fixed-contact-bar {
        gap: 5px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        border-radius: 18px 18px 0 0 !important;
    }
    #fixedContactBar .fixed-contact-btn {
        aspect-ratio: 1 / 1 !important;
        padding-left: 1px !important;
        padding-right: 1px !important;
        border-radius: 10px !important;
        gap: 3px !important;
    }
    #fixedContactBar .fixed-contact-icon {
        width: 26px !important;
        height: 26px !important;
        flex-basis: 26px !important;
    }
    #fixedContactBar svg {
        width: 23px !important;
        height: 23px !important;
        max-width: 23px !important;
        max-height: 23px !important;
    }
    #fixedContactBar .fixed-contact-label {
        font-size: 12px !important;
    }
}

@media print {
    #fixedContactBar.fixed-contact-bar {
        display: none !important;
    }
    body {
        padding-bottom: 0 !important;
    }
}


/* SEO accessibility heading: keeps a valid H1 without changing the visible design */
.seo-page-title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
