@charset "UTF-8";
/* -------------------------------------------------------------
    etc/designs/nttcom/hq/jp/sitesearch/css/sitesearch.css
    japanese
------------------------------------------------------------- */

main {
    max-width: 1240px;
}

/* all */
.ndb-search {
    border-top: 1px solid #dcdcdc;
    margin: 50px 0 0;
    padding: 50px 0 0;
    display: grid;
    grid-template-columns: 245px 1fr;
    grid-template-rows: 1fr;
    grid-column-gap: 10px;
}

/* 取り消し線 非表示 */
._cp_component ._attributegroup ._attributes ._attribute._disable{
    text-decoration: none !important;
    cursor: default;
}

/* -------------- left column -------------- */

._cp_component ._attributegroup {
    padding: 0 !important;
    margin: 0 !important;
}

.ndb-search-tool-block {
    width: 100%;
    margin: 0 0 15px;
    padding: 15px 10px 5px;
    background-color: #eee;
}

._cp_component ._attributegroup ._attributes ._attribute input {
    width: 15px !important;
    height: 15px !important;
    margin-top: 0;
}

._cp_component ._attributegroup ._group {
    font-size: 1em !important;
    padding: 0 5px;
    margin-bottom: 0.8em 0;
}

._cp_component ._attributegroup ._attributes ._attribute ._label {
    line-height: 1.4em;
    white-space: normal;
    overflow-wrap: break-word;
    /*color: #000;*/
}

.ndb-search-tool .ndb-search-inner {
    margin: 0;
    padding: 0;
}

.ndb-search-tool ._cp_component ._attributegroup ._attributes ._attribute {
    display: block;
    white-space: nowrap;
    margin: 0 0 5px;
    font-size: 0.8em !important;
}

.ndb-search-tool ._attributegroup ._attributes ._attribute:first-child {
    margin-top: 10px;
}

.ndb-search-tool ._cp_component ._attributegroup ._attributes ._select {
    background-color: #dfdfdf;
    border-radius: 10px;
}

.ndb-search-tool .ndb-search-tool-block form label {
    display: flex;
    align-items: center;
    padding: 5px 0 5px;
    cursor: pointer;
}

.ndb-search-tool .ndb-search-tool-block form label:hover {
    background-color: #d7d7d7;
    border-radius: 10px;
}

.ndb-search-tool .ndb-search-tool-block form ._disable label,
.ndb-search-tool .ndb-search-tool-block form ._disable label:hover{
    background: none;
    cursor: default;
}



/* left 表示件数 */
.ndb-search-tool ._cp_component ._countselector {
    display: flex;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin: 0;
    padding: 0;
}

.ndb-search-tool ._cp_component ._countselector ._label {
    font-size: 1em !important;
    padding: 0 5px;
    margin: 0 0 10px;
    width: 69px;
    overflow: hidden;
}

.ndb-search-tool ._cp_component ._countselector ._count {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 5px 0 !important;
    margin: 0 0 5px !important;
}

.ndb-search-tool ._cp_component ._countselector ._current {
    background-color: #d7d7d7;
    border-radius: 10px;
}

.ndb-search-tool ._cp_component ._countselector input {
    width: 15px;
    height: 15px;
    margin-top: 0;
}

.ndb-search-tool ._cp_component ._countselector label {
    font-size: 0.8em !important;
    flex-grow: 1;
    cursor: pointer;
}

.ndb-search-tool ._cp_component ._countselector ._count:hover {
    background-color: #d7d7d7;
    border-radius: 10px;
}

/* -------------- right column -------------- */
.ndb-search-right {
    padding: 0 0 0 20px;
}

.ndb-search-right .target-no ._cp_component ._searchstatusfull {
    padding: 0;
    margin: 0 0 8px;
}

.ndb-search-right .target-no ._cp_component ._searchstatusfull ._status {
    font-size: 1em;
    font-weight: bold;
    text-align: right;
}

/* 検索キーワード入力欄 */
.ndb-search-right .ndb-search-form {
    height: 40px;
    border: 1px solid #333;
    border-radius: 10px;
    margin: 0 0 20px;
}

