/* Shared styles for page-for z-search templates */
/*.検索系のデフォルトスタイル */
.selected-categories {
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    padding: 10px;
    padding-top: 1.5rem;
    z-index: 9999999;
    display: none;
    text-align: center;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.selected-categories span {
    display: inline-block;
    padding: .5rem 1.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #174f9e;
    color: #fff;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    margin: .5rem .5rem .5rem 0;
    font-size: .75rem;
}

.selected-categories span:before {
    content: "\e5cd";
    font-family: "Material Icons";
    color: #fff;
    display: inline-block;
    position: relative;
    top: 2px;
    width: 1rem;
    font-size: 12px;
    font-weight: bold;
    margin-right: 4px;
}

.selected-categories span:hover {
    background-color: #123d7b;
}

.selected-categories .addfilter {
    display: inline-block;
    padding: .5rem 1.5rem;
    border: 1px solid #fff;
    border-radius: 5px;
    background-color: #fff;
    color: #666;
    text-decoration: underline;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    margin: .5rem .5rem .5rem 0;
    font-size: .75rem;
}

.selected-categories .addfilter:hover {
    background-color: #174f9e;
    color: #fff;
}

.sibobot {
    max-width: calc(100% - 2rem);
}

.sfiltering a.kensakubot,
.sfiltering a.kensakubotw {
    color: #fff !important;
    background: #174f9e !important;
    padding: .3rem !important;
    display: inline-block;
    text-align: center !important;
    font-size: .8rem !important;
    font-weight: 700 !important;
    transition: .5s all !important;
    margin: 1rem 0.5rem 0 0 !important;
    white-space: normal !important;
    line-height: 1.45rem;
    border: .5px solid #174f9e;
    min-width: 120px;
    text-decoration: none;
    letter-spacing: 0.005rem;
    border-radius: 1rem;
}

.sfiltering a.allclear {
    color: #174f9e !important;
    border: .5px solid #174f9e;
    padding: .3rem 1.5rem !important;
    display: inline-block;
    text-align: center !important;
    font-size: .75rem !important;
    font-weight: normal !important;
    transition: .5s all !important;
    margin: 1rem 0 !important;
    white-space: normal !important;
    line-height: 1.45rem;
    border-radius: 1rem;
    text-decoration: none;
}

.dlcontent {
    font-size: .88rem;
    padding: .5rem;
    opacity: .45;
    line-height: 1.4rem;
}

.result-meta ul {
    padding: 0;
    margin: 0;
}

.result-meta ul li {
    display: inline-block;
    font-size: x-small;
    color: #666;
}

.result-meta ul li:before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background: url(https://kikusui.co.jp/kiku/wp-content/uploads/2025/03/tagging.png) no-repeat;
    background-size: cover;
    margin: 0 .25rem 0 .5rem;
    position: relative;
    top: 1px;
}

.result-meta span.caten {
    font-size: 11px;
    margin: 0 0 0 .5rem !important;
}

h3.result-title {
    margin: .5rem 0 0 .5rem !important;
    font-size: 1.2rem !important;
    font-weight: bold !important;
}

/*
 * シリーズページ/製品ページの資料タブ内の個別アイテムタイトルはh4
 * （H2資料→H3見出し→H3個別、というフラットな見出し階層を避けるため）。
 * 他のz-search系ページ（h3.result-title、このファイルを共用）には
 * 影響しないよう別セレクタとして追加。値はh3.result-titleと同一にし、
 * font.cssの.site-main h4（色/余白/下線）を上書きして見た目を維持する。
 *
 * 英語・ドイツ語ページでは:lang(en) h4/:lang(de) h4（font-weight:500
 * !important、IBM Plex Sans指定）が別途あり、h4.result-titleと詳細度が
 * 同点（クラス1+要素1）のため読み込み順で負けて太字が効かなくなっていた
 * （ユーザーがDevToolsで発見）。親の.result-itemを足して詳細度を上げ、
 * 読み込み順に関係なく確実に勝つようにする。
 */
.result-item h4.result-title {
    margin: .5rem 0 0 .5rem !important;
    font-size: 1.2rem !important;
    font-weight: bold !important;
    line-height: 2rem !important;
    color: var(--pxb-heading-text, #333) !important;
}

.result-item h4.result-title:after {
    content: none !important;
    display: none !important;
}

p.rowurl {
    padding: 0 !important;
    margin: 0 0 .2rem .5rem !important;
    font-size: 11px !important;
    opacity: .85;
    color: cadetblue !important;
    width: calc(100% - 1.5rem);
    overflow: hidden;
    text-overflow: ellipsis;
}

.tag-container {
    position: relative;
}

.tag-list {
    margin: 0;
    padding: 0 0 0 20px;
    list-style-type: disc;
    max-height: 3em;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.tag-list.expanded {
    max-height: none;
}

.toggle-tags {
    display: none;
    background: none;
    border: 1px solid #666;
    color: #666;
    cursor: pointer;
    padding: .1rem .5rem;
    font-size: 10px;
    border-radius: 1rem;
    margin: .5rem 0 0 .5rem;
}

.toggle-tags.visible {
    display: inline;
}

.toggle-tags:hover {
    background: #666;
    color: #fff;
    text-decoration: none;
}

.result-item {
    margin: 0 .5rem;
    border-bottom: dashed #ccc .75px;
    padding: 1.8rem 1.8rem 1.8rem 1.5rem;
    transition: all .5s;
}

input#searchInput {
    padding: 1rem;
    width: calc(100% - 4rem);
    margin: 0 0 1rem 0;
    border-radius: 10px;
    border: 1px solid #999;
    font-size: 1.25rem;
    text-transform: uppercase;
    font-family: sans-serif;
    font-weight: 800;
    letter-spacing: .0025rem;
}

#categoryFilter input[type="checkbox"] {
    display: none;
}

#categoryFilter label {
    display: inline-block;
    padding: .5rem 1.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    color: #666;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    margin: .25rem .5rem .5rem 0;
    font-size: .8rem;
}

