@charset "utf-8";

/* ----- 英和辞典ページ ----- */


/* --- タブ部分 --- */

.list-tab-a .NR-now {
    color: #9c4836;
}


/* --- 共通コンテンツ部分 --- */

.contents-wrap-b-in {
    margin-top: 15px;
    border-top: none;
}

.header-hinshi {
    margin-top: 0;
    line-height: 1.4;
    padding: 0 15px;
}

.list-data-a:empty {
    padding: 0;
}

.list-data-b {
    margin-top: 18px;
    padding: 0 18px 18px;
}

.list-data-b > li {
    margin-top: 25px;
}

.list-data-b > li:first-child {
    margin: 0;
}

.list-data-b-in {
    margin: 10px 0 0 0;
}

.in-ttl-b {
    position: relative;
    text-indent: 0;
}

.list-data-b-in .text-b {
    font-size: 15px;
}

.list-data-b.list-meanings > li {
    padding-left: 21px;
}

.list-data-b.list-meanings .in-ttl-b > strong:first-child {
    position: absolute;
    left: -3px;
    top: 1px;
    font-size: 15px;
    line-height: 1.4;
    color: #6f2718;
}

.list-data-b.list-idioms {
    padding-bottom: 0;
}

.list-data-b.list-idioms .text-indent {
    padding: 0;
}

.list-data-b.list-idioms > li > .list-data-b-in {
    padding-left: 21px;
}


/* 品詞のタイトル */

.header-hinshi {
    padding: 15px;
    border-top: 2px solid #9c4836;
    background: #f9f7f2;
    color: #6f2718;
    font-size: 16px;
}


/* 品詞のタイトルに含まれるルビ */
.header-hinshi .rh_ruby {
    font-size: 70%;
}


/* 品詞の意味のタイトル */

.header-hinshi-meaning {
    position: relative;
    padding: 15px;
    border: solid #c1b4a8;
    border-width: 1px 0;
    background: #f2efe6;
    color: #6f2718;
    font-size: 16px;
}


/* 品詞の意味のタイトル */

.header-hinshi-meaning:after {
    content: "";
    position: absolute;
    display: block;
    width: 30px;
    height: 30px;
    top: 5px;
    right: 8px;
    line-height: 30px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #c1b4a8;
    border-radius: 3px;
    color: #6f2718;
    background: url('../img/minus.png') no-repeat center;
    background-size: 12px 2px;
    background-color: #ebe6d6;
}

.header-hinshi-meaning.collapsed:after {
    background-image: url('../img/plus.png');
    background-size: 12px 12px;
}


/* 慣用句のタイトル */

.header-idiom {
    margin: 15px;
    border-top: 2px solid #9c4836;
    background: #f2efe6;
    color: #6f2718;
}


/* --- 例文 --- */

.examples {
    margin-top: 13px;
    padding: 13px;
    background: #f8f6ef;
    border-radius: 3px;
}

.examples:before {
    content: "例文";
    display: block;
    font-size: 14px;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic Pro';
    color: #9c4836;
}

.examples .list-data-b-in {
    margin: 15px 0 0;
}


/* 
    4個目以降を隠す。
    JavaScript 無効時に見えなくなるのを防ぐため、body に .NR-js-ready が付与された場合のみ隠す
  */

body.js-ready .examples .list-data-b-in:nth-child(N+4) {
    display: none;
}

body.js-ready .examples.expanded .list-data-b-in:nth-child(N+4) {
    display: block;
}

.examples li {
    padding: 0;
    font-size: 14px;
    line-height: 1.4;
}

.examples .NR-more-button-wrapper {
    height: 34px;
    margin-top: 10px;
}

.examples .NR-more-button {
    float: right;
    position: relative;
    width: 78px;
    height: 34px;
    border-radius: 3px;
    border: 1px solid #c1b4a8;
    background: #faf9f4;
    color: #a89788;
}