.ndb-search-right .ndb-search-form .form {
    display: flex;
    height: 100%;
    position: relative;
}

.ndb-search-right .ndb-search-form input[type="search"] {
    width: 100%;
    height: 100%;
    flex-grow: 1;
    flex-shrink: 1;
    min-width: 0;
    border: none;
    padding: 0 15px;
    border-radius: 10px 0 0 10px;
    /* outline: none; */
}

.ndb-search-right .ndb-search-form input[type="submit"] {
    background-image: url(/content/dam/nttcom/cmn/img/icn-search.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: unset;
    background-size: 25px;
    cursor: pointer;
    border: none;
    font-size: 0;
    width: 40px;
}


/* サジェスト */
.ndb-search-right .ndb-search-form .poplink {
    top: 35px !important;
}

.ndb-search-right div.poplink.pcia>div.poplink_suggest>div.word {
    font-size: 0.9em;
    line-height: 1.5em;
}

div.poplink>div.close_button {
    bottom: -20px !important;
    right: -20px !important;
    left: auto !important;
    top: auto !important;
}

div.poplink.spia>div.poplink_suggest {
    background-color: #ffe8e8 !important;
    border: 2px solid #000 !important;
    overflow-y: scroll !important;
    overflow-x: hidden;
}

.ndb-search-form form .poplink .close_button img {
    width: 25px !important;
    height: 25px !important;
}

/* 任意のキーワード */
.ndb-search-right .ndb-search-relation-link {
    display: flex;
    /* justify-content: center; */
    margin: 0 0 45px;
    padding: 0;
}

.ndb-search-right .ndb-search-relation-link ._label {
    position: relative;
    width: 165px;
    padding: 0 0 0 15px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1em;
    display: flex;
    align-items: center;
}

.ndb-search-right .ndb-search-relation-link ._label::before {
    /* position: absolute;
    top: 50%;
    left: 0;
     */
    font-family: 'Material Icons';
    content: "local_fire_department";
    color: #CC0033;
    font-size: 20px;
}

.ndb-search-right .ndb-search-relation-link ._keywords {
    display: flex;
    flex-wrap: wrap;
    padding: 0 10px;
    gap: 8px;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword {
    margin: 0;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword ._rank {
    display: none;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword ._word {
    position: relative;
    border: 1px solid #333;
    border-radius: 40px;
    overflow: hidden;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword ._word:hover {
    border: 1px solid #CC0033;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword ._word a {
    display: inline-block;
    padding: 3px 18px;
    color: #333;
    font-size: 12px;
    text-decoration: none;
}

.ndb-search-right .ndb-search-relation-link ._keywords ._keyword ._word a:hover {
    color: #CC0033;
}

/* 人気のキーワード（非表示） */
.ndb-search-right .ndb-search_popular-words {
    display: none;
    margin: 0 0 30px;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking {
    display: flex;
    /* justify-content: center; */
    margin: 0;
    padding: 0;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._label {
    position: relative;
    padding: 0 0 0 23px;
    font-size: 14px;
    line-height: 1em;
    display: flex;
    align-items: center;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._label::before {
    position: absolute;
    top: 0;
    left: 0;
    font-family: 'Material Icons';
    content: "local_fire_department";
    color: #CC0033;
    font-size: 20px;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords {
    display: flex;
    flex-wrap: wrap;
    padding: 0 10px;
    gap: 10px;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword {
    margin: 0 !important;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._rank {
    display: none;
}

.ndb-search-right .ndb-search_popular-words .keyword-ranking ._keywordranking ._keywords ._keyword {
    margin: 0 !important;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word {
    position: relative;
    border: 1px solid #333;
    border-radius: 40px;
    overflow: hidden;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word:hover {
    border: 1px solid #CC0033;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word a {
    display: inline-block;
    padding: 3px 18px;
    color: #333;
    font-size: 12px;
    text-decoration: none;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word a:hover {
    color: #CC0033;
}

.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word a:focus,
.ndb-search-right .ndb-search_popular-words ._keywordranking ._keywords ._keyword ._word a:active {
    color: #fff;
    background-color: #CC0033;
}

@media (width < 769px) {
    .ndb-search-right .ndb-search_popular-words ._keywordranking {
        flex-direction: column;
        gap: 12px;
    }
}

@media (width < 480px) {
    .ndb-search-right .ndb-search_popular-words .keyword-ranking {
        margin: 0 0 20px;
    }
}

/* SP 検索範囲 */
.sub-search-range-sp {
    margin: 0 0 20px;
    padding: 10px;
    font-size: 0.9em;
    background-color: #eee;
}

.sub-search-range-sp ._cp_component ._attributegroup ._attributes ._attribute {
    font-size: 0.9em;
    margin: 0;
    padding: 10px 0;
}

.sub-search-range-sp ._cp_component ._attributegroup ._attributes ._attribute:first-child {
    margin-top: 10px;
}

.sub-search-range-sp ._cp_component ._attributegroup ._attributes ._select {
    background-color: #dfdfdf;
    border-radius: 10px;
}



/* SP 検索結果数、表示対象・件数 */
.sub-search-element-sp {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 30px;
    padding: 7px;
    font-size: 14px;
    background-color: #ececec;
}

.sub-search-element-sp .target-no,
.sub-search-element-sp .target-file,
.sub-search-element-sp .display-no {
    font-size: 14px !important;
}

.sub-search-element-sp ._cp_component ._attributegroup ._group ._count,
.sub-search-element-sp ._attributes ._count {
    display: none;
}

.sub-search-element-sp .target-no ._status {
    font-weight: bold;
}

.sub-search-element-sp ._cp_component ._attributegroup ._attributes ._attribute:first-child ._label {
    display: inline-block;
    white-space: nowrap;
    line-height: 1em;
    letter-spacing: 1px;
    width: 3.2em;
    overflow: hidden;
    vertical-align: text-bottom;
    cursor: pointer;
}

.sub-search-element-sp .target-file ._cp_component ._attributegroup ._attributes ._attribute {
    margin: 0;
    padding: 3px 3px;
    cursor: pointer;
}

.sub-search-element-sp ._attributes {
    background-color: #fff;
    padding: 5px;
}

/* SP 表示対象 */
.sub-search-range-sp .target-file ._cp_component ._attributegroup ._attributes ._attribute ._label {
    font-size: 0.8em;
}

.sub-search-range-sp .target-file ._cp_component ._attributegroup ._attributes ._select ._label {
    color: #fff !important;
}

.sub-search-range-sp .target-file ._cp_component ._attributegroup ._attributes label:hover {
    background-color: #d7d7d7;
}

.sub-search-element-sp .target-file ._attributes form {
    display: flex;
    gap: 5px;
}

.sub-search-element-sp .target-file ._cp_component ._attributegroup {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    gap: 7px;
}


.sub-search-element-sp .display-no input[type="radio"],
.sub-search-element-sp .target-file input[type="radio"] {
    position: absolute !important;
    opacity: 0;
    cursor: pointer;
}

.sub-search-element-sp .target-file ._group,
.sub-search-element-sp .target-file ._cp_component ._attributegroup ._attributes ._attribute label {
    font-size: 14px !important;
}

.sub-search-element-sp .target-file ._cp_component ._attributegroup ._attributes ._select {
    background-color: #333;
    color: #fff !important;
}

.sub-search-element-sp .target-file ._cp_component ._attributegroup ._attributes ._attribute:focus,
.sub-search-element-sp .target-file ._cp_component ._attributegroup ._attributes ._attribute:not(._select):hover {
    background: #eee;
    color: #CC0033;
}

/* SP 表示件数 */
.sub-search-element-sp .target-file ._cp_component ._countselector {
    margin: 0 !important;
    padding: 0 !important;
}

.sub-search-element-sp .display-no ._cp_component ._countselector {
    width: fit-content;
    background-color: #fff;
    margin: 0;
    padding: 5px;
    position: relative;
    gap: 5px;
}

.sub-search-element-sp ._cp_component ._countselector ._label {
    position: absolute;
    left: -70px;
    width: 56px;
    overflow: hidden;
}

.sub-search-element-sp ._cp_component ._countselector ._count {
    padding: 5px 3px !important;
    cursor: pointer;
}

.sub-search-element-sp ._cp_component ._countselector ._count a {
    color: #333;
}

.sub-search-element-sp ._cp_component ._countselector ._count:not(._current) a:hover {
    background: #eee;
    color: #CC0033;
}

.sub-search-element-sp .display-no ._cp_component ._countselector ._current {
    background-color: #333;
    color: #fff;
    padding: 5px;
}


/* おススメリンク・関連の高いサイト */
.ndb-search-right ._recommendlinks._recommendlinks_type2 {
    margin: 0 0 3em;
    border: none;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._label {
    position: static !important;
    right: auto !important;
    bottom: auto !important;
    width: 100%;
    background-color: #FBFFD4;
    color: #000;
    font-size: 13px;
    font-weight: bold;
    padding: 10px 12px !important;
    border-radius: 6px 6px 0 0;
    line-height: 1;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links {
    display: flex;
    flex-direction: column;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link {
    width: 100% !important;
    margin: 0;
    padding-top: 0;
    background: #FBFFD4;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link:first-child {
    padding-top: 16px;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap {
    display: flex;
    gap: 15px;
    margin-bottom: 10px;
    padding-top: 15px;
    border-top: 1px solid #777;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link:first-child ._wrap {
    padding-top: 0;
    border: none;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._title,
.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_title {
    margin: 0 0 10px !important;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._title a,
.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_title a {
    font-size: 1.2em;
    line-height: 1.3em;
    font-weight: bold !important;
    text-decoration: underline;
}

.ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_summary {
    margin: 0 0 10px !important;
    font-size: 14px;
    line-height: 1.5em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 0;
}

._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_url {
    justify-content: flex-start !important;
}

._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_url a {
    font-size: 14px !important;
    color: #CC0033 !important;
    overflow-wrap: anywhere;
}

._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_url a:hover {
    text-decoration: underline;
}

/* 0325 暫定 */
.ndb-search-right .recommend-area ._linkdefaultgroup {
    display: flex;
    gap: 15px;
    margin-bottom: 10px;
}

.ndb-search-right .recommend-area ._recommendlinks ._links ._link ._wrap ._link_image img {
    max-width: 120px;
    border: 1px solid #ccc;
}


/* 検索結果 */
.ndb-search-right ._cp_component ._items>._item {
    border-bottom: 1px solid #333;
    padding-bottom: 1em !important;
    margin-bottom: 3em !important;
}

.ndb-search-right ._cp_component ._searchresults ._items ._item ._wrap ._layoutgroup2 ._layoutgroup2_1 {
    display: flex;
    flex-direction: row !important;
    gap: 10px;
}

._cp_component ._items ._item ._wrap ._filetype._filetype_pdf {
    width: 18px !important;
    height: 18px !important;
    background-image: url(/content/dam/nttcom/cmn/img/adobe_pdf_file_icon_16x16.png) !important;
    text-indent: -99999px;
    margin: 4px 0 0;
    padding: 0;
    flex-shrink: 0;
}

._cp_component ._items>._item ._wrap {
    display: flex;
}

._cp_component ._items>._item ._wrap *[class^=_layoutgroup] {
    flex-direction: column !important;
}

._cp_component ._items>._item ._wrap ._thumbnail {
    width: 120px;
    height: auto;
}

._cp_component ._items ._item ._wrap>div,
._cp_component ._items ._item ._wrap ._thumbnail {
    padding: 0 !important;
}

._cp_component ._items ._item ._wrap ._thumbnail a img {
    border: 1px solid #999;
    vertical-align: top;
}

._cp_component ._items ._item ._wrap ._title {
    margin: 0 0 10px !important;
}

._cp_component ._items ._item ._wrap ._title a {
    font-size: 1em;
    line-height: 1.3em;
    font-weight: bold !important;
    text-decoration: underline;
}

._cp_component ._items ._item ._wrap ._snippet {
    margin: 0 0 10px !important;
    font-size: 14px;
    line-height: 1.5em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    min-height: 0;
    overflow-wrap: anywhere;
}

._cp_component ._items ._item ._wrap ._link a {
    font-size: 14px;
    word-break: break-all;
    color: #CC0033;
}

._cp_component ._items ._item ._wrap ._link a:hover {
    text-decoration: underline;
}

/* ページャー*/
.pager-cmn ._pagenator {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 14px;
    font-weight: bold;
    gap: 30px;
}

.pager-cmn ._pagenator ._disable {
    visibility: hidden;
}

.pager-cmn ._pagenator ._first {
    display: none !important;
}

.pager-cmn ._pagenator ._prev a,
.pager-cmn ._pagenator ._next a {
    background-color: #fff !important;
    color: initial !important;
    border: none !important;
}

.pager-cmn ._pagenator ._nav {
    flex: 0;
}

.pager-cmn ._cp_component ._pagenator ._nav._page {
    padding: 0px;
    margin: 0;
    flex: 0;
}

._cp_component ._pagenator ._nav._page._current {
    padding: 10px;
}

.pager-cmn ._pagenator ._current {
    background: #333;
    color: #fff;
    padding: 10px 20px;
}

.pager-cmn ._pagenator ._nav a {
    color: #000;
    padding: 10px !important;
    margin: 0;
    background-color: #f4f4f4;
}

.pager-cmn ._pagenator ._nav a:hover {
    background-color: #eee;
    color: #CC0033;
}

.pager-bottom {
    margin-top: 30px;
}


/* バナー */
.banner_bottom {
    max-width: 720px;
    margin: 40px auto 0;
    width: fit-content;
}


@media (width < 769px) {
    h1 {
        font-size: 2.5em;
    }

    .ndb-search-relation-link {
        margin: 0 0 20px;
        flex-direction: column;
        gap: 12px;
    }

    .ndb-search {
        grid-template-columns: 200px 1fr;
    }

    .ndb-search-right {
        padding: 0 !important;
    }

    .ndb-search-right .ndb-search-relation-link ._keywords{
        gap:10px;
    }

    .ndb-search-right ._recommendlinks._recommendlinks_type2 ._links ._link ._wrap ._link_url,
    .ndb-search-right ._cp_component ._searchresults ._items ._item ._wrap ._link {
        display: none;
    }

    .ndb-search-right .ndb-search-relation-link ._label{
        padding: 0 0 0 5px;
    }

}

/* PC TAB 非表示 */
@media (width > 480px) {

    .sub-search-range-sp,
    .sub-search-element-sp {
        display: none;
    }
}

@media (width < 481px) {
    .ndb-search {
        margin: 20px 0 0;
        padding: 30px 0 0;
        grid-template-columns: 1fr;
    }

    .ndb-search-tool {
        display: none;
    }

    .relation-link ._keywords ._keyword ._word a {
        font-size: 13px;
    }

    .pager-cmn ._pagenator {
        justify-content: space-between;
        gap: 0;
        padding: 0 !important;
    }

    .pager-cmn ._pagenator ._nav._prev {
        text-align: left;
    }

    .pager-cmn ._pagenator ._nav._next {
        text-align: right;
    }

    .pager-cmn ._cp_component ._pagenator ._page ._current,
    .pager-cmn ._cp_component ._pagenator ._page {
        display: none !important;
    }

    ._cp_component ._searchresults ._items>._item ._wrap ._layoutgroup1 {
        display: none;
    }

    ._cp_component ._items>._item ._wrap *[class^=_] {
        padding: 0 !important;
    }

    /* sp */
    .sub-search-element-sp {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .sub-search-element-sp .display-no {
        margin-left: 74px;
    }
}

/* Lock left column scroll */
.ndb-search-tool {
    height: 100%;
}
.ndb-search-tool .ndb-search-inner {
    margin: 0;
    padding: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 150px;
    z-index: 10;
}