#categoryFilter label:has(input[type="checkbox"]:checked) {
    background-color: #174f9e;
    color: #fff;
}

#categoryFilter label:hover {
    background-color: #174f9e;
    color: #fff;
}

#categoryFilter label:before {
    content: "\ef4a";
    color: #454545;
    font-family: "Material Icons";
    display: inline-block;
    position: relative;
    top: 1px;
    width: 1rem;
    font-size: .8rem;
}

#categoryFilter label:hover:before {
    color: crimson;
}

#categoryFilter label:has(input[type="checkbox"]:checked):before {
    color: #fff;
}

.site-main p.sresults {
    font-size: 10px;
    opacity: .5;
    text-align: right;
    margin: 2rem;
}

.inputp {
    display: none;
}

div#InputFilter,
div#categoryFilter {
    padding: 0 1rem !important;
}

#categoryFilter h2,
#InputFilter h2 {
    font-size: 1rem !important;
    opacity: .4;
    margin: 0 !important;
}

.sfiltering {
    border: 1px solid #fff;
    border-radius: 1rem;
    padding: 1.5rem 1rem;
    max-width: 1980px;
    margin: 1rem auto;
}

div#results {
    max-width: 1980px;
    margin: 1rem auto;
    padding-bottom: 3rem;
    border-top: .5px #ccc dashed;
}

.pagination span.current,
.pagination a {
    padding: 1rem;
    text-decoration: none;
}

.result-item:hover {
    background: #f8f8f8;
}

div#agreement {
    background: #f8f8f8;
    padding: 1rem 2rem;
    border-radius: 1rem;
}

.result-img {
    border: .5px solid #ccc;
    padding: 1rem;
    max-width: calc(100% - 2rem);
}

.manuresult-img {
    border: none;
    padding: 0;
    max-width: calc(100% - 1rem);
    display: block;
    margin: 0 auto;
}

.col-1_sm-hidden {
    padding: .5rem !important;
}

div#agreement ul,
div#agreement p {
    padding: 0;
    margin: 0;
}

.pagination {
    max-width: 800px;
    margin: 3rem auto;
    text-align: center;
}