.examples .NR-more-button:before {
    content: "もっと表示";
    display: block;
    width: 100%;
    line-height: 34px;
    font-size: 11px;
    font-weight: bold;
    text-align: center;
}

.examples.expanded .NR-more-button-wrapper {
    display: none;
}

.list-data-b-in .text-en:first-child {
    margin-top: 15px;
}

.list-data-b-in .text-jp {
    margin-top: 5px;
}


/* --- 慣用句 要素:5; --- */

.header-idiom {
    margin: 15px 8px;
    padding: 8px;
    border: 1px solid #6f2718;
    font-size: 14px;
    font-weight: bold;
    color: #6f2718;
    background: #f8f6ef;
}


/* 類語 */

.list-data-d.list-synonym {
    margin: 15px 0 15px 21px;
    padding: 8px;
}

.list-data-d.list-synonym > .text {
    padding: 0;
}

.list-data-d.list-synonym .text-b {
    font-size: 15px;
}


/* 出典 */

.sup-a.cite {
    font-size: 12px;
}

.sup-a.cite > a{
padding-right: 8px;
}

/* --- 作品名,語源 要素:7,8 --- */

.list-data-d {
    margin: 15px 15px 25px;
    padding: 8px;
    border: 1px solid #c1b4a8;
    background-color: #fff;
}

.list-data-d .in-ttl-c {
    margin-bottom: 5px;
    padding: 0;
    color: #6f2718;
}

.list-data-d.list-titles dd {
    margin: 0 0 10px;
}

.list-data-d.list-titles .text,
.list-data-d.list-origin .text-b {
    padding: 0;
    line-height: 1.4;
    font-size: 15px;
}


/* --- 品詞がないパターン 要素11 ---*/


/* .content-box の非出力が不可能な場合は条件変更 */

.contents-wrap-b-in .content-box:first-child .list-data-b > li {
    padding-left: 0;
}

.contents-wrap-ej {
    display: table;
    width: 100%;
}

.contents-wrap-ej h1.ttl-a.ttl-a-imi.header {
    display: table-cell;
    width: 100%;
    font-size: 24px;
    line-height: 25px;
    text-indent: 8px;
    vertical-align: middle;
}

.contents-wrap-ej h1.ttl-a.h1.header {
    display: table-cell;
    width: 100%;
    font-size: 20px;
    line-height: 25px;
    text-indent: 8px;
}

.contents-wrap-ej .sup-a {
    display: table-cell;
    width: 150px;
    padding-right: 5px;
}

.list-data-d.list-titles .title.in-ttl-c,
.list-data-d.list-origin .title.in-ttl-c {
    margin: 0;
}


/* ～のすべての意味を見る */

.prog_parent {
    margin-left: 18px;
    margin-right: 18px;
}

.ttl-ej-kugiri {
    width: 100%;
    margin: 30px 0 0 0;
    border: none;
    border-bottom: solid 1px #ccc;
}

@media screen and (max-width: 750px) {
    .contents-wrap-ej h1.ttl-a.header {
        padding: 0 8px 8px;
        text-indent: 8px;
    }
    .contents-wrap-ej h1.ttl-a.ttl-a-imi.header {
        font-size: 18px;
    }
    .ttl-ej-kugiri {
        width: 95%;
        margin: 0 auto;
    }
    .ttl-a.obi.header {
        position: relative;
        display: block;
        font-size: 20px;
        line-height: 25px;
        padding: 0 8px 8px;
        text-indent: 8px;
    }
    .ttl-a.obi.header:after {
        content: "";
        position: absolute;
        display: block;
        bottom: 0;
        left: 8px;
        right: 8px;
        height: 1px;
        background: #ccc;
    }
    .contents-wrap-b {
        padding: 28px 0 0;
        border-bottom: none;
    }
    .list-data-a {
        padding: 2px 15px 2px;
    }
    .list-data-b > li {
        margin-top: 15px;
    }
    
    /* ～のすべての意味を見る */
    .prog_parent {
        margin: 15px 18px 0 18px;
        font-size: 15px;
    }
}