div#agreement li,
div#agreement p {
    font-size: .8rem !important;
    display: inline;
    color: #999 !important;
}

div#agreement li:before {
    content: "●";
    display: inline-block;
    margin-right: .3rem;
}

#categoryFilter .category-container {
    position: relative;
}



.cad-feedback {
    text-align: center;
    font-size: .7rem;
    color: #444;
    padding: 5rem 0;
}

.cad-feedback-icon {
    font-size: 1.5rem;
    vertical-align: middle;
    top: -2px;
    position: relative;
    display: inline-block;
}

.catalog-feedback {
    font-size: .9rem;
    text-align: center;
}

.manual-feedback {
    text-align: center;
    font-size: .7rem;
    color: #444;
    padding: 5rem 0;
}

.manual-feedback-icon {
    font-size: 1.5rem;
    vertical-align: middle;
    top: -2px;
    position: relative;
    display: inline-block;
}

.siteall-feedback {
    font-size: .9rem;
    text-align: center;
}

.siteall-no-results {
    text-align: center;
    font-size: .7rem;
    color: #444;
    padding: 5rem 0;
}

.siteall-no-results-icon {
    font-size: 1.5rem;
    vertical-align: middle;
    top: -2px;
    position: relative;
    display: inline-block;
}

.climg img {
    max-width: 18px;
    display: inline-block;
    vertical-align: middle;
    margin-right: .5rem;
    margin-top: -1px;
}

.kensakulist li {
    display: inline-block;
    margin-right: 1rem;
}

ul.kensakulist {
    position: absolute;
    right: 0;
    margin-top: 5.5rem;
    z-index: 9;
}

ul.kensakulist a {
    font-size: .7rem;
    display: block;
    padding: .5rem 1rem;
    border: 0 solid #ccc;
    border-radius: 5rem;
    text-decoration: none;
    color: #888;
    transition: all .42s;
}

ul.kensakulist a:hover {
    background: #174f9e;
    color: #fff;
}

@media screen and (max-width: 1024px) {
    ul.kensakulist {
        display: none !important;
    }
}

.siteall-search-nav {
    position: relative;
}

input#selectedSearchInput {
    padding: 10px;
    border-radius: 5px;
    border: .5px solid #777;
    min-width: 140px;
}

img.manuresult-img {
    object-fit: cover;
    max-height: 200px;
    max-width: 200px;
    min-height: 200px;
    object-position: top left;
}

img.manuresult-img.iconchan {
    width: 48px !important;
    max-width: 48px;
    max-height: 48px !important;
    height: auto !important;
    object-fit: contain !important;
    min-height: 0 !important;
}

a.siteallimga.iconthumb {
    min-width: 48px;
    width: 48px;
}

.result-item:hover img.siteallimg.manuresult-img.iconchan {
    transform: none !important;
}

body.page-template-page-for-siteall-wpmlfix #categoryFilter label,
body.page-template-page-for-siteall-wpmlfix-php #categoryFilter label {
    padding: .5rem 1.005rem;
    margin: .25rem .25rem .25rem 0;
}

body.page-template-page-for-siteall-wpmlfix .tag-list.expanded,
body.page-template-page-for-siteall-wpmlfix-php .tag-list.expanded {
    min-height: 180px;
}

body.page-template-page-for-siteall-wpmlfix #categoryFilter #categoryList,
body.page-template-page-for-siteall-wpmlfix-php #categoryFilter #categoryList {
    padding-bottom: 1.8rem;
}

body.page-template-page-for-siteall-wpmlfix #categoryFilter #categoryList.expanded,
body.page-template-page-for-siteall-wpmlfix-php #categoryFilter #categoryList.expanded {
    min-height: 180px;
}

body.page-template-page-for-catalog-wpmlfix .selected-categories,
body.page-template-page-for-catalog-wpmlfix-php .selected-categories {
    padding-top: 10px;
    z-index: 9999999999;
}

@media screen and (max-width: 768px) {
    img.manuresult-img {
        max-height: none;
        max-width: 100%;
        min-height: 0;
        width: 100%;
        object-fit: cover;
        object-position: top center;
    }
}
