@charset "utf-8";

/* ----- 2.1.css ----- */

/* UNIVERSAL-RESET */
a,
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    background: transparent;
    border: 0;
    font-size: 100%;
    font-style: normal;
    font-weight: normal;
    margin: 0;
    outline: 0;
    padding: 0;
    text-decoration: none;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ul,
ol {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

a {
    outline: none;
}

img {
    vertical-align: bottom;
}

/* BASE-SET */

body {
    background: #fff;
    font-size: 13px;
    font-family: Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Sans-serif;
    line-height: 1;
    -webkit-text-size-adjust: none;
}

.cx:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

*:first-child + html .cx {
    display: inline-block;
    min-height: 1%;
}

* html .cx {
    height: 1%;
}

a {
    color: #36c;
    overflow: hidden;
    text-decoration: none;
}

a:visited {
    color: #609;
}

a:hover {
    text-decoration: underline;
}

/* WIRE-FRAME */

html {
    overflow-y: scroll;
}

* html {
    text-align: center;
}

#NR-header-in,
#NR-footer-in,
.NR-tpath,
#NR-wrapper-in,
.NR-search-in {
    margin: 0 auto;
    padding: 0 10px;
    text-align: left;
    width: 1004px;
}

#NR-nav,
#NR-nav-main,
#NR-nav-sub,
#NR-wrapper,
#NR-footer,
#NR-gosp {
    min-width: 1024px;
}

#NR-wrapper {
    padding-top: 10px;
}

#NR-wrapper-in {
    margin: 0 auto 20px;
}

/* col2a(default) */

#NR-main {
    float: left;
    width: 684px;
}

#NR-sub {
    float: right;
    width: 300px;
}

/* col1 */

.NR-col1 #NR-main {
    float: none;
    margin-right: 0;
    width: 100%;
}

.NR-col1 #NR-main-in {
    margin-right: 0;
}

/* col2b */

.NR-col2b #NR-main {
    float: right;
}

.NR-col2b #NR-sub {
    float: left;
}

#NR-header-in {
    padding: 15px 10px;
}

#NR-footer-in {
    padding: 25px 10px;
}

/* UI */

.NR-tpath {
    padding-bottom: 10px;
}

.NR-tpath ol {
    overflow: hidden;
    padding: 10px 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
}

.NR-tpath li {
    display: inline;
}

*:first-child + html .NR-tpath li.NR-first {
    background: none;
    padding-left: 0;
}

*:first-child + html .NR-tpath li {
    background: url(img/lt.png) 3px no-repeat;
    padding-left: 12px;
}

.NR-tpath li:before {
    color: #999;
    content: '>';
    font-family: monospace;
    margin: 0 5px;
}

.NR-tpath li.NR-first:before {
    content: '';
    margin: 0;
}

*:first-child + html #tpath li {
    margin-right: 10px;
}

#NR-nav {
    background: #eee;
    border-bottom: 1px solid #ccc;
}

#NR-nav a {
    text-decoration: none;
}

#NR-nav li {
    float: left;
}

#NR-nav-main {
    background: #930;
    margin-bottom: 3px;
    padding-top: 4px;
}

#NR-nav-sub {
    background: #eee;
}

#NR-nav-main-in,
#NR-nav-sub-in {
    margin: 0 auto;
    padding: 0 10px;
    width: 984px;
}

#NR-nav-main li {
    margin-right: 5px;
}

#NR-nav-main li a {
    color: #fff;
    display: block;
    font-size: 15px;
    padding: 10px 20px;
    -webkit-transition: background-color 0.25s linear;
    -moz-transition: background-color 0.25s linear;
    transition: background-color 0.25s linear;
}

#NR-nav-main li.NR-now a {
    border-bottom: 1px solid #eee;
}

#NR-nav-main li a:hover,
#NR-nav-main li.NR-now a {
    border-radius: 2px 2px 0 0;
}

#NR-nav-main li a:hover {
    background: rgba(255, 255, 255, 0.2);
}

#NR-nav-main li.NR-now a {
    background: #eee;
    color: #000;
}

#NR-nav-sub li {
    margin-right: 10px;
}

#NR-nav-sub li a {
    border: 0 solid #930;
    display: block;
    padding: 10px;
}

#NR-nav-sub li.NR-now a,
#NR-nav-sub li a:hover {
    border-bottom-width: 2px;
    padding-bottom: 8px;
}

#NR-nav-sub #NR-nav-sub-more-label {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAEAQMAAACJA+yzAAAAA3NCSVQICAjb4U/gAAAABlBMVEVmZmb///9zS1moAAAAAnRSTlP/AOW3MEoAAAAJcEhZcwAACusAAArrAYKLDVoAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAEElEQVQImWNgYGhkOMzwHAAFvQIss49Z/gAAAABJRU5ErkJggg==) 100% no-repeat;
    padding-right: 15px;
}

*:first-child + html #NR-nav-sub #NR-nav-sub-more-label {
    background-image: url(img/dw.png);
}

#NR-nav-sub #NR-nav-sub-more-label:hover {
    border-bottom: 0;
    padding-bottom: 10px;
}

#NR-nav-sub #NR-nav-sub-more-label.NR-open {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAEAQMAAACJA+yzAAAAA3NCSVQICAjb4U/gAAAABlBMVEVmZmb///9zS1moAAAAAnRSTlP/AOW3MEoAAAAJcEhZcwAACusAAArrAYKLDVoAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAEElEQVQImWN4znCYoZGBAQALqwIsdz9yjwAAAABJRU5ErkJggg==);
}

*:first-child + html #NR-nav-sub #NR-nav-sub-more-label.NR-open {
    background-image: url(img/up.png);
}

#NR-nav-sub-more-list {
    background: #fff;
    border: 1px solid #666;
    display: none;
    padding: 10px;
    position: absolute;
    z-index: 1;
}

#NR-nav-sub-more-list li {
    float: none;
    margin-right: 0;
}

#NR-footer {
    background: #eee;
    border-top: 1px solid #ccc;
}

#bta {
    display: none;
}

/* FORM */

input,
select,
textarea {
    font-family: Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Sans-serif;
    font-size: 12px;
}

.NR-search {
    vertical-align: middle;
}

.NR-search-in {
    padding-bottom: 10px;
    text-align: center;
    vertical-align: baseline;
}

.NR-text,
.NR-select,
.NR-button {
    font-size: 12px;
    vertical-align: middle;
}

.NR-text {
    border: 1px solid #ccc;
    height: 28px;
    line-height: 28px;
    margin: 0;
    padding: 0 5px;
    width: 24em;
}

.NR-text:focus {
    border-color: #333;
}

.NR-button {
    white-space: nowrap;
    -webkit-appearance: none;
}

.NR-button,
.NR-button:visited,
.NR-button:hover {
    color: #000;
    text-decoration: none;
}

.NR-button {
    background: #ffd700;
    border: none;
    border-radius: 2px;
    cursor: pointer;
    font-weight: bold;
    margin: 0;
    padding: 6px 1em;
    text-align: center;
}

*:first-child + html .NR-button {
    min-width: 0;
}

.NR-button:hover {
    background: #ffe711;
}

.NR-button-normal {
    background: #ddd;
}

.NR-button-normal:hover {
    background: #eee;
}

.NR-button-disabled,
.NR-button-disabled:hover {
    background: #f0f0f0;
    color: #aaa;
    cursor: default;
}

.NR-select {
    border: 1px solid #ccc;
    height: 28px;
    line-height: 28px;
    margin: 0;
    padding: 0;
}

.NR-search-text {
    width: 24em;
}

/* COMMON */

#NR-nav-sp {
    display: none;
    background: #36c;
}

#NR-nav-sp a {
    color: #fff;
    display: block;
    font-size: 20px;
    padding: 20px;
    text-align: center;
}

.NR-copyright-ip {
    font-size: 12px;
    line-height: 1.4;
    margin: 15px auto;
    text-align: right;
    width: 1004px;
}

.NR-copyright {
    text-align: center;
}

#NR-header-logo {
    line-height: 36px;
    width: 400px;
}

#NR-header-logo img {
    vertical-align: middle;
}

#NR-header-logo-goo img {
    height: 36px;
    margin-right: 10px;
    width: 70px;
}

#NR-header-logo-sv img {
    height: 28px;
    margin-left: 5px;
    width: 28px;
}

#NR-header-logo a {
    color: #000;
    font-size: 16px;
    font-weight: normal;
    text-decoration: none;
}

#NR-header-in {
    position: relative;
}

#NR-header-util {
    position: absolute;
    right: 10px;
    top: 10px;
}

#NR-header-util li {
    float: right;
    margin-left: 8px;
}

#NR-header-util a {
    color: #333;
    font-size: 12px;
}

#NR-header-util a:hover {
    color: #36c;
}

#NR-header-tool {
    margin-bottom: 5px;
    text-align: right;
}

#NR-header-ocn {
    text-align: right;
}

#NR-header-ocn-logo {
    margin-right: 5px;
    vertical-align: middle;
}

#NR-sp-menu {
    display: none;
}

#NR-footer-sv {
    margin-bottom: 20px;
}

#NR-footer a {
    color: #333;
    font-size: 12px;
}

#NR-footer a:hover {
    color: #36c;
}

#NR-footer-sv {
    border-bottom: 1px solid #ccc;
}

#NR-footer-sv dl {
    line-height: 1.5;
    margin-bottom: 15px;
}

#NR-footer-sv dt,
#NR-footer-sv dd {
    margin-bottom: 15px;
}

#NR-footer-sv dt {
    clear: left;
    float: left;
    margin-right: 2em;
    width: 8em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#NR-footer-sv dt,
#NR-footer-sv dt a {
    font-size: 13px;
    font-weight: bold;
}

#NR-footer-sv ul,
#NR-footer-sv li {
    display: inline;
}

#NR-footer-sv li {
    margin-right: 10px;
}

#NR-footer-link {
    margin-bottom: 20px;
    text-align: center;
}

#NR-footer-link li {
    display: inline;
    margin-right: 10px;
}

.NR-pr {
    margin: 0 auto 10px;
    text-align: center;
}

.NR-pr a {
    color: #36c;
}

.NR-pr-imgTxt {
    border: 1px solid #ccc;
    padding: 10px;
    width: 950px;
}

.NR-pr-imgTxt img {
    margin-right: 10px;
    vertical-align: middle;
}

.NR-pr-txt {
    padding: 20px 0;
}

.NR-go {
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAIAQMAAADk/cxGAAAABlBMVEX///9mZmaO7mygAAAAAXRSTlMAQObYZgAAABVJREFUeF5jaGA4wPCA4QMQPgCyGgAxEAYhoO6KiwAAAABJRU5ErkJggg==) 0 no-repeat;
    padding-left: 12px;
}

*:first-child + html .NR-go {
    background-image: url(img/go.png);
}

#NR-gosp-in {
    background: #36c;
    color: #fff;
    display: block;
    font-size: 48px;
    padding: 2em;
    text-align: center;
    text-decoration: none;
}

.txtimgl {
    margin-bottom: 20px;
}

.txtimgl dt {
    margin-bottom: 1em;
    font-size: 16px;
}

.txtimgl dd {
    font-size: 12px;
    line-height: 1.2;
    margin-bottom: 10px;
    min-height: 80px;
    position: relative;
    zoom: 1;
}

.txtimgl .NR-txtimgl-img {
    position: absolute;
    top: 0;
    left: 0;
}

.txtimgl .NR-txtimgl-txt {
    display: block;
    margin-left: 90px;
    position: static;
}

.txtimgl .black {
    font-weight: bold;
    margin-bottom: 5px;
}

/* SOCIAL */

#NR-wrapper-in .social-button,
#NR-wrapper-in .social-button li {
    margin: 1em 0;
}

#NR-wrapper-in .social-button li {
    display: inline-block;
    list-style: none;
    margin-right: 8px;
}

#NR-wrapper-in .social-button li.line {
    display: none;
}

*:first-child + html #NR-wrapper-in .social-button li {
    display: inline;
}

#NR-wrapper-in .social-button li a:hover {
    -moz-opacity: .8;
    opacity: .8;
}

#NR-wrapper-in .social-button li a,
#NR-wrapper-in .social-button li img {
    display: block;
    height: 32px;
    width: 32px;
}

/* ==============================
Module Base Style
============================== */
i {
    margin-right: .5em;
}

/* ==============================
Module Components
============================== */

/* Heading
------------------------------ */
/* type-a */
.nr-ttl-a {
    border-bottom: none;
    border-left: 3px solid #000080;
    font-size: 30px;
    line-height: 1.2;
    margin: 10px 0 20px;
    padding: 10px 0 10px 15px;
    vertical-align: middle;
}

.nr-ttl-a:first-child {
    margin-top: 0;
}

.nr-ttl-a .nr-ttl {
    padding-right: 15px;
    vertical-align: middle;
}

.nr-ttl-a .nr-sup {
    font-size: 15px;
    vertical-align: middle;
}

/* type-b */
.nr-ttl-b {
    border-top: 2px solid #000080;
    font-size: 24px;
    line-height: 1.2;
    margin: 20px 0 5px;
    padding: 20px 0;
}

.nr-ttl-b:first-child {
    margin-top: 0;
}

.nr-ttl-b .nr-ttl {
    padding-right: 15px;
    vertical-align: middle;
}

.nr-ttl-b .nr-sup {
    font-size: 15px;
    vertical-align: middle;
}

/* type-c */
.nr-ttl-c {
    border-bottom: 1px solid #000080;
    border-top: none;
    font-size: 24px;
    line-height: 1.2;
    margin: 20px 0;
    padding: 15px 0 7px;
}

.nr-ttl-c:first-child {
    margin-top: 0;
}

/* type-d */
.nr-ttl-d {
    border-bottom: 1px solid #ccc;
    border-top: none;
    font-size: 16px;
    margin: 1em 0;
    padding: 0 0 10px;
}

.nr-ttl-d:first-child {
    margin-top: 0;
}

/* Text
------------------------------ */
.nr-text {
    overflow: hidden;
    font-size: 14px;
    line-height: 1.3;
    margin: 1em 0;
}

.nr-text:first-child {
    margin: 0 0 1em;
}

/* notice */
.nr-notice {
    padding-left: 1em;
    text-indent: -1em;
}

/* blockquote */
.nr-blockquote {
    background: #f2f2fa;
    border-radius: 8px;
    padding: 3em 4em 1.5em;
    position: relative;
}

.nr-blockquote p {
    margin: 0;
}

.nr-blockquote:before {
    color: #999;
    content: '“';
    font-family: 'MS PGothic', sans-serif;
    font-size: 500%;
    left: 10px;
    line-height: 1;
    position: absolute;
    top: 10px;
}

/* Image
------------------------------ */
.nr-img-right {
    text-align: right;
}

.nr-img-center {
    text-align: center;
}

.nr-text.nr-img-right {
    text-align: left;
}

.nr-text.nr-img-right img {
    float: right;
    margin-bottom: 10px;
    margin-left: 10px;
}

.nr-text.nr-img-left img {
    float: left;
    margin-bottom: 10px;
    margin-right: 10px;
}

/* List
------------------------------ */
.nr-list {
    margin: 1em 0;
}

.nr-list li {
    font-size: 14px;
    line-height: 1.2;
    list-style-type: disc;
    margin-bottom: .5em;
    margin-left: 1.5em;
}

.nr-list-link {
    margin: 1em 0;
    padding: 0 0 0 5px;
}

.nr-list-link li {
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: .75em;
    margin-left: 15px;
    position: relative;
}

.nr-list-link li:before {
    color: #ccc;
    content: '\f0da';
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    left: -15px;
    position: absolute;
}

.nr-list-link li a:link,
.nr-list-link li a:visited {
    color: #333;
}

.nr-list-link-inner {
    margin: 1em 0;
    padding: 0 0 0 5px;
}

.nr-list-link-inner li {
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: .75em;
    margin-left: 15px;
    position: relative;
}

.nr-list-link-inner li:before {
    color: #000080;
    content: '\f078';
    font-family: 'Font Awesome 5 Pro';
    font-size: 10px;
    left: -15px;
    margin-top: -.6em;
    position: absolute;
    top: 50%;
}

.nr-list-link-inner li a:link,
.nr-list-link-inner li a:visited {
    color: #333;
}

/* col2 */
.nr-list-col2:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

.nr-list-col2 li {
    float: left;
    width: 46%;
}

.nr-list-link.nr-list-col2 li {
    float: left;
    width: 47%;
}

/* col3 */
.nr-list-col3:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

.nr-list-col3 li {
    float: left;
    width: 29%;
}

.nr-list-link.nr-list-col3 li {
    float: left;
    width: 30%;
}

/* tag */
.nr-tag {
    background: #e9e9e9;
    border-radius: 15px;
    color: #333;
    cursor: pointer;
    font-size: 12px;
    margin-right: 10px;
    padding: 3px 12px;
}

.nr-tag:visited {
    color: #333;
}

.nr-tag:hover {
    background-color: #000080;
    color: #fff;
    text-decoration: none;
}

.nr-list-tag li {
    float: left;
    line-height: 2.1;
    margin: 5px 0 0;
    position: relative;
    white-space: normal;
}

/* type-a */
.nr-list-img-a {
    margin-left: -9px;
    zoom: 1;
}

.nr-list-img-a .nr-list-img-block {
    background: #fff;
    border: 1px solid #eee;
    border-bottom: 2px solid #e4e2dc;
    float: left;
    margin: 0 0 10px 9px;
    width: 220px;
}

.nr-list-img-a .nr-list-img-block .nr-img-block {
    display: block;
}

.nr-list-img-a .nr-list-img-block .nr-img-block:hover {
    cursor: pointer;
    opacity: .8;
    text-decoration: none;
}

.nr-list-img-a .nr-list-img-block dt {
    min-height: 140px;
}

.nr-list-img-a .nr-list-img-block .nr-date {
    color: #9c9c9c;
    margin: 10px;
}

.nr-list-img-a .nr-list-img-block .nr-ttl {
    color: #333;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    margin: 10px;
    min-height: 50px;
}

.nr-list-img-a .nr-tag-block {
    border-top: 1px solid #eee;
    padding: 1em 0;
    text-align: right;
}

.nr-list-img-a .nr-tag-block .nr-tag {
    display: inline-block;
    margin-right: 6px;
    max-width: 40%;
    overflow: hidden;
    padding: 4px 6px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* type-b */
.nr-list-img-b li {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 20px;
    min-height: 75px;
    position: relative;
    zoom: 1;
}

.nr-list-img-b .nr-img {
    min-height: 75px;
    position: absolute;
    top: 0;
}

.nr-list-img-b.nr-right .nr-img {
    right: 0;
}

.nr-list-img-b.nr-left .nr-img {
    left: 0;
}

.nr-list-img-b .nr-img img {
    height: auto;
    max-height: 75px;
    max-width: 75px;
    overflow: hidden;
    width: auto;
}

.nr-list-img-b .nr-img img:hover {
    opacity: .8;
}

.nr-list-img-b .nr-txt-block {
    position: static;
}

.nr-list-img-b.nr-right .nr-txt-block {
    margin-right: 85px;
}

.nr-list-img-b.nr-left .nr-txt-block {
    margin-left: 85px;
}

.nr-list-img-b .nr-ttl {
    margin-bottom: .1em;
}

.nr-list-img-b .nr-ttl a {
    color: #333;
    font-size: 16px;
    font-weight: bold;
}

.nr-list-img-b .nr-lead {
    color: #9c9c9c;
    margin-bottom: .5em;
}

.nr-list-img-b .nr-tag {
    display: inline-block;
    font-size: 12px;
}

*:first-child + html .nr-list-img-b .nr-tag {
    margin-bottom: 5px;
}

/* word */
.nr-list-word.nr-col2 {
    display: inline-block;
    width: 49%;
}

.nr-list-word.nr-col3 {
    display: inline-block;
    overflow: hidden;
    width: 32%;
}

*:first-child + html .nr-list-word.nr-col2,
*:first-child + html .nr-list-word.nr-col3 {
    display: inline;
    zoom: 1;
}

.nr-list-word .nr-word-block li {
    float: left;
    margin: 10px 0 0 10px;
    width: 30px;
}

.nr-list-word .nr-word-block li a,
.nr-list-word .nr-word-block li .disable {
    background: #eee;
    border: 1px #ccc solid;
    border-radius: 5px;
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding: 7px;
    text-align: center;
}

.nr-list-word .nr-word-block li .disable {
    color: #ccc;
}

.nr-list-word .nr-word-block li a:link,
.nr-list-word .nr-word-block li a:visited {
    color: #333;
    text-decoration: none;
}

.nr-list-word .nr-word-block li a:hover {
    color: #fff;
    background: #000080;
    opacity: 1;
    text-decoration: none;
}

.nr-list-word .nr-word-block li.nr-blank {
    visibility: hidden;
}

/* Box
------------------------------ */
/* type-a */
.nr-box-a {
    border: 1px solid #e3e3e3;
    margin: 30px 0;
    overflow: hidden;
    padding: 10px;
}

/* type-b */
.nr-box-b {
    background-color: #f5f5f5;
    margin: 30px 0;
    overflow: hidden;
    padding: 10px;
}

/* Button
------------------------------ */
/* basic */
.nr-btn-basic {
    height: 43px;
    text-align: center;
    width: 100%;
}

.nr-btn-basic a {
    background: #36c;
    border-radius: 4px;
    box-shadow: -1px -2px 1px 1px #24478e inset;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    height: 43px;
    line-height: 43px;
    min-width: 0;
    padding: 0 43px;
}

.nr-btn-basic a:visited {
    color: #fff;
    text-decoration: none;
}

.nr-btn-basic a:hover {
    opacity: .8;
}

/* more */
.nr-btn-more {
    margin: 1em 0;
}

.nr-btn-more a {
    background: #000080;
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: bold;
    padding: 20px 0;
    text-align: center;
}

.nr-btn-more a:visited {
    color: #fff;
    text-decoration: none;
}

.nr-btn-more a:hover {
    opacity: .8;
}

.nr-btn-more .nr-more:after {
    color: #fff;
    content: '\f054';
    display: inline-block;
    font-family: 'Font Awesome 5 Pro';
    font-style: normal;
    font-weight: normal;
    margin-left: 10px;
    text-decoration: none;
}

/* Mark
------------------------------ */
/* new */
.nr-new {
    background: #f44d64;
    color: #fff;
    font-size: 10px;
    margin-left: .4em;
    padding: 0 .3em;
    vertical-align: middle;
}

/* label */
.nr-label {
    color: #fff;
    display: inline-block;
    background: #999;
    font-size: 10px;
    font-weight: bold;
    height: 11px;
    padding: 4px 0 5px;
    text-align: center;
    vertical-align: middle;
    width: 90px;
}

.nr-label.nr-aqua {
    background: #2cefdd;
}

.nr-label.nr-blue {
    background: #5275eb;
}

.nr-label.nr-green {
    background: #23dc2d;
}

.nr-label.nr-lime {
    background: #c2cc09;
}

.nr-label.nr-yellow {
    background: #e4a81b;
}

.nr-label.nr-orange {
    background: #f38758;
}

.nr-label.nr-pink {
    background: #e3527f;
}

.nr-label.nr-purple {
    background: #a758f3;
}

/* Photo
------------------------------ */
.nr-photo {
    margin: 28px 0 0;
}

.nr-photo .nr-photo-unit {
    background: #eee;
    margin: 40px 0 0;
    text-align: center;
}

.nr-photo .nr-photo-unit img {
    max-width: 644px;
}

/* caption */
.nr-photo .nr-caption {
    color: #666;
    font-size: 14px;
    line-height: 1.4;
    padding: 16px 0 0;
    text-align: center;
}

/* photo-list */
.nr-photo .nr-photo-list {
    display: table;
    margin: 11px -11px 0;
    border-collapse: separate;
    border-spacing: 11px 0;
}

*:first-child + html .nr-photo .nr-photo-list {
    margin: 11px 0 0 -11px;
}

.nr-photo .nr-photo-list .nr-photo-img {
    background: #eee;
    display: table-cell;
    height: 120px;
    text-align: center;
    vertical-align: middle;
    width: 130px;
}

*:first-child + html .nr-photo .nr-photo-list .nr-photo-img {
    display: inline;
    margin-left: 9px;
    zoom: 1;
}

.nr-photo .nr-photo-list .nr-photo-img img {
    max-height: 120px;
    max-width: 120px;
}

.nr-photo .nr-cite {
    color: #666;
    font-size: 14px;
    text-align: right;
    margin: 16px 0 0;
}

/* Search
------------------------------ */
.nr-search {
    margin-bottom: 15px;
}

input.nr-search-txt {
    border: 1px solid #ddd;
    font-size: 16px;
    height: 45px;
    line-height: 45px; /* IE7,8対応 */
    padding: 0 15px;
    width: 510px;
}

input.nr-search-txt:-webkit-input-placeholder {
    color: #a9a9a9;
}

input.nr-search-txt:-ms-input-placeholder {
    color: #a9a9a9;
}

input.nr-search-txt:-moz-placeholder {
    color: #a9a9a9;
}

input.nr-search-btn {
    background-color: #ffd700;
    border: none;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
    height: 47px;
    margin-left: 5px;
    padding: 0 15px;
    width: 65px;
}

input.nr-search-btn:hover {
    background-color: #ffe711;
    cursor: pointer;
}

/* Form
------------------------------ */
/* default */
.nr-form input,
.nr-form select {
    font-size: 16px;
    padding: 0 0 0 5px;
}

.nr-form input[type=radio],
.nr-form input[type=checkbox],
.nr-form select[type=radio],
.nr-form select[type=checkbox] {
    background: transparent;
}

.nr-form .nr-error input,
.nr-form .nr-error select {
    border: 2px #e03f70 solid;
}

.nr-form input[type=text],
.nr-form input[type=password] {
    height: 27px;
    vertical-align: top;
    width: 100%;
}

.nr-form input[type=text].nr-small,
.nr-form input[type=password].nr-small {
    width: 135px;
}

.nr-form select {
    min-width: 65px;
}

.nr-form .nr-form-line {
    padding: 0 65px 0 0;
    position: relative;
}

/* radio & checkbox */
.nr-form input[type=radio],
.nr-form input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}

.nr-form input[type=radio] + label,
.nr-form input[type=checkbox] + label {
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    line-height: 30px;
    margin-right: 12px;
    position: relative;
}

@media (min-width: 1px) {
    .nr-form input[type=radio],
    .nr-form input[type=checkbox] {
        display: none;
        margin: 0;
    }

    .nr-form input[type=radio] + label {
        padding: 0 0 0 20px;
    }

    .nr-form input[type=radio] + label:before {
        background: #fff;
        border: 1px #ccc solid;
        border-radius: 30px;
        box-sizing: border-box;
        content: '';
        display: block;
        height: 14px;
        left: 0;
        margin-top: -9px;
        position: absolute;
        top: 50%;
        width: 14px;
    }

    .nr-form .nr-error input[type=radio] + label:before {
        border: 2px #e03f70 solid;
    }

    .nr-form input[type=radio]:checked + label:after {
        background: #333;
        border-radius: 8px;
        box-sizing: border-box;
        content: '';
        display: block;
        height: 8px;
        left: 3px;
        margin-top: -6px;
        position: absolute;
        top: 50%;
        width: 8px;
    }

    .nr-form input[type=checkbox] + label {
        padding: 0 0 0 20px;
    }

    .nr-form input[type=checkbox] + label:before {
        background: #fff;
        border: 1px solid #ccc;
        box-sizing: border-box;
        content: '';
        display: block;
        height: 14px;
        left: 0;
        margin-top: -9px;
        position: absolute;
        top: 50%;
        width: 14px;
    }

    .nr-form .nr-error input[type=checkbox] + label:before {
        border: 2px #e03f70 solid;
    }

    .nr-form input[type=checkbox]:checked + label:after {
        border-bottom: 3px #333 solid;
        border-left: 3px #333 solid;
        box-sizing: border-box;
        content: '';
        display: block;
        height: 6px;
        left: 3px;
        margin-top: -6px;
        position: absolute;
        top: 50%;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
        width: 8px;
    }
}

.nr-form .nr-required {
    font-size: 13px;
    line-height: 1.2;
    margin-top: -0.5em;
    position: absolute;
    right: 10px;
    top: 50%;
}

.nr-form .nr-note {
    font-size: 12px;
}

.nr-form .nr-error .nr-note {
    color: #e03f70;
}

.nr-form .nr-blue a:link,
.nr-form .nr-blue a:visited {
    color: #36c;
    text-decoration: none;
}

.nr-form .nr-blue a:hover {
    color: #36c;
    opacity: .8;
    text-decoration: underline;
}

.nr-form .nr-red {
    color: #e03f70;
}

.nr-form .nr-red a:link,
.nr-form .nr-red a:visited {
    color: #e03f70;
    text-decoration: none;
}

.nr-form .nr-red a:hover {
    color: #e03f70;
    opacity: .8;
    text-decoration: underline;
}

.nr-form .nr-btn {
    background: #333;
    border-radius: 2px;
    display: inline-block;
    font-size: 14px;
    font-weight: normal;
    padding: 6px 20px 4px;
    text-align: center;
    width: auto;
}

.nr-form .nr-btn:link,
.nr-form .nr-btn:visited {
    color: #fff;
    text-decoration: none;
}

.nr-form .nr-btn:hover {
    color: #fff;
    opacity: .8;
    text-decoration: none;
}

/* entry */
.nr-form .nr-form-table {
    display: table;
    margin: 0;
    table-layout: fixed;
    width: 100%;
}

.nr-form .nr-form-table dt,
.nr-form .nr-form-table dd {
    border-top: 2px #fff solid;
    display: table-cell;
    font-size: 16px;
    line-height: 1.4;
    margin: 0;
    padding: 16px 10px 16px 20px;
    vertical-align: middle;
}

*:first-child + html .nr-form .nr-form-table dt,
*:first-child + html .nr-form .nr-form-table dd {
    display: block;
    float: left;
}

.nr-form .nr-form-table dt {
    background: #999;
    color: #fff;
}

.nr-form .nr-form-table dd {
    background: #f2f2fa;
    border-left: 2px #fff solid;
}

.nr-form .nr-form-table dd.nr-form-block {
    padding: 8px 10px;
}

.nr-form .nr-form-table.nr-col2 dt {
    width: 376px;
}

.nr-form .nr-form-table.nr-col2 dd {
    width: 100%;
}

*:first-child + html .nr-form .nr-form-table.nr-col2 dd {
    width: 566px;
}

.nr-form .nr-form-table.nr-col2 dd .nr-note {
    margin: 10px 0 0;
}

.nr-form .nr-form-table .nr-error {
    background: #fcebf0;
}

/* Table
------------------------------ */
.nr-table table {
    border: 1px solid #ccc;
    font-size: 14px;
    line-height: 1.6;
    width: 100%;
}

.nr-table table col.nr-half {
    width: 50%;
}

.nr-table table th,
.nr-table table td {
    border-left: 1px solid #ccc;
    padding: 5px 10px;
}

.nr-table table th {
    background-color: #f5f5f5;
}

.nr-table table td {
    border-top: 1px solid #ccc;
    margin: 0;
    vertical-align: top;
}

.nr-table table td.nr-level1,
.nr-table table td.nr-level2,
.nr-table table td.nr-level3,
.nr-table table td.nr-level4 {
    border-top-style: dashed;
}

.nr-table table td.nr-level1:before,
.nr-table table td.nr-level2:before,
.nr-table table td.nr-level3:before,
.nr-table table td.nr-level4:before {
    color: #999;
    content: '+';
    display: inline-block;
    margin-right: .2em;
    vertical-align: middle;
}

.nr-table table td.nr-level1 {
    padding-left: 1em;
}

.nr-table table td.nr-level2 {
    padding-left: 1.5em;
}

.nr-table table td.nr-level3 {
    padding-left: 2em;
}

.nr-table table td.nr-level4 {
    padding-left: 2.5em;
}

.nr-table table td ul {
    font-size: 12px;
    margin: 0;
}

.nr-table table td ul li {
    margin-bottom: .5em;
}

/* info */
.nr-table-info {
    border: 1px solid #ccc;
    line-height: 1.6;
    width: 100%;
}

.nr-info-col1 {
    width: 150px;
}

.nr-info-col2 {
    width: auto;
}

.nr-table-info th,
.nr-table-info td,
.nr-table-info td a,
.nr-table-info td li {
    font-size: 14px;
}

.nr-table-info th,
.nr-table-info td {
    border-top: 1px solid #ccc;
    padding: 8px 10px;
    vertical-align: top;
}

.nr-table-info tbody td {
    border-left: 1px solid #ccc;
}

.nr-table-info thead th {
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
}

.nr-table-info th {
    background-color: #f5f5f5;
}

/* hours */
.nr-table-hours {
    border: 1px solid #ccc;
    line-height: 1.6;
    width: 100%;
}

.nr-table-hours th,
.nr-table-hours td,
.nr-table-hours td a,
.nr-table-hours td li {
    font-size: 14px;
}

.nr-table-hours th,
.nr-table-hours td {
    border-top: 1px solid #ccc;
    padding: 8px 10px;
    text-align: center;
    vertical-align: middle;
}

.nr-table-hours tbody td {
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
}

.nr-table-hours th {
    background-color: #fff;
    border-left: 1px solid #ccc;
}

.nr-table-hours td {
    background-color: #f5f5f5;
    font-size: 18px;
}

.nr-table-hours td.nr-bg-time,
.nr-table-hours td.nr-bg-exam,
.nr-table-hours td.nr-bg-note {
    background-color: #fff;
}

.nr-table-hours td.nr-bg-time,
.nr-table-hours td.nr-bg-note {
    font-size: 14px;
}

.nr-table-hours.narrow td.nr-bg-note {
    font-size: 10px;
}

.nr-table-hours th:first-child + th + th + th + th + th + th,
.nr-table-hours td:first-child + td + td + td + td + td + td.nr-bg-exam {
    background-color: #ebf9fc;
}

.nr-table-hours th:first-child + th + th + th + th + th + th + th,
.nr-table-hours th:first-child + th + th + th + th + th + th + th + th,
.nr-table-hours td:first-child + td + td + td + td + td + td + td.nr-bg-exam,
.nr-table-hours td:first-child + td + td + td + td + td + td + td + td.nr-bg-exam {
    background-color: #fceae9;
}

/* Tab
------------------------------ */
.nr-tab {
    border-bottom: 1px solid #000080;
}

.nr-tab li {
    float: left;
    margin: 0 0 -1px 10px;
    position: relative;
    text-align: center;
    vertical-align: middle;
}

.nr-tab li:first-child {
    margin-left: 30px;
}

.nr-tab li .NR-on,
.nr-tab li a {
    background-color: #fff;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #000080;
    border-right: 1px solid #000080;
    border-top: 1px solid #000080;
    display: block;
    letter-spacing: .1em;
    padding: 15px;
    position: relative;
    text-align: center;
    text-decoration: none;
}

.nr-tab li .NR-on {
    color: #000080;
}

.nr-tab li .NR-on:after {
    bottom: 0;
    content: '\f078';
    font-family: 'Font Awesome 5 Pro';
    font-size: 13px;
    font-style: normal;
    font-weight: normal;
    left: 50%;
    margin-left: -7px;
    position: absolute;
    text-decoration: none;
}

.nr-tab li.NR-off a {
    background: #000080;
    border-bottom: 1px solid #000080;
    border-top: 1px solid #000080;
    text-decoration: none;
}

.nr-tab li.NR-off a:hover {
    opacity: .8;
}

.nr-tab li.NR-off a:link,
.nr-tab li.NR-off a:visited {
    color: #fff;
}

.nr-tab li.NR-off a:after {
    content: none;
}

/* Paging
------------------------------ */
.nr-paging {
    margin: 35px 0;
    text-align: center;
}

.nr-paging li {
    border: 1px solid #ccc;
    display: inline-block;
    margin: 0 5px;
    min-width: 32px;
}

.nr-paging li.nr-prev a,
.nr-paging li.nr-next a {
    padding-left: 10px;
    padding-right: 10px;
}

*:first-child + html .nr-paging li {
    display: inline;
    width: 32px;
}

*:first-child + html .nr-paging li.nr-prev,
*:first-child + html .nr-paging li.nr-next {
    width: 90px;
}

.nr-paging li a {
    display: block;
    font-size: 14px;
    padding: 9px 0 8px;
}

.nr-paging li a:hover {
    text-decoration: underline;
}

.nr-paging li.NR-now a {
    background: #000080;
    color: #fff;
}

/* Nav
------------------------------ */
/* list */
.nr-nav-list {
    margin: 0 0 0 -10px;
}

.nr-nav-list li {
    background-color: #fff;
    border: 2px solid #eee;
    border-bottom: 3px solid #e4e2dc;
    float: left;
    margin: 0 0 10px 10px;
    position: relative;
    width: 214px;
}

.nr-nav-list li a:before {
    color: #999;
    content: '\f054';
    font-family: 'Font Awesome 5 Pro';
    font-size: 15px;
    margin-top: -7px;
    position: absolute;
    right: 7px;
    top: 50%;
}

.nr-nav-list li:hover a:before {
    opacity: .8;
}

.nr-nav-list li a {
    display: block;
    font-size: 16px;
    padding: 22px 20px 22px 12px;
}

.nr-nav-list li a:link,
.nr-nav-list li a:visited {
    color: #333;
}

.nr-nav-list li a span {
    font-weight: bold;
}

/* Other
------------------------------ */
/* definition-type-a */
.nr-definition-a dt {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 1em;
}

.nr-definition-a dd {
    width: 650px;
}

.nr-definition-a-in {
    width: 100%;
}

.nr-definition-a-in li {
    font-size: 13px;
    margin-bottom: 10px;
    min-height: 0;
    padding: 0;
    position: relative;
}

.nr-definition-a-in li.nr-left {
    clear: left;
    float: left;
    width: 325px;
}

.nr-definition-a-in li .nr-date {
    font-weight: bold;
    padding-right: 10px;
}

/* definition-type-b */
.nr-definition-b {
    clear: both;
    overflow: hidden;
    padding-top: 10px;
}

.nr-definition-b:first-child {
    padding-top: 0;
}

.nr-definition-b dt,
.nr-definition-b dd {
    float: left;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 0;
}

*:first-child + html .nr-definition-b dd {
    margin-left: 20px;
}

.nr-definition-b dd a {
    font-size: inherit;
}

.nr-definition-b-in li {
    display: inline-block;
    line-height: 1.3;
    margin: 0 0 0 20px;
    min-height: 0;
    padding: 0;
    position: relative;
    text-align: right;
}

*:first-child + html .nr-definition-b-in li {
    display: inline;
    zoom: 1;
}

/* map */
.nr-map {
    height: 500px;
    position: relative;
}

.nr-map li {
    border-radius: 5px;
    display: list-item;
    position: absolute;
    width: 44px;
}

.nr-map li:hover {
    opacity: .8;
}

.nr-map li a {
    color: #333;
    display: block;
    padding: 10px 0;
    text-align: center;
}

.nr-map .nr-hokkaido {
    background-color: #c3ddeb;
}

.nr-map .nr-kanto {
    background-color: #c3cbe5;
}

.nr-map .nr-shutoken {
    background-color: #b4dfbc;
}

.nr-map .nr-tokai {
    background-color: #f5c1c1;
}

.nr-map .nr-kansai {
    background-color: #f1d15a;
}

.nr-map .nr-chugoku {
    background-color: #d7c4ea;
}

.nr-map .nr-shikoku {
    background-color: #bbe1e6;
}

.nr-map .nr-kyushu {
    background-color: #f7c2d9;
}

.nr-map li.nr-mcol3x3 {
    width: 116px;
}

.nr-map li.nr-mcol3x3 a {
    padding: 42px 0;
}

.nr-map li.nr-mcol2 {
    width: 92px;
}

.nr-map li.nr-mcol2h {
    width: 116px;
}

.nr-map li.nr-mcol1h {
    width: 68px;
}

.nr-map li.nr-mcol1x2 a {
    padding: 29px 0;
}

.nr-map li.nr-pref01 {
    left: 533px;
    top: 2px;
}

.nr-map li.nr-pref02 {
    left: 533px;
    top: 104px;
}

.nr-map li.nr-pref03 {
    left: 605px;
    top: 142px;
}

.nr-map li.nr-pref04 {
    left: 605px;
    top: 180px;
}

.nr-map li.nr-pref05 {
    left: 533px;
    top: 142px;
}

.nr-map li.nr-pref06 {
    left: 533px;
    top: 180px;
}

.nr-map li.nr-pref07 {
    left: 533px;
    top: 218px;
}

.nr-map li.nr-pref08 {
    left: 605px;
    top: 294px;
}

.nr-map li.nr-pref09 {
    left: 605px;
    top: 256px;
}

.nr-map li.nr-pref10 {
    left: 533px;
    top: 256px;
}

.nr-map li.nr-pref11 {
    left: 533px;
    top: 294px;
}

.nr-map li.nr-pref12 {
    left: 605px;
    top: 332px;
}

.nr-map li.nr-pref13 {
    left: 533px;
    top: 332px;
}

.nr-map li.nr-pref14 {
    left: 533px;
    top: 370px;
}

.nr-map li.nr-pref15 {
    left: 483px;
    top: 218px;
}

.nr-map li.nr-pref16 {
    left: 435px;
    top: 218px;
}

.nr-map li.nr-pref17 {
    left: 387px;
    top: 218px;
}

.nr-map li.nr-pref18 {
    left: 387px;
    top: 256px;
}

.nr-map li.nr-pref19 {
    left: 483px;
    top: 332px;
}

.nr-map li.nr-pref20 {
    left: 483px;
    top: 256px;
}

.nr-map li.nr-pref21 {
    left: 435px;
    top: 256px;
}

.nr-map li.nr-pref22 {
    left: 483px;
    top: 370px;
}

.nr-map li.nr-pref23 {
    left: 435px;
    top: 332px;
}

.nr-map li.nr-pref24 {
    left: 387px;
    top: 332px;
}

.nr-map li.nr-pref25 {
    left: 387px;
    top: 294px;
}

.nr-map li.nr-pref26 {
    left: 339px;
    top: 294px;
}

.nr-map li.nr-pref27 {
    left: 291px;
    top: 332px;
}

.nr-map li.nr-pref28 {
    left: 291px;
    top: 294px;
}

.nr-map li.nr-pref29 {
    left: 339px;
    top: 332px;
}

.nr-map li.nr-pref30 {
    left: 291px;
    top: 370px;
}

.nr-map li.nr-pref31 {
    left: 242px;
    top: 294px;
}

.nr-map li.nr-pref32 {
    left: 193px;
    top: 294px;
}

.nr-map li.nr-pref33 {
    left: 242px;
    top: 332px;
}

.nr-map li.nr-pref34 {
    left: 193px;
    top: 332px;
}

.nr-map li.nr-pref35 {
    left: 145px;
    top: 294px;
}

.nr-map li.nr-pref36 {
    left: 222px;
    top: 426px;
}

.nr-map li.nr-pref37 {
    left: 222px;
    top: 388px;
}

.nr-map li.nr-pref38 {
    left: 173px;
    top: 388px;
}

.nr-map li.nr-pref39 {
    left: 173px;
    top: 426px;
}

.nr-map li.nr-pref40 {
    left: 96px;
    top: 332px;
}

.nr-map li.nr-pref41 {
    left: 48px;
    top: 332px;
}

.nr-map li.nr-pref42 {
    left: 0;
    top: 332px;
}

.nr-map li.nr-pref43 {
    left: 48px;
    top: 370px;
}

.nr-map li.nr-pref44 {
    left: 96px;
    top: 370px;
}

.nr-map li.nr-pref45 {
    left: 96px;
    top: 408px;
}

.nr-map li.nr-pref46 {
    left: 48px;
    top: 408px;
}

.nr-map li.nr-pref47 {
    left: 48px;
    top: 462px;
}

/* ----- style.css ----- */
@charset "UTF-8";
/* goo辞書汎用CSS */
/* ============================== */
/* Tools                          */
/* ============================== */
/* ============================== */
/* Generic                        */
/* ============================== */
/* sp-visible */
.sp-visible,
.sp-visible-inline,
.sp-visible-inline-block {
    display: none !important;
}

/* ============================== */
/* Base                           */
/* ============================== */
/* strong */
strong {
    font-weight: bold;
}

strong a {
    font-weight: bold;
}

/* ============================== */
/* Objects                        */
/* ============================== */
/* contents-wrap */
.contents-wrap-a {
    background: #fff;
    border-bottom: 1px #eee solid;
    border-top: 2px #9c4836 solid;
    margin: 4px 0 0;
    padding: 24px 20px 40px;
}

.contents-wrap-a .lead {
    margin: 32px 0 0;
}

.contents-wrap-a.block-top {
    margin: 0;
}

.contents-wrap-b {
    background: #fff;
    border-bottom: 1px #e5e6e9 solid;
    border-top: 2px #9c4836 solid;
    box-sizing: border-box;
    margin: 24px 0 0;
    padding: 32px 20px 40px;
}

.contents-wrap-b > .header {
    display: inline-block;
    vertical-align: middle;
    width: 455px;
}

.contents-wrap-b > .header span {
    font-size: 18px;
    font-weight: bold;
}

.contents-wrap-b > .header100 {
    display: inline-block;
    vertical-align: middle;
    width: auto;
}

.contents-wrap-b > .header.ttl-a.ttl-a-jn {
    width: 100%;
}

*:first-child + html .contents-wrap-b > .header {
    display: inline-block;
    zoom: 1;
}

.contents-wrap-b > .header img {
    vertical-align: -3%;
}

.contents-wrap-b .social-button {
    display: inline-block;
    text-align: right;
    vertical-align: middle;
    width: 180px;
}

.contents-wrap-b .social-button-ej .social-button {
    display: inline-block;
    text-align: right;
    vertical-align: middle;
    width: 100%;
}

*:first-child + html .contents-wrap-b .social-button {
    display: inline;
    zoom: 1;
}

.contents-wrap-b.bros {
    border-top: 0;
    margin: 0;
}

.tab-wrap + .contents-wrap-b {
    margin: -2px 0 0;
}

.contents-wrap-b-in {
    border-top: 2px #9c4836 solid;
    margin: 24px 0 0;
}

.contents-wrap-b-in .description {
    padding: 30px 18px 10px;
}

.contents-wrap-b-in .description small {
    font-size: 70%;
}

.contents-wrap-c {
    background: #fff;
    border-bottom: 1px #c8c8c8 solid;
    margin: 24px 0 0;
    padding: 20px 20px 10px;
    position: relative;
}

.contents-wrap-c-in {
    margin: 20px 0 0;
}

.contents-wrap-d {
    background: #fff;
    border-bottom: 1px #c8c8c8 solid;
    margin: 40px 0 0;
    padding: 48px 20px 40px;
    position: relative;
}

.contents-wrap-d-in {
    margin: 20px 0 0;
}

.contents-wrap-e {
    background: #fff;
    border-bottom: 1px #c8c8c8 solid;
    margin: 20px 0 0;
    padding: 20px 20px 40px;
    position: relative;
}

.contents-wrap-e.margin {
    margin-bottom: 24px;
}

/* search-bros-wrap */
.search-bros-wrap {
    margin: 88px 0 0;
}

/* tab-wrap */
.tab-wrap {
    margin: 4px 0 0;
}

h2 + .tab-wrap {
    margin: 0;
}

.tab-wrap-b {
    background: #eee;
    margin: 0;
    padding: 8px 10px;
}

.tab-wrap-c {
    background: #fff;
    margin: 0;
    padding: 8px 10px;
}

/* content-box */
.content-box {
    margin: 28px 0 0;
    overflow: hidden;
}

.content-box.visible {
    overflow: visible;
}

.content-box:first-child {
    margin: 20px 0 0;
}

.content-box > .title {
    margin: 24px 0 0;
}

.content-box > .title_sub {
    margin: 12px 0 0;
}

.content-box .cite {
    clear: both;
    margin: 16px 0 0;
}

.content-box p.text-b {
    margin: 16px 0 0;
}

.content-box.search-rank-main {
    display: none;
}

.content-box.search-rank-main.open {
    display: block;
}

.content-box.word {
    margin: 18px 0 0;
}

.content-box.level-title,
.content-box.category-title,
.content-box.category-idiom-title {
    margin: 0;
}

.content-box.category-sup,
.content-box.category-idiom-sup {
    margin: 28px 8px 0;
    padding: 0 0 5px;
}

.content-box-in.col2 {
    box-sizing: border-box;
    display: block;
    float: left;
    padding: 0 10px 0 0;
    vertical-align: top;
    width: 50%;
}

*:first-child + html .content-box-in.col2 {
    /* IE7対応 */
    width: 48%;
}

.content-box-in.col2 + .content-box-in.col2 {
    padding: 0 0 0 10px;
}

*:first-child + html .content-box-in.col2 {
    display: inline;
    zoom: 1;
}

.content-box-in.col3 {
    display: inline-block;
    overflow: hidden;
    width: 32%;
}

*:first-child + html .content-box-in.col3 {
    display: inline;
    zoom: 1;
}

.content-box-in.col-left {
    float: left;
    width: 18%;
}

.content-box-in.col-right {
    border-left: 2px #efefef solid;
    box-sizing: border-box;
    float: right;
    padding: 0 0 0 24px;
    width: 80%;
}

.content-box-in.margin {
    margin: 20px 0 0;
}

.category-sup .content-box-in.margin {
    padding: 0 10px;
}

/* photo-unit */
.photo-unit {
    background: #d6d6d6;
    margin: 40px 0 0;
    text-align: center;
}

.photo-unit img {
    max-width: 644px;
}

/* knowledge-unit */
.knowledge-unit {
    margin: 0 0 24px;
}

.knowledge-unit dl dt {
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 16px;
    min-width: 80px;
}

*:first-child + html .knowledge-unit dl dt {
    display: inline;
    zoom: 1;
}

.knowledge-unit dl dd {
    display: inline-block;
    font-size: 14px;
    margin: 0 0 16px;
    width: 540px;
}

*:first-child + html .knowledge-unit dl dd {
    display: inline;
    zoom: 1;
}

.knowledge-unit .senryu {
    border: 1px #efefef solid;
    margin: 24px 0;
    padding: 20px;
}

.knowledge-unit ul.kenteiquiz-list {
    display: block;
    margin: 0 0 0 20px;
}

.knowledge-unit ul.kenteiquiz-list > li {
    display: inline;
    margin-right: 12px;
    white-space: nowrap;
}

.knowledge-unit ul.kenteiquiz-list > li > a {
    font-size: 14px;
    line-height: 1.5rem;
    vertical-align: baseline;
    color: #000;
    text-decoration: none;
}

.knowledge-unit ul.kenteiquiz-list > li > a:hover {
    text-decoration: underline;
}

/* button-wrap */
.button-wrap {
    text-align: center;
}

/* aside-wrap */
.aside-wrap {
    background: #fff;
    border: 2px #eee solid;
    border-top: 2px #9c4836 solid;
    padding: 24px 20px;
}

.aside-wrap.seveices {
    padding: 16px 20px;
}

.aside-wrap.seveices a {
    line-height: 1.8;
}

.aside-wrap.seveices a:link,
.aside-wrap.seveices a:visited {
    color: #36c;
    text-decoration: none;
}

.aside-wrap.seveices a:hover {
    color: #36c;
    opacity: 0.8;
    text-decoration: underline;
}

.aside-wrap.search-rank {
    border-top: 2px #eee solid;
    margin: -2px 0 0;
    padding: 24px 10px;
}

.aside-wrap.new_words .list-simple-c {
    margin: 0;
}

.aside-wrap.new_words .list-simple-c li {
    font-size: 14px;
    padding-bottom: 10px;
}

.aside-wrap.new_words .list-simple-c li:last-child {
    padding-bottom: 0;
}

.content-box.ranking_back_number {
    margin: 0;
    overflow: hidden;
}

.content-box.ranking_back_number:first-child {
    margin: 10px 0 0;
}

/* list-search-a */
.list-search-a > li {
    /*margin: 48px 0 0;*/
    margin: 40px 0 0;
}

.list-search-a > li:first-child {
    margin: 32px 0 0;
}

.list-search-a > li a {
    display: block;
}

.list-search-a > li a:link,
.list-search-a > li a:visited {
    color: inherit;
    text-decoration: none;
}

.list-search-a > li a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: none;
}

.list-search-a.list-index {
    margin: 2px 0 0;
}

.list-search-a.list-index > li {
    margin: 24px 0 0;
}

.list-search-a.list-index > li:first-child {
    margin: 32px 0 0;
}

.list-search-a.list-index > li a {
    display: block;
}

.list-search-a.list-index > li a:link,
.list-search-a.list-index > li a:visited {
    color: inherit;
    text-decoration: none;
}

.list-search-a.list-index > li a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: none;
}

.list-search-a.list-index .title {
    float: left;
    margin: 0 8px 0 0;
}

.list-search-a.list-index .icon {
    float: left;
}

.list-search-a.list-index .icon .fa {
    margin: 0 8px 0 0;
}

.list-search-a.list-index .provide {
    float: right;
}

.list-search-a.list-index .mean {
    clear: both;
    overflow: hidden;
    padding: 12px 0 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.list-search-a-in {
    /*margin: 2px 0 0;*/
    margin: 10px 0 0;
}

.list-search-a-in .title {
    float: left;
    margin: 0 8px 0 0;
}

.list-search-a-in .icon {
    float: left;
}

.list-search-a-in .icon .fa {
    margin: 0 8px 0 0;
}

.list-search-a-in .provide {
    float: right;
}

.list-search-a-in .mean {
    clear: both;
    overflow: hidden;
    padding: 12px 0 0;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ejの辞書名表示 */
.list-search-a li.list-ej-word {
    position: relative;
}

.list-search-a li.list-ej-word .dict-name-disp {
    position: absolute;
    right: 0;
    top: 0;
}

/* list-search-b */
.list-search-b {
    border-bottom: 1px #eee solid;
}

.list-search-b > li {
    border-bottom: 1px #eee solid;
    padding: 24px 0;
}

.list-search-b-in .title {
    float: left;
}

.list-search-b-in .sup {
    float: left;
}

.list-search-b-in .list {
    clear: both;
    padding: 20px 0 0;
}

/* list-tab-a タブメニュー */
.list-tab-a {
    letter-spacing: -0.4em;
    margin: 0 0 -2px 21px;
    position: relative;
    z-index: 1;
}

.list-tab-a > * {
    letter-spacing: normal;
}

.list-tab-a li {
    background: #9c4836;
    border: 2px #9c4836 solid;
    border-bottom: 0;
    display: inline-block;
    margin: 0 5px 0 0;
    text-align: center;
    vertical-align: top;
    width: 96px;
}

*:first-child + html .list-tab-a li {
    display: inline;
    zoom: 1;
}

.list-tab-a li a {
    display: block;
    font-size: 14px;
    padding: 12px 0 10px;
}

.list-tab-a li a:link,
.list-tab-a li a:visited {
    color: #fff;
    text-decoration: none;
}

.list-tab-a li a:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

.list-tab-a li.NR-now {
    background: #fff;
    padding: 12px 0;
}

.side-list-tab-a li {
    background: #9c4836;
    border: 2px #9c4836 solid;
    border-bottom: 0;
    color: #fff;
    cursor: pointer;
    display: block;
    float: left;
    font-size: 14px;
    margin: 0 1px 0 0;
    overflow: hidden;
    padding: 7px 0 5px;
    text-align: center;
    vertical-align: top;
    width: 95px;
}

.side-list-tab-a li:link,
.side-list-tab-a li:visited {
    color: #fff;
    text-decoration: none;
}

.side-list-tab-a li:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

.side-list-tab-a li.NR-now {
    background: #fff;
    border: 2px #eee solid;
    border-bottom: 2px #fff solid;
    color: #9a4634;
    cursor: auto;
}

.side-list-tab-a li.NR-now:link,
.side-list-tab-a li.NR-now:visited {
    color: #9a4634;
    text-decoration: none;
}

.side-list-tab-a li.NR-now:hover {
    color: #9a4634;
    opacity: 0.8;
    text-decoration: none;
}

.side-list-tab-a li.NR-now:hover {
    opacity: 1;
}

/* list-tab-b */
.list-tab-b li,
.list-tab-b-ranking li,
.list-tab-b-top li {
    background: #ccc;
    border-bottom: 0;
    border-radius: 15px;
    color: #999;
    cursor: pointer;
    display: block;
    float: left;
    font-size: 14px;
    font-weight: bold;
    margin: 0 10px 0 0;
    overflow: hidden;
    padding: 8px 12px;
    text-align: center;
    vertical-align: top;
    width: auto;
}

.list-tab-b li:link,
.list-tab-b li:visited,
.list-tab-b-ranking li:link,
.list-tab-b-ranking li:visited,
.list-tab-b-top li:link,
.list-tab-b-top li:visited {
    color: #999;
    text-decoration: none;
}

.list-tab-b li:hover,
.list-tab-b-ranking li:hover,
.list-tab-b-top li:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

.list-tab-b li:hover,
.list-tab-b-ranking li:hover,
.list-tab-b-top li:hover {
    background: #9c4836;
    opacity: 1;
}

.list-tab-b li.NR-now,
.list-tab-b-ranking li.NR-now,
.list-tab-b-top li.NR-now {
    background: #fff;
    color: #000;
    cursor: auto;
    font-weight: bold;
}

.list-tab-b li.NR-now:link,
.list-tab-b li.NR-now:visited,
.list-tab-b-ranking li.NR-now:link,
.list-tab-b-ranking li.NR-now:visited,
.list-tab-b-top li.NR-now:link,
.list-tab-b-top li.NR-now:visited {
    color: inherit;
    text-decoration: none;
}

.list-tab-b li.NR-now:hover,
.list-tab-b-ranking li.NR-now:hover,
.list-tab-b-top li.NR-now:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: none;
}

.list-tab-b li.NR-now:hover,
.list-tab-b-ranking li.NR-now:hover,
.list-tab-b-top li.NR-now:hover {
    opacity: 1;
}

/* list-tag-a タグリスト */
.list-tag-a .tag {
    float: left;
}

.list-tag-a a {
    background: #e9e9e9;
    border-radius: 30px;
    color: #333;
    display: inline-block;
    margin: 0 10px 10px 0;
    padding: 5px 10px;
}

.list-tag-a a:hover {
    text-decoration: none;
}

/* list-tag-b タグリスト */
.list-tag-b {
    margin: 5px 0 0 -10px;
    overflow: hidden;
}

.list-tag-b li {
    background: #eee;
    border-radius: 5px;
    float: left;
    font-size: 12px;
    margin: 10px 0 0 10px;
    padding: 8px;
}

.list-tag-b li:before {
    color: #999;
    content: '\f02b';
    display: inline-block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    margin: 0 3px 0 0;
    text-decoration: none;
    vertical-align: middle;
}

.list-tag-b li a {
    border-bottom: 1px #000 solid;
    color: #000;
}

.list-tag-b li a:hover {
    opacity: 0.8;
    text-decoration: none;
}

/* list-data-a */
.list-data-a {
    margin: 5px 0 0;
}

.list-data-a .title {
    background: #eee;
    display: inline-block;
    padding: 5px 6px 6px;
    vertical-align: middle;
}

*:first-child + html .list-data-a .title {
    display: inline;
    zoom: 1;
}

.list-data-a .text {
    display: inline-block;
    margin: 0 16px 0 0;
    vertical-align: middle;
}

*:first-child + html .list-data-a .text {
    display: inline;
    zoom: 1;
}

/* list-data-b */
.list-data-b > li {
    margin: 28px 0 0;
}

.list-data-b > .list-data-b-in {
    padding-left: 1em;
}

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

.list-data-b > li.text {
    margin: 20px 0 0 14px;
}

.list-data-b > li.text > strong {
    /*margin-left: -0.5em;*/
    margin-left: -1.0em;
    /*padding-right: 0.5em;*/
}

.list-data-b .rh_ruby {
    font-size: 70%;
}

.list-data-b-in {
    margin: 0 0 0 1em;
}

.list-data-b-in small {
    font-size: 70%;
}

.list-data-b-in .text-jp {
    margin: 0 0 0;
}

.list-data-b-in .text-jp:first-child {
    margin: 12px 0 0;
}

.list-data-b-in .text-en {
    color: #36c;
    margin: 28px 0 0;
}

.list-data-b-in .text-en:first-child {
    color: #36c;
    margin: 12px 0 0;
}

/* 20171205 */
/*
.list-data-b-in .text-b {
    margin: 12px 0 0;
}

.list-data-b-in .text-b:first-child {
    margin: 0 0 0;
}
*/
.list-data-b-in .text-b {
    margin: 0;
}

.list-data-b-in .text-jeen {
    color: #36c;
}

.list-data-b-in .text-jejp {
    margin: 28px 0 0;
}

.list-data-b-in .text-jejp:first-child {
    margin: 12px 0 0;
}

.list-data-b-in .text-cn {
    color: #36c;
}

.list-data-b-in.daijisen_rel a {
    margin-left: 1rem;
}

.list-data-b-in.daijisen_rel a:first-child {
    margin-left: 0;
}

.category-sup .list-data-b {
    padding: 0 10px;
}

/* list-data-c */
.list-data-c {
    display: table;
    margin: 11px -11px 0;
    border-collapse: separate;
    border-spacing: 11px 0;
}

*:first-child + html .list-data-c {
    margin: 11px 0 0 -11px;
}

.list-data-c .photo {
    background: #d6d6d6;
    display: table-cell;
    height: 120px;
    text-align: center;
    vertical-align: middle;
    width: 120px;
}

*:first-child + html .list-data-c .photo {
    display: inline;
    margin-left: 11px;
    zoom: 1;
}

.list-data-c .photo img {
    max-height: 120px;
    max-width: 120px;
}

/* list-data-d */
.list-data-d:after {
    clear: both;
    content: ' ';
    display: table;
}

.list-data-d .title {
    margin: 24px 0 0;
}

.list-data-d .title:first-child {
    margin: 20px 0 0;
}

.list-data-d .text {
    margin: 12px 0 0;
}

.category-sup .list-data-d,
.category-idiom-sup .list-data-d {
    border-top: 1px #ccc dashed;
    clear: both;
    margin: 16px 0 0 8px;
    padding: 16px 0 0;
}

*:first-child + html .category-sup .list-data-d {
    border: 0;
    margin: 28px 0 0 8px;
    padding: 0;
}

.category-sup .list-data-d:first-child {
    border: 0;
    margin: 16px 0 0 8px;
    padding: 0;
}

.category-idiom-sup .list-data-d:first-child {
    border: 0;
    margin: 16px 0 0 18px;
    padding: 0;
}

.category-sup .list-data-d dt,
.category-idiom-sup .list-data-d dt {
    font-size: 16px;
}

.category-sup .list-data-d dt a,
.category-idiom-sup .list-data-d dt a {
    color: #36c;
}

.category-sup .list-data-d dt.current a {
    color: #000;
    display: inline-block;
    font-weight: bold;
    overflow: visible;
    position: relative;
    text-decoration: underline;
    z-index: 1;
}

.category-sup .list-data-d dt.current a:before {
    background: #f1e8b8;
    border-radius: 5px;
    content: ' ';
    height: 100%;
    left: -17px;
    padding: 5px 12px 4px;
    position: absolute;
    top: -5px;
    width: 100%;
    z-index: -1;
}

.category-sup .list-data-d dt.current-sp a {
    color: #000;
    font-weight: bold;
    position: relative;
    text-decoration: underline;
    z-index: 1;
}

.category-sup .list-data-d .list-simple-a,
.category-idiom-sup .list-data-d .list-simple-a {
    overflow: visible;
}

.category-sup .list-data-d .list-simple-a > li,
.category-idiom-sup .list-data-d .list-simple-a > li {
    margin: 16px 0 0;
    overflow: visible;
    padding: 0 0 0 10px;
    text-overflow: inherit;
    white-space: normal;
}

.category-sup .list-data-d .list-simple-a > li.current:before,
.category-idiom-sup .list-data-d .list-simple-a > li.current:before,
.category-idiom-sup .list-data-d .list-simple-b > li.current:before {
    color: #000;
}

.category-idiom-sup .list-data-d .list-simple-a > li.current-sp:before,
.category-idiom-sup .list-data-d .list-simple-b > li.current-sp:before {
    color: #000;
}

.category-sup .list-data-d .list-simple-a > li.current a,
.category-idiom-sup .list-data-d .list-simple-a > li.current a,
.category-idiom-sup .list-data-d .list-simple-b > li.current a,
.category-sup .list-data-d .list-simple-a .list-simple-b li.current a,
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b li.current a {
    color: #000;
    display: inline-block;
    font-weight: bold;
    overflow: visible;
    position: relative;
    text-decoration: underline;
    z-index: 1;
}

.category-sup .list-data-d .list-simple-a > li.current-sp a,
.category-idiom-sup .list-data-d .list-simple-a > li.current-sp a,
.category-idiom-sup .list-data-d .list-simple-b > li.current-sp a,
.category-sup .list-data-d .list-simple-a .list-simple-b > li.current-sp a {
    color: #000;
    font-weight: bold;
    position: relative;
    text-decoration: underline;
    z-index: 1;
}

.category-sup .list-data-d .list-simple-a > li.current > a:before,
.category-idiom-sup .list-data-d .list-simple-a > li.current > a:before {
    background: #f1e8b8;
    border-radius: 5px;
    content: ' ';
    height: 100%;
    left: -17px;
    padding: 5px 12px 4px;
    position: absolute;
    top: -5px;
    width: 100%;
    z-index: -1;
}

.category-sup .list-data-d .list-simple-a .list-simple-b li.current a:before,
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b li.current a:before {
    background: #f1e8b8;
    border-radius: 5px;
    content: ' ';
    height: 100%;
    left: -7px;
    padding: 5px 7px 4px;
    position: absolute;
    top: -5px;
    width: 100%;
    z-index: -1;
}

.category-idiom-sup .list-data-d .list-simple-a > li.current-sp > a:before {
    /*background: #f1e8b8;*/
    border-radius: 5px;
    content: ' ';
    height: 100%;
    left: -20px;
    padding: 3px 15px 2px;
    position: absolute;
    top: -3px;
    width: 100%;
    z-index: -1;
}

.category-sup .list-data-d .list-simple-a > li:before,
.category-idiom-sup .list-data-d .list-simple-a > li:before {
    margin-top: 0;
    top: 0px;
}

.category-sup .list-data-d .list-simple-a .list-simple-b,
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b {
    box-sizing: border-box;
    padding: 0 0 4px 1em;
}

.category-sup .list-data-d .list-simple-a .list-simple-b li,
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b li {
    margin: 12px 0 0;
    white-space: nowrap;
}

.category-sup .list-data-d .list-simple-a .list-simple-b li:nth-child(odd),
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b li:nth-child(odd) {
    clear: both;
}

.category-sup .list-data-d .list-simple-a .list-simple-b li:before,
.category-idiom-sup .list-data-d .list-simple-a .list-simple-b li:before {
    display: none;
}

.category-idiom-sup .list-data-d .list-simple-b > li.current > a:before {
    background: #f1e8b8;
    border-radius: 5px;
    content: ' ';
    height: 94%;
    left: -10px;
    padding: 3px 10px 2px;
    position: absolute;
    top: -3px;
    width: 100%;
    z-index: -1;
}

/* list-data-e */
.list-data-e {
    margin: 20px 0 0;
}

.category-sup .list-data-e {
    padding: 0 10px;
}

.list-data-e li {
    margin: 20px 0 0;
}

.list-data-e li .example {
    color: #000;
    font-size: 14px;
    line-height: 1.4;
}

.list-data-e li .cite {
    color: #666;
    font-size: 12px;
    margin: 10px 0 0;
}

/* link-more */
.link-more {
    margin: 36px 0 0;
    text-align: right;
}

.link-more:after {
    color: #666;
    content: '\f054';
    display: inline-block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    margin: 0 0 0 12px;
    text-decoration: none;
    vertical-align: middle;
}

.link-more a {
    color: #36c;
    font-size: 14px;
}

/* list-rank-a */
.list-rank-a > li {
    margin: 15px 0 0;
}

.list-rank-a > li:first-child {
    margin: 0;
}

.list-rank-a > li a {
    box-sizing: border-box;
    display: block;
}

.list-rank-a > li a:link,
.list-rank-a > li a:visited {
    color: inherit;
    text-decoration: none;
}

.list-rank-a > li a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: none;
}

.search-rank .list-rank-a {
    display: none;
}

.search-rank .list-rank-a.open {
    display: block;
}

.search-rank-main .list-rank-a {
    padding: 0 10px;
}

.list-rank-a-unit .rank {
    display: inline-block;
    text-align: right;
    vertical-align: top;
    width: 20px;
}

*:first-child + html .list-rank-a-unit .rank {
    display: inline;
    zoom: 1;
}

a:link .list-rank-a-unit .rank,
a:visited .list-rank-a-unit .rank {
    color: #000;
    text-decoration: none;
}

a:hover .list-rank-a-unit .rank {
    color: #000;
    text-decoration: none;
}

.search-rank-main .list-rank-a-unit .rank {
    text-align: left;
    width: 40px;
}

.search-rank .list-rank-a-unit .rank {
    width: 40px;
}

.list-rank-a-unit .title {
    display: inline-block;
    max-width: 235px;
    overflow: hidden;
    padding: 0 0 0 10px;
    text-overflow: ellipsis;
    vertical-align: top;
    white-space: nowrap;
}

*:first-child + html .list-rank-a-unit .title {
    display: inline;
    zoom: 1;
}

a:link .list-rank-a-unit .title,
a:visited .list-rank-a-unit .title {
    color: #0D47A1;
    text-decoration: none;
}

a:hover .list-rank-a-unit .title {
    color: #0D47A1;
    text-decoration: underline;
}

/* list-simple-a */
.list-simple-a {
    overflow: hidden;
}

.list-simple-a li {
    float: left;
    font-size: 14px;
    padding: 0 20px 0 10px;
    position: relative;
}

/*.list-simple-a li:before {*/
    /*color: #ccc;*/
    /*content: '\f0da';*/
    /*display: block;*/
    /*font-family: 'Font Awesome 5 Pro';*/
    /*font-size: 14px;*/
    /*font-style: normal;*/
    /*font-weight: normal;*/
    /*left: 0;*/
    /*margin-top: -7px;*/
    /*position: absolute;*/
    /*text-decoration: none;*/
    /*top: 50%;*/
    /*z-index: 2;*/
/*}*/

.list-simple-a li a:link,
.list-simple-a li a:visited {
    color: #0D47A1;
    text-decoration: none;
}

.list-simple-a li a:hover {
    color: #0D47A1;
    opacity: 0.8;
    text-decoration: underline;
}

.list-simple-a.col2 > li {
    box-sizing: border-box;
    margin: 16px 0 0 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 47%;
}

.list-simple-a.col3 > li {
    margin: 16px 0 0 14px;
    width: 13%;
}

.list-simple-a.col4 > li {
    margin: 16px 0 0 14px;
    width: 15%;
}

.list-simple-a.col_indent > li {
    margin: 16px 0 0 20px;
}

.category-sup .content-box-in > .list-simple-a li,
.category-idiom-sup .content-box-in > .list-simple-a li {
    padding: 0;
}

.category-sup .content-box-in > .list-simple-a li:before,
.category-idiom-sup .content-box-in > .list-simple-a li:before {
    display: none;
}

/* list-simple-b */
.list-simple-b {
    overflow: hidden;
}

.list-simple-b > li {
    float: left;
    padding: 0 20px 0 0;
}

.category-sup .content-box-in > .list-simple-b {
    margin: 18px 0 0;
}

.category-sup .content-box-in > .list-simple-b li {
    margin: 8px 8px 0;
    padding: 0;
    white-space: nowrap;
}

.category-sup .content-box-in > .list-simple-b > li a {
    color: #36c;
}

/* list-simple-c */
.list-simple-c {
    margin: 20px 0 0;
}

/* list-simple-d */
.list-simple-d {
    margin: 16px 0 0;
    overflow: hidden;
    padding: 10px;
}

.list-simple-d > li {
    font-size: 14px;
    margin: 0 0 10px 8px;
    padding: 0 20px 0 10px;
    position: relative;
    vertical-align: top;
}

.list-simple-d > li:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.list-simple-d > li a {
    line-height: 1.6;
}

.list-simple-d > li p {
    line-height: 1.6;
}

.list-simple-d > li a:link,
.list-simple-d > li a:visited {
    color: #333;
    text-decoration: none;
}

.list-simple-d > li a:hover {
    color: #333;
    opacity: 0.8;
    text-decoration: underline;
}

.list-simple-d > li:before {
    top: 0.7em;
}

.in-ttl-e + .list-simple-d {
    margin: 0;
}

.in-ttl-e + .list-simple-d > li {
    margin: 0 0 10px;
    padding: 0 0 0 10px;
}

.in-ttl-e + .list-simple-d > li a {
    color: #36c;
}

.list-simple-d .list-simple-b {
    box-sizing: border-box;
    padding: 0 0 0 1em;
    width: 100%;
}

.content-box-in.col2 .list-simple-d {
    padding: 10px 0 10px 10px;
}

.level-title .content-box-in.col2 .list-simple-d > li,
.category-title .content-box-in.col2 .list-simple-d > li,
.category-idiom-title .content-box-in.col2 .list-simple-d > li {
    margin: 0 0 10px;
}

.level-title .content-box-in.col2 .list-simple-d,
.category-title .content-box-in.col2 .list-simple-d,
.category-idiom-title .content-box-in.col2 .list-simple-d {
    padding: 10px 0;
}

.category-title .list-simple-d > li a:link,
.category-title .list-simple-d > li a:visited,
.category-idiom-title .list-simple-d > li a:link,
.category-idiom-title .list-simple-d > li a:visited {
    color: #36c;
    font-weight: bold;
}

.level-title .list-simple-d > li a:link,
.level-title .list-simple-d > li a:visited {
    color: #36c;
}

.aside-wrap .list-simple-d {
    list-style-type: none;
    margin: 0;
    overflow: visible;
    padding: 0;
}

.aside-wrap .list-simple-d li {
    margin: 0 0 10px;
    padding: 0 0 0 10px;
}

.aside-wrap .list-simple-d li:last-child {
    margin: 0;
}

.aside-wrap .list-simple-d li:before {
    color: #000;
}

.aside-wrap .list-simple-d li a {
    color: #36c;
    position: relative;
    z-index: 1;
}

.aside-wrap .list-simple-d li.current a {
    color: #000;
    font-weight: bold;
    display: inline-block;
    margin-left: -20px;
    padding-left: 20px;
    margin-right: -2px;
    padding-right: 10px;
    border-radius: 5px;
}

.aside-wrap .list-simple-d li.current a:before {
    background: #f1e8b8;
    border-radius: 5px;
    content: ' ';
    height: 100%;
    left: -20px;
    padding: 3px 15px 2px;
    position: absolute;
    top: -3px;
    width: 100%;
    z-index: -1;
}

.update_info .list-simple-d li:before {
    top: 6px;
}

.update_info .list-simple-d > li {
    line-height: 1.6;
}

.update_info .list-simple-d > li a,
.update_info .list-simple-d > li p {
    line-height: inherit;
}

/* list-simple-e */
.list-simple-e {
    margin: 16px 0 0;
    overflow: hidden;
}

.list-simple-e li {
    font-size: 14px;
    margin: 0 0 10px 8px;
    padding: 0 20px 0 10px;
    position: relative;
    vertical-align: top;
}

.list-simple-e li:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.list-simple-e li:before {
    top: 0.7em;
}

/* list-simple-f */
.list-simple-f {
    margin: 16px 0 0;
    overflow: hidden;
    padding: 10px;
}

.list-simple-f div {
    font-size: 14px;
    margin: 0 0 10px 8px;
    padding: 0 20px 0 10px;
    position: relative;
    vertical-align: top;
}

.list-simple-f div:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.list-simple-f div a {
    line-height: 1.6;
}

.list-simple-f div p {
    line-height: 1.6;
    padding-left: 1rem;
}

.list-simple-f div a:link,
.list-simple-f div a:visited {
    color: #333;
    text-decoration: none;
}

.list-simple-f div a:hover {
    color: #333;
    opacity: 0.8;
    text-decoration: underline;
}

.list-simple-f div:before {
    top: 0.7em;
}

/* list-simple-g */
.list-simple-g {
    overflow: hidden;
}

.list-simple-g > li {
    float: left;
    font-size: 14px;
    padding: 0 20px 0 10px;
    position: relative;
    line-height: 1.6;
}

.list-simple-g > li:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.list-simple-g li a:link,
.list-simple-g li a:visited {
    color: #36c;
    text-decoration: none;
}

.list-simple-g li a:hover {
    color: #36c;
    opacity: 0.8;
    text-decoration: underline;
}

.index-promotion {
    margin: 16px 0 0 0;
}

.index-promotion.margin-l {
    margin: 16px 0 0 16px;
}

.index-promotion p {
    display: inline;
    font-weight: bold;
}

.index-promotion ul,
.index-promotion li {
    display: inline-block;
}

.index-promotion .list-simple-g > li:before {
    margin-top: 0;
    top: 0;
}

.index-promotion .list-simple-g > li > ul > li:first-child {
    margin-left: 10px;
}

.index-promotion .list-simple-g > li > ul > li:before {
    color: #999;
    content: '>';
    font-family: monospace;
    margin: 0 5px;
}

.index-promotion .list-simple-g > li > ul > li:first-child:before {
    content: '';
    margin: 0;
}

/* list-test */
.list-test {
    margin: 24px 0 0;
    overflow: hidden;
    text-align: left;
}

.list-test input {
    margin: 0 10px 0 0;
}

.list-test label {
    display: block;
    font-size: 18px;
    font-weight: bold;
    margin: 0 20px;
}

*:first-child + html .list-test label {
    display: inline;
    zoom: 1;
}

/* list-column */
.list-column {
    margin: 0 -20px 0 0;
    overflow: hidden;
    width: 664px;
}

.list-column > li {
    float: left;
    margin: 0 20px 0 0;
    width: 200px;
}

.list-column > li .image {
    margin: 0 0 20px;
}

.list-column > li .image a:hover {
    opacity: 0.7;
}

.list-column > li .title {
    margin: 0 0 20px;
}

.list-column > li .title a {
    color: #333;
    font-size: 14px;
    font-weight: bold;
}

.list-column > li .description {
    line-height: 1.6;
}

/* list-word */
.list-word li {
    float: left;
    margin: 10px 0 0 10px;
    text-align: center;
    width: 30px;
}

.list-word.first-letter li {
    width: 70px;
}

.list-word li span {
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding: 8px;
}

.list-word li a {
    background: #eee;
    border: 1px #ccc solid;
    border-radius: 5px;
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding: 7px;
}

.list-word li a:link,
.list-word li a:visited {
    color: #333;
    text-decoration: none;
}

.list-word li a:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: none;
}

.list-word li a:hover {
    background: #9c4836;
    opacity: 1;
}

.list-word li.blank {
    padding: 15px 0;
    visibility: hidden;
}

.list-word li span.dis {
    background: #fff;
    border: 1px #fff solid;
    border-radius: 5px;
    display: block;
    font-size: 14px;
    font-weight: bold;
    padding: 7px;
}

.aside-wrap .list-word {
    margin: -10px auto 0;
    width: 200px;
}

.aside-wrap .list-word.first-letter {
    width: 250px;
}

/* side-list-a */
.side-list-a .name {
    font-weight: bold;
}

.side-list-a .list {
    margin: 15px 0 0;
}

.side-list-a .desc {
    margin: 12px 0 0;
}

/* side-list-info */
.side-list-info {
    letter-spacing: -0.4em;
}

.side-list-info > * {
    letter-spacing: normal;
}

.side-list-info > li {
    cursor: pointer;
    display: inline-block;
    margin: 20px 0 0;
    vertical-align: top;
    width: 100%;
}

*:first-child + html .side-list-info > li {
    display: inline;
    zoom: 1;
}

.side-list-info > li:first-child {
    margin: 0;
}

.side-list-info > li a:link,
.side-list-info > li a:visited {
    color: inherit;
    text-decoration: none;
}

.side-list-info > li a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: none;
}

.side-list-info-unit-1 {
    background: #ccc;
    display: inline-block;
    max-height: 80px;
    overflow: hidden;
    text-align: center;
    width: 80px;
}

*:first-child + html .side-list-info-unit-1 {
    display: inline;
    zoom: 1;
}

.side-list-info-unit-1 img {
    max-height: 80px;
    max-width: 80px;
}

.side-list-info-unit-2 {
    display: inline-block;
    margin: 0 0 0 8px;
    overflow: hidden;
    vertical-align: top;
    width: 160px;
}

*:first-child + html .side-list-info-unit-2 {
    display: inline;
    zoom: 1;
}

a:link .side-list-info-unit-2 .title,
a:visited .side-list-info-unit-2 .title {
    color: #36c;
    text-decoration: none;
}

a:hover .side-list-info-unit-2 .title {
    color: #36c;
    text-decoration: underline;
}

.side-list-info-unit-2 .text {
    margin: 10px 0 0;
}

/* top-navlist */
.top-navlist {
    letter-spacing: -0.4em;
    margin: 24px auto -24px;
    width: 660px;
}

.top-navlist li {
    background-color: #fff;
    border: 2px solid #eee;
    border-bottom: 3px #e4e2dc solid;
    display: inline-block;
    height: 61px;
    letter-spacing: normal;
    margin: 0 8px 8px 0;
    position: relative;
    width: 206px;
}

*:first-child + html .top-navlist li {
    display: inline;
    zoom: 1;
}

.top-navlist li a {
    color: #333;
    display: block;
    font-size: 16px;
    padding: 13px 10px 10px;
}

.top-navlist li a:hover {
    background: #9c4836;
    color: #fff;
    text-decoration: none;
}

*:first-child + html .top-navlist li a {
    padding: 22px 10px 22px;
}

.top-navlist li a span {
    font-weight: bold;
}

.top-navlist li a:before {
    color: #bc3518;
    content: '\f078';
    font-family: 'Font Awesome 5 Pro';
    font-size: 15px;
    margin-top: -7px;
    position: absolute;
    right: 7px;
    top: 50%;
}

.top-navlist li:hover a:before {
    color: #fff;
}

.top-navlist li:hover .ico-dictionary:before {
    background-image: url(/img/ico_dictionary_o.png);
}

/** ul li -> h2 start **/
.top-navlist h2 {
    background-color: #fff;
    border: 2px solid #eee;
    border-bottom: 3px #e4e2dc solid;
    display: inline-block;
    height: 61px;
    letter-spacing: normal;
    margin: 0 8px 8px 0;
    position: relative;
    width: 206px;
}

*:first-child + html .top-navlist h2 {
    display: inline;
    zoom: 1;
}

.top-navlist h2 a {
    color: #333;
    display: block;
    font-size: 16px;
    padding: 13px 10px 10px;
}

.top-navlist h2 a:hover {
    background: #9c4836;
    color: #fff;
    text-decoration: none;
}

*:first-child + html .top-navlist h2 a {
    padding: 22px 10px 22px;
}

.top-navlist h2 a span {
    font-weight: bold;
}

.top-navlist h2 a:before {
    color: #bc3518;
    content: '\f078';
    font-family: 'Font Awesome 5 Pro';
    font-size: 15px;
    margin-top: -7px;
    position: absolute;
    right: 7px;
    top: 50%;
}

.top-navlist h2:hover a:before {
    color: #fff;
}

.top-navlist h2:hover .ico-dictionary:before {
    background-image: url(/img/ico_dictionary_o.png);
}

/** ul li -> h2 end **/

.top-navlist .ico-dictionary {
    font-size: 40px;
    margin: 0 8px 0 0;
    vertical-align: middle;
}

.top-navlist .ico-dictionary:before {
    background: url(/img/ico_dictionary.png) no-repeat 0 0;
    content: '';
    display: inline-block;
    height: 26px;
    width: 20px;
}

*:first-child + html .top-navlist .ico-dictionary:before {
    display: inline;
    zoom: 1;
}

*:first-child + html .top-navlist .ico-dictionary {
    font-size: 20px;
}

/* list-dic-index */
.list-dic-index dt {
    padding: 0 0 16px;
}

.list-dic-index dt a {
    font-size: 18px;
    font-weight: bold;
}

.list-dic-index dt .srchnum {
    color: #999;
    font-size: 12px;
}

.list-dic-index dd .srchnum {
    color: #999;
    font-size: 12px;
}

.list-dic-index dd ul li {
    margin: 0 0 16px;
    padding: 0 0 0 8px;
}

.list-dic-index dd ul li ul {
    margin: 16px 0 16px 8px;
}

.list-dic-index dd ul li a {
    padding: 0 0 0 10px;
    position: relative;
}

.list-dic-index dd ul li a:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

/* list-dic-category */
.list-dic-category dt {
    padding: 0 0 16px;
}

.list-dic-category dt a {
    color: #36c;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.2;
}

.list-dic-category dt .srchnum {
    color: #999;
    font-size: 12px;
}

.list-dic-category dd .srchnum {
    color: #999;
    font-size: 12px;
}

.list-dic-category dd ul li {
    display: block;
    float: none;
    margin: 0 0 16px;
    padding: 0 0 0 8px;
}

.list-dic-category dd ul li ul {
    margin: 16px 0 0 8px;
}

.list-dic-category dd ul li ul li:last-child {
    margin: 0;
}

.list-dic-category dd ul li a {
    color: #36c;
    display: block;
    line-height: 1.5;
    padding: 0 0 0 10px;
    position: relative;
}

.list-dic-category dd ul li a:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    position: absolute;
    text-decoration: none;
    top: 0;
    z-index: 2;
}

/* wordnet */
.wordnet {
    margin: 32px 0 0;
}

.wordnet .content-box-in {
    padding: 16px;
}

.wordnet .content-box-in ul.list-simple-a {
    margin: 24px 0 0;
}

.wordnet .content-box-in ul.list-simple-a > li {
    font-weight: bold;
    padding-top: 3px;
    padding-bottom: 3px;
}

.wordnet .content-box-in ul.list-simple-b {
    margin-left: 10px;
}

.wordnet .content-box-in ul.list-simple-b > li {
    margin-top: 16px;
    margin-right: 0.75rem;
    padding: 0;
}

.wordnet .cite {
    padding: 0 16px;
}

.wordnet .wordnet-cite-left {
    text-align: left;
}

.content-box.new_words {
    margin: 28px 0;
    padding: 0 8px;
}

/* new_word */
.new_words .list-simple-b li {
    font-size: 14px;
    line-height: 1.6;
}

/* social-button */
.social-button li,
.social-button img {
    height: 32px;
    width: 32px;
}

.social-button li {
    display: inline-block;
    margin: 0 8px 0 0;
}

*:first-child + html .social-button li {
    display: inline;
    zoom: 1;
}

.social-button.right li {
    margin: 0 0 0 8px;
}

.social-button-wide {
    box-sizing: border-box;
    letter-spacing: -0.4em;
    margin: 28px 0 0;
    text-align: center;
}

.list-tag-b + .social-button-wide {
    margin: 15px 0 0;
}

.social-button-wide li {
    box-sizing: border-box;
    display: inline-block;
    letter-spacing: normal;
    margin: 0 0 0 10px;
    text-align: left;
    width: 208px;
}

*:first-child + html .social-button-wide {
    overflow: hidden;
}

*:first-child + html .social-button-wide li {
    display: block;
    float: left;
}

.social-button-wide li:first-child {
    margin: 0;
}

.social-button-wide li.twitter {
    background: #75b6e1;
}

.social-button-wide li.facebook {
    background: #5071bc;
}

.social-button-wide li.gplus {
    background: #e16a59;
}

.social-button-wide li a {
    display: block;
}

.social-button-wide li a:hover {
    opacity: 0.8;
}

.social-button-wide li span {
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
    height: 34px;
    line-height: 34px;
    text-align: center;
    width: 174px;
}

.social-button-wide.sp-visible li:first-child {
    margin: 0 1.5%;
}

/* ============================== */
/* Components                     */
/* ============================== */
/* header */
.ttl-a {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.2;
}

.ttl-a a:link,
.ttl-a a:visited {
    color: inherit;
    text-decoration: none;
}

.ttl-a a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: underline;
}

.ttl-a .hatsuon {
    color: #36c;
    font-size: 14px;
}

.ttl-b {
    font-size: 20px;
    line-height: 1.2;
}

.ttl-c {
    border-bottom: 1px #ccc solid;
    font-size: 18px;
    margin: 40px 0 0;
    padding: 0 0 10px;
}

.ttl-c .title {
    border-left: 2px #bc3518 solid;
    display: inline-block;
    font-weight: bold;
    line-height: 1.2;
    padding: 0 0 0 10px;
    vertical-align: middle;
}

*:first-child + html .ttl-c .title {
    display: inline;
    zoom: 1;
}

.ttl-c .sup {
    display: inline-block;
    line-height: 1.2;
    vertical-align: middle;
}

*:first-child + html .ttl-c .sup {
    display: inline;
    zoom: 1;
}

.ttl-d {
    font-size: 18px;
    font-weight: bold;
    line-height: 30px;
}

.ttl-d .title {
    margin: 24px 0 0;
}

.ttl-e {
    background: #bc3518;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    left: -8px;
    padding: 10px 20px;
    position: absolute;
    top: -16px;
}

.ttl-e:after {
    border-left: 8px solid transparent;
    border-top: 8px solid #aa2b2b;
    bottom: -8px;
    content: '';
    left: 0;
    position: absolute;
}

.ttl-f {
    background: #f5f4f3;
    border-bottom: 2px solid #9c4836;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 24px;
    padding: 10px;
}

.ttl-f .title {
    margin: 24px 0 0;
}

.contents-wrap-a .ttl-f {
    margin: 24px 0 0;
}

.contents-wrap-b .ttl-f {
    margin: 24px 0 0;
}

.contents-wrap-e .ttl-f {
    background: #f5f4f3;
    border-bottom: 2px solid #9c4836;
    color: #333;
    font-size: 18px;
    font-weight: bold;
    margin: 24px 0;
    padding: 10px;
}

.contents-wrap-e .ttl-f a,
.contents-wrap-e .ttl-f a:hover {
    color: #333;
    font-size: 18px;
    font-weight: bold;
}

.contents-wrap-e .contents-wrap-a-in .ttl-f {
    margin-bottom: 0;
}

.ttl-g {
    background: #f8f6ef;
    border: 1px #6c2618 solid;
    color: #6c2618;
    font-size: 14px;
    font-weight: bold;
    padding: 8px 8px 6px;
}

.ttl-g span {
    font-weight: bold;
}

.ttl-h {
    font-weight: bold;
    margin: 24px 0 14px;
    font-size: 14px;
}

/* search title */
.search-ttl-a {
    font-size: 18px;
    font-weight: bold;
}

a:link .search-ttl-a,
a:visited .search-ttl-a {
    color: #36c;
    text-decoration: none;
}

a:hover .search-ttl-a {
    color: #36c;
    text-decoration: underline;
}

.search-ttl-b {
    font-size: 16px;
}

.search-ttl-b a {
    font-weight: bold;
}

.search-ttl-b a:link,
.search-ttl-b a:visited {
    color: inherit;
    text-decoration: underline;
}

.search-ttl-b a:hover {
    color: inherit;
    opacity: 0.8;
}

/* lst-ttl */
.lst-ttl-edc {
    max-width: 90%;
}

.lst-ttl-clj {
    max-width: 90%;
}

.lst-ttl-cej {
    max-width: 86%;
}

/* idx-ttl */
.idx-ttl-edc {
    max-width: 88%;
}

.idx-ttl-clj {
    max-width: 90%;
}

.idx-ttl-cej {
    max-width: 84%;
}

/* in-ttl */
.in-ttl-a {
    font-size: 12px;
}

.in-ttl-b {
    font-size: 18px;
    line-height: 1.6;
    word-break: break-all;
}

.in-ttl-b i {
    font-style: italic;
    margin-right: 0;
}

.ttl-point {
    border-left: 2px #bc3518 solid;
    padding: 0 0 0 10px;
}

.in-ttl-c {
    font-size: 14px;
    font-weight: bold;
    /*line-height: 1.2;*/
    line-height: 2;
}

.in-ttl-e {
    background: #eee;
    color: #333;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.1;
    margin: 18px 0 0;
    padding: 6px 8px 2px;
}

.category-sup .in-ttl-e {
    margin: 32px 0 0;
}

.in-ttl-e:first-child {
    margin: 0;
}

.in-ttl-e a {
    border-bottom: 1px #333 solid;
    color: #333;
    display: inline-block;
    font-weight: bold;
    padding: 0 0 1px;
    text-decoration: none;
    vertical-align: middle;
}

/* side header */
.side-ttl-a {
    font-size: 18px;
    line-height: 1.2;
    margin: 30px 0 0;
    padding: 0 0 8px;
}

.side-ttl-a .fa {
    color: #9c4836;
    font-size: 16px;
    padding: 0 7px 0 0;
    vertical-align: top;
}

*:first-child + html .side-ttl-a .fa {
    padding: 0;
}

/* side Title */
.in-side-ttl-a {
    font-size: 16px;
    line-height: 1.2;
}

.in-side-ttl-b {
    font-size: 14px;
    line-height: 1.2;
}

li.text-a a {
    border-bottom: 1px dotted #ccc;
    color: #000;
}

li.text-a a:hover {
    border-bottom: 1px solid #ccc;
    color: #808080;
    opacity: 0.8;
    text-decoration: none;
}

/* for E-DIC */
li.text-a span a:link {
    border-bottom: none;
    color: #36c;
    opacity: 1;
    text-decoration: none;
}

li.text-a span a:visited {
    border-bottom: none;
    color: #609;
    opacity: 1;
    text-decoration: none;
}

li.text-a span a:hover {
    text-decoration: underline;
}

li.another-hw {
    font-size: 18px;
    max-width: 100%;
    word-wrap: break-word;
}

/* for E-DIC */

/* text */
.text-a {
    font-size: 18px;
    line-height: 1.6;
}

.text-a i {
    font-style: italic;
    margin-right: 0;
}

.text-a i a span {
    font-style: italic;
    margin-right: 0;
}

.text-b {
    font-size: 14px;
    line-height: 1.6;
}

.text-b img {
    vertical-align: middle;
}

.text-b i {
    font-style: italic;
    margin-right: 0;
}

.text-c {
    font-size: 14px;
    line-height: 1.6;
}

.text-c a:link,
.text-c a:visited {
    border-bottom: 1px #36c dotted;
    color: #36c;
    text-decoration: none;
}

.text-c a:hover {
    border-bottom: 1px #36c solid;
    color: #36c;
    opacity: 0.8;
    text-decoration: none;
}

.text-c i span {
    font-style: italic;
    font-weight: normal;
}

.text-c img {
    vertical-align: -3%;
}

.text-d {
    font-size: 14px;
    line-height: 1.6;
}

.text-d a:link,
.text-d a:visited {
    border-bottom: 1px #36c dotted;
    color: #36c;
    text-decoration: none;
}

.text-d a:hover {
    border-bottom: 1px #36c solid;
    color: #36c;
    opacity: 0.8;
    text-decoration: none;
}

.text-d i {
    font-style: italic;
    margin-right: 0;
}

.text-d img {
    vertical-align: -3%;
}

/* link-text */
.link-text-a {
    font-size: 14px;
    line-height: 1.6;
}

.link-text-a a:link,
.link-text-a a:visited {
    color: #36c;
    text-decoration: none;
}

.link-text-a a:hover {
    color: #36c;
    opacity: 0.8;
    text-decoration: underline;
}

/* box */
.box-a {
    background-color: #f5f5f5;
    overflow: hidden;
    padding: 10px;
}

.box-b {
    border: 1px solid #e3e3e3;
    margin-bottom: 28px;
    margin-top: 28px;
    overflow: hidden;
    padding: 10px;
    text-indent: 0;
}

.box-a .title:first-child,
.box-b .title:first-child {
    margin-top: 0;
}

.box-a .text,
.box-b .text {
    margin-top: 5px;
}

/* table */
.nr-info-col1 {
    width: 170px;
}

.nr-info-col2 {
    width: auto;
}

/* side text */
.side-text-a {
    font-size: 20px;
    line-height: 1.2;
}

.side-text-a a:link,
.side-text-a a:visited {
    color: inherit;
    text-decoration: none;
}

.side-text-a a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: underline;
}

.side-text-a.phrase {
    font-family: 'Times New Roman', serif;
}

.side-text-b {
    font-size: 14px;
    line-height: 1.2;
}

.side-text-b a:link,
.side-text-b a:visited {
    color: inherit;
    text-decoration: none;
}

.side-text-b a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: underline;
}

.side-text-c {
    font-size: 12px;
    line-height: 1.2;
}

.side-text-c a:link,
.side-text-c a:visited {
    color: inherit;
    text-decoration: none;
}

.side-text-c a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: underline;
}

/* rank text */
.rank-text-a {
    font-size: 14px;
    line-height: 1.2;
}

.side-rank-text-a {
    font-size: 16px;
    font-weight: bold;
}

.side-rank-text-b {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
}

/* sup */
.contents-wrap-ej .sup-a {
    color: #666;
    display: inline-block;
    font-size: 14px;
    text-align: right;
    width: 180px;
}

.sup-a {
    color: #666;
    font-size: 14px;
    text-align: right;
}

.sup-a a {
    color: #36c;
    text-decoration: none;
}

.sup-a a:hover {
    opacity: 0.8;
    text-decoration: underline;
}

.header.ttl-a + .cite.sup-a {
    display: inline-block;
    height: 84px;
    position: relative;
    vertical-align: middle;
    width: 175px;
}

*:first-child + html .header.ttl-a + .cite.sup-a {
    height: 40px;
    width: 100%;
}

.header.ttl-a + .cite.sup-a a {
    bottom: 35px;
    position: absolute;
    right: 5px;
}

.cite.sup-a.line-height {
    line-height: 1.5;
}

/* caption */
.caption-a {
    color: #666;
    font-size: 14px;
    line-height: 1.4;
    padding: 16px 0 0;
    text-align: center;
}

/* more */
.more {
    font-size: 14px;
    line-height: 1;
    margin: 24px 0 0;
    padding: 0 30px 0 0;
    position: relative;
    text-align: right;
}

.more:before {
    color: #666;
    content: '\f054';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    margin-top: -7px;
    position: absolute;
    right: 10px;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.more a:link,
.more a:visited {
    color: #36c;
    text-decoration: none;
}

.more a:hover {
    color: #36c;
    opacity: 0.8;
    text-decoration: underline;
}

/* search */
.srchnum {
    color: #666;
    font-size: 14px;
    padding-left: 10px;
}

/* pager */
.nav-paging-in {
    margin: 35px 0;
    text-align: center;
}

.nav-paging-in li {
    border: 1px #ccc solid;
    display: inline-block;
    margin: 0 5px;
    min-width: 32px;
}

*:first-child + html .nav-paging-in li {
    display: inline;
    zoom: 1;
}

.nav-paging-in li a {
    background: #fff;
    display: block;
    font-size: 14px;
    padding: 9px 0 8px;
}

.nav-paging-in li a:link,
.nav-paging-in li a:visited {
    color: #333;
    text-decoration: none;
}

.nav-paging-in li a:hover {
    color: #333;
    opacity: 0.8;
    text-decoration: underline;
}

.nav-paging-in li a:hover {
    opacity: 0.8;
}

.nav-paging-in li.NR-now a {
    background: #9c4836;
}

.nav-paging-in li.NR-now a:link,
.nav-paging-in li.NR-now a:visited {
    color: #fff;
    text-decoration: none;
}

.nav-paging-in li.NR-now a:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

.nav-paging-in li.NR-now a:hover {
    opacity: 1;
}

.nav-paging-in li.prev a,
.nav-paging-in li.next a {
    padding: 9px 10px 8px;
}

.nav-paging-in li.dot {
    border: 0;
    height: 33px;
    margin: 0 5px;
    min-width: 0;
    vertical-align: middle;
}

/* button-a */
.button-a {
    background: #1a3169;
    color: #fff;
    cursor: pointer;
    cursor: hand;
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    margin: 20px auto 0;
    padding: 15px 45px;
}

.button-a:link,
.button-a:visited {
    color: #fff;
    text-decoration: none;
}

.button-a:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

*:first-child + html .button-a {
    display: inline;
    zoom: 1;
}

.button-a span {
    display: inline-block;
    padding: 0 20px 0 0;
    position: relative;
}

*:first-child + html .button-a span {
    display: inline;
    zoom: 1;
}

.button-a span:before {
    color: inherit;
    content: '\f054';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    margin-top: -7px;
    position: absolute;
    right: 10px;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.button-a span:before {
    right: 0;
}

/* side-button-a */
.side-button-a {
    background: #1a3169;
    display: block;
    font-size: 14px;
    line-height: 1;
    margin: 20px auto 0;
    padding: 15px;
    position: relative;
    width: 180px;
}

.side-button-a:before {
    color: inherit;
    content: '\f054';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    margin-top: -7px;
    position: absolute;
    right: 10px;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.side-button-a:link,
.side-button-a:visited {
    color: #fff;
    text-decoration: none;
}

.side-button-a:hover {
    color: #fff;
    opacity: 0.8;
    text-decoration: underline;
}

.trends {
    display: inline-block;
    padding: 0.5rem 0.1rem;
    text-align: left;
    width: 640px;
}

.trends span:not(:first-child) {
    margin-left: 1.0rem;
}

.trends span {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2rem;
    vertical-align: baseline;
}

.trends span a {
    font-size: 14px;
}

.trends .fa {
    color: #000;
    display: inherit;
    margin-left: 0;
}

/* ============================== */
/* trumps                         */
/* ============================== */
/* ロゴサイズ調整 */
#NR-header-logo-goo img {
    height: 37px;
    width: 71px;
}

/* サービスロゴ */
#NR-header-logo-sv img {
    height: 37px;
    margin: 0 0 0 8px;
    width: 37px;
}

/* ナビエリア調整 */
#NR-nav {
    background: #fff;
}

/* グロナビ調整 */
#NR-nav-main {
    background: #9c4836;
}

#NR-nav-main li a {
    padding: 10px 28px;
}

#NR-nav-main li.NR-now a {
    background: #fff;
    border-bottom: 0;
}

/* サブナビ背景色調整 */
#NR-nav-sub {
    background: #fff;
}

#NR-nav-sub li a {
    border-color: #9c4836;
}

/* 検索エリア調整 */
.NR-search {
    background: #f8f6ef;
    padding: 30px 0 0;
}

.NR-search-top {
    background: #f8f6ef;
    padding: 30px 0 0;
}

.NR-search.footer {
    margin: 30px 0 0;
    padding: 40px 0;
}

.contents-wrap-a .NR-search {
    background: #fff;
    padding: 24px 0 0;
}

.contents-wrap-a .NR-search-top {
    background: #fff;
    padding: 24px 0 0;
}

.trends_area {
    box-sizing: border-box;
    margin-top: -5px;
    padding: 0 10px;
    text-align: center;
    width: 100%;
}

.trends_area_pc_bgcolor {
    background-color: #f8f6ef;
}

.contents-wrap-a .trends_area_pc_bgcolor {
    background: #fff;
}

.NR-search-in {
    padding: 0;
    width: 100%;
}

#NR-rwd .NR-search-in {
    width: 670px;
}

.search-unit {
    background: #fff;
    border: 2px #999 solid;
    display: inline-block;
    height: 46px;
    margin: 0 5px 0 0;
    position: relative;
    text-align: left;
    vertical-align: top;
    width: 562px;
}

*:first-child + html .search-unit {
    display: inline;
    margin: 0 10px 0 0;
    zoom: 1;
}

.contents-wrap-a .search-unit {
    margin: 0 10px 0 0;
    width: 550px;
}

.search-unit .menu {
    position: absolute;
    right: 5px;
    top: 5px;
    width: 140px;
    z-index: 1000;
}

.search-unit .menu p.active {
    background: #e3e3e3;
}

.search-unit .menu p a {
    background: url(/img/ico_select_arrow.png) no-repeat 90% 47%;
    color: #111;
    cursor: pointer;
    display: block;
    padding: 12px 30px 10px 10px;
}

.search-unit .menu p a:hover {
    text-decoration: none;
}

.search-unit .menu ul {
    background: #fff;
    border: 1px #ccc solid;
}

.search-unit .menu li a {
    color: #111;
    cursor: pointer;
    display: block;
    padding: 10px 30px 10px 10px;
}

.search-unit .menu li a:hover,
.search-unit .menu li a.current {
    background: #9c4836;
    color: #fff;
    text-decoration: none;
}

#search-unit_sp {
    display: none;
}

#search-button_sp {
    display: none;
}

.suggest-unit {
    background: #fff;
    border: 2px #ddd solid;
    border-top: 0 #fff solid;
    box-sizing: border-box;
    font-size: 14px;
    left: -2px;
    padding: 0;
    position: absolute;
    top: 48px;
    width: 566px;
    z-index: 1000;
}

.suggest-unit li a {
    color: #111;
    display: block;
    padding: 10px;
    text-decoration: none;
}

.suggest-unit li a:hover,
.suggest-unit li a.current {
    background-color: #9c4836;
    color: #fff;
}

.contents-wrap-a .suggest-unit {
    width: 554px;
}

.NR-text,
.NR-select {
    background-color: transparent;
    border: 0;
    vertical-align: middle;
}

.NR-text {
    color: #111;
    font-size: 18px;
    height: 20px;
    line-height: 1.6;
    padding: 14px 0 14px 10px;
    vertical-align: middle;
    width: 385px;
}

.NR-text::-webkit-input-placeholder {
    line-height: 1.6;
}

.NR-select {
    background: #fff;
    display: none;
    font-size: 14px;
}

.search-unit:hover .NR-select {
    background: #ffface;
}

.NR-search-text {
    border-width: 0;
    display: inline-block;
    line-height: 1;
    outline: 0;
    overflow: auto;
}

/* ナビゲーション */
.nav-paging .prev,
.nav-paging .next {
    border: 0;
}

.nav-paging .prev a,
.nav-paging .next a {
    font-weight: bold;
}

.nav-paging .prev a:link,
.nav-paging .prev a:visited,
.nav-paging .next a:link,
.nav-paging .next a:visited {
    color: #666;
    text-decoration: none;
}

.nav-paging .prev a:hover,
.nav-paging .next a:hover {
    color: #666;
    opacity: 0.8;
    text-decoration: underline;
}

/* パンくず調整 */
.tpath {
    background: #f8f6ef;
}

.NR-tpath {
    margin: 0 auto;
    padding: 25px 0 0;
    width: 1004px;
}

.NR-tpath ol {
    padding: 0;
}

.NR-tpath ol li {
    font-size: 14px;
    line-height: 1.6;
}

.NR-tpath h1 {
    display: inline;
    font-weight: normal;
    margin: 0;
    padding: 0;
}

.NR-tpath.footer {
    padding: 0 0 20px;
}

.NR-tpath a:link,
.NR-tpath a:visited {
    color: inherit;
    text-decoration: none;
}

.NR-tpath a:hover {
    color: inherit;
    opacity: 0.8;
    text-decoration: underline;
}

/* コンテンツエリア調整 */
#NR-wrapper {
    background: #f8f6ef;
    padding: 20px 0 0;
}

/* フッターリンク調整 */
#NR-footer-sv dt {
    margin: 0 0 10px;
}

#NR-footer-sv dd {
    margin: 0 0 10px;
    overflow: hidden;
}

#NR-footer-sv dd > ul > li:last-child,
#NR-footer-sv dd > ul > li.children {
    margin: 0;
}

#NR-footer-sv dd > ul > li > ul {
    display: block;
    margin: 0 0 10px;
    padding: 0 0 0 2em;
}

#NR-footer-sv dd > ul > li > ul > li:last-child {
    margin-right: 0;
}

#NR-footer-sv .children li {
    white-space: nowrap;
}

/* トップ収録辞書 */
#dict_list {
    margin: 24px 0 0;
}

#dict_list a {
    color: #333;
    font-size: 14px;
    line-height: 2rem;
}

#dict_list a:hover {
    color: #333;;
}

#dict_list dt,
#dict_list dt a {
    font-size: 14px;
    font-weight: bold;
}

#dict_list .children li a {
    font-size: 14px;
    line-height: 1.5rem;
}

#dict_list dt {
    clear: left;
    float: left;
    margin: 0 2rem 10px 0;
    width: 8em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#dict_list dd {
    margin: 0 0 10px;
    overflow: hidden;
}

#dict_list ul,
#dict_list li {
    display: inline;
}

#dict_list li {
    margin-right: 10px;
    white-space: nowrap;
}

#dict_list li.children {
    white-space: normal;
}

#dict_list dd > ul > li:last-child,
#dict_list dd > ul > li.children {
    margin: 0;
}

#dict_list dd > ul > li > ul {
    display: block;
    margin: 0 0 10px;
    padding: 0 0 0 2rem;
}

#dict_list dd > ul > li > ul > li:last-child {
    margin-right: 0;
}

/* 広告エリア調整 */
.NR-ad {
    text-align: center;
}

.contents-wrap-a .NR-ad,
.contents-wrap-b .NR-ad {
    margin: 24px -15px 0;
}

.contents-wrap-a .NR-ad img {
    max-width: 100%;
}

/* ad-wrap */
.ad-wrap {
    margin: 40px 0;
    text-align: center;
}

.ad-wrap-first {
    margin: 0 0 40px;
}

.ad-wrap-bottom {
    margin-top: 60px;
}

/* txtimgl */
.txtimgl {
    margin: 0;
}

.txtimgl dt {
    background: #f8f6ef;
    font-size: 18px;
    line-height: 1.2;
    margin: 30px 0 0;
    padding: 0 0 8px;
}

.txtimgl dt + dd {
    background: #fff;
    border: 2px #eee solid;
    border-bottom: 0;
    border-top: 2px #9c4836 solid;
    padding: 24px 20px 0;
}

.txtimgl dt + dd .NR-txtimgl-img {
    left: 20px;
    top: 24px;
}

.txtimgl dd {
    background: #fff;
    border: 2px #eee solid;
    border-bottom: 0;
    border-top: 0;
    margin: 0;
    padding: 16px 20px 0;
}

.txtimgl dd .NR-txtimgl-img {
    left: 20px;
    top: 16px;
}

.txtimgl dd .NR-txtimgl-img:hover {
    opacity: 0.8;
}

.txtimgl + .clearboth {
    background: #fff;
    border: 2px #eee solid;
    border-top: 0;
    display: block;
    height: 24px;
}

.txtimgl .NR-txtimgl-txt {
    font-size: 12px;
    line-height: 1.2;
}

.txtimgl .NR-txtimgl-txt:link,
.txtimgl .NR-txtimgl-txt:visited {
    color: #333;
    text-decoration: none;
}

.txtimgl .NR-txtimgl-txt:hover {
    color: #333;
    opacity: 0.8;
    text-decoration: underline;
}

.txtimgl .NR-txtimgl-txt.black {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.2;
}

.txtimgl .NR-txtimgl-txt.black:link,
.txtimgl .NR-txtimgl-txt.black:visited {
    color: #36c;
    text-decoration: none;
}

.txtimgl .NR-txtimgl-txt.black:hover {
    color: #36c;
    opacity: 0.8;
    text-decoration: underline;
}

/* contents-wrap-senryu */
.contents-wrap-senryu {
    background: #fff;
    border-bottom: 1px #eee solid;
    font-size: 14px;
    margin: 24px 0 0;
    padding: 0 0 20px;
}

.contents-wrap-senryu h1 {
    text-align: center;
}

.contents-wrap-senryu .lead {
    line-height: 1.6;
}

.contents-wrap-senryu .social-button {
    margin: 0 0 24px;
    text-align: right;
    vertical-align: middle;
}

.content-box-senryu {
    margin: 0;
    padding: 20px;
}

.content-box-senryu h2 {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 20px;
}

.content-box-senryu .question-unit {
    border: 1px #ccc solid;
    border-bottom: 0 #fff solid;
    padding: 0 0 40px;
    position: relative;
}

.content-box-senryu .question-unit:after {
    background: url(/senryu_quiz/img/bg_baloon_01.png) no-repeat 0 0;
    bottom: -20px;
    content: '';
    display: block;
    height: 20px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    width: 50px;
    z-index: 2;
}

.content-box-senryu .question-unit .info {
    background: #9c4836;
    border-radius: 30px;
    color: #fff;
    display: inline-block;
    left: -10px;
    padding: 10px 15px;
    position: absolute;
    top: -24px;
}

*:first-child + html .content-box-senryu .question-unit .info {
    display: inline;
    zoom: 1;
}

.content-box-senryu .question-unit .info .num {
    font-weight: bold;
    margin: 0 10px 0 0;
}

.content-box-senryu .question-unit .ttl {
    background: #e8c11a;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 24px;
    padding: 20px;
}

.content-box-senryu .question-unit .link-category {
    margin: 0 0 24px;
    padding: 0 20px;
    text-align: right;
}

.content-box-senryu .question-unit .link-category a {
    padding: 0 0 0 15px;
    position: relative;
}

.content-box-senryu .question-unit .link-category a:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.content-box-senryu .question-unit .senryu {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 24px;
    text-align: center;
}

.content-box-senryu .question-unit .senryu br {
    display: none;
}

.content-box-senryu .question-unit .author {
    margin: 0 0 40px;
    text-align: center;
}

.content-box-senryu .question-unit .description {
    color: #999;
    text-align: center;
}

.content-box-senryu .hint-unit {
    background: #efefef;
    border: 1px #ccc solid;
    margin: 0 0 40px 0;
    position: relative;
}

.content-box-senryu .hint-unit .ttl {
    background: #92780a;
    color: #fff;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 24px;
    padding: 20px;
}

.content-box-senryu .hint-unit .txt {
    line-height: 1.6;
    margin: 0 auto 24px;
    text-align: center;
    width: auto;
}

.content-box-senryu .hint-unit .txt p {
    color: #36c;
    font-size: 30px;
    font-weight: bold;
}

.content-box-senryu .hint-unit .txt a {
    border-bottom: 1px #36c dotted;
    color: #36c;
    font-size: 30px;
    font-weight: bold;
    margin: 0 5px;
    text-align: center;
    text-decoration: none;
}

.content-box-senryu .hint-unit .translation {
    color: #999;
    margin: 0 0 40px;
    text-align: center;
}

.content-box-senryu .input-unit {
    text-align: center;
}

.content-box-senryu .input-unit .notice {
    color: #999;
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 24px;
    text-align: center;
}

.content-box-senryu .input-unit .notice em {
    color: #9c4836;
    font-weight: bold;
}

.content-box-senryu .input-unit input {
    border: 2px #000 solid;
    display: block;
    font-size: 20px;
    font-weight: bold;
    margin: 0 auto 24px;
    padding: 10px;
}

.content-box-senryu .input-unit .button-a {
    margin: 0 0 40px;
}

.content-box-senryu .column-unit {
    background: #f1e8b8;
    border: 1px #ccc solid;
    margin: 40px 0 0;
    padding: 20px;
}

.content-box-senryu .column-unit .ttl {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 20px;
}

.content-box-senryu .column-unit .txt {
    line-height: 1.6;
}

.content-box-senryu .answer-unit {
    background: #eac51c;
    border: 1px #ccc solid;
    margin: 0 0 40px;
    padding: 20px;
    position: relative;
}

.content-box-senryu .answer-unit .answer-unit-in {
    background: #fff;
    overflow: hidden;
    padding: 40px;
    position: relative;
    text-align: center;
}

.content-box-senryu .answer-unit .answer-unit-in:before {
    content: '';
    display: inline-block;
    height: 115px;
    left: -100px;
    position: relative;
    top: -20px;
    width: 115px;
    z-index: 2;
}

*:first-child + html .content-box-senryu .answer-unit .answer-unit-in:before {
    display: inline;
    zoom: 1;
}

.content-box-senryu .answer-unit .answer-unit-in .txt {
    display: inline-block;
    line-height: 2;
    margin: 0 0 20px -110px;
    text-align: center;
    vertical-align: top;
}

*:first-child + html .content-box-senryu .answer-unit .answer-unit-in .txt {
    display: inline;
    zoom: 1;
}

.content-box-senryu .answer-unit .answer-unit-in .txt em {
    color: #9c4836;
    font-size: 24px;
    font-weight: bold;
}

.content-box-senryu .answer-unit .answer-unit-in .senryu {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 24px;
    text-align: center;
}

.content-box-senryu .answer-unit .answer-unit-in .senryu span {
    color: #9c4836;
    font-weight: bold;
}

.content-box-senryu .answer-unit .answer-unit-in .senryu br {
    display: none;
}

.content-box-senryu .answer-unit .answer-unit-in .author {
    text-align: center;
}

.content-box-senryu .answer-unit.answer-ok .answer-unit-in:before {
    background: url(/senryu_quiz/img/ico_ok_01.png) no-repeat 0 0;
}

.content-box-senryu .answer-unit.answer-ng .answer-unit-in:before {
    background: url(/senryu_quiz/img/ico_ng_01.png) no-repeat 0 0;
}

.content-box-senryu .error-unit {
    padding: 40px 0;
}

.content-box-senryu .error-unit .txt {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 40px;
    text-align: center;
}

.content-box-senryu .error-unit .txt span {
    color: #9c4836;
    font-weight: bold;
}

.content-box-senryu .error-unit .back {
    text-align: center;
}

.content-box-senryu .error-unit .back a {
    padding: 0 0 0 15px;
}

.content-box-senryu .list-tag {
    margin: 0 0 40px;
}

.content-box-senryu .list-tag ul {
    letter-spacing: -0.4em;
}

.content-box-senryu .list-tag ul li {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 10px 10px 0;
}

*:first-child + html .content-box-senryu .list-tag ul li {
    display: inline;
    zoom: 1;
}

.content-box-senryu .list-tag ul li a {
    background: #eee;
    border-radius: 20px;
    color: #999;
    display: block;
    padding: 10px 20px;
}

.content-box-senryu .list-tag ul li a.current {
    background: #9c4836;
    color: #fff;
}

.content-box-senryu .list-archive-wrap ul {
    border-top: 1px #eee solid;
}

.content-box-senryu .list-archive-wrap ul li {
    border-bottom: 1px #eee solid;
}

.content-box-senryu .list-archive-wrap ul li a {
    color: #111;
}

.content-box-senryu .list-archive-wrap ul li a:hover {
    text-decoration: none;
}

.content-box-senryu .list-archive-wrap ul li dl {
    padding: 30px 0;
    text-align: center;
}

.content-box-senryu .list-archive-wrap ul li dl dt {
    color: #111;
    font-size: 20px;
    font-weight: bold;
    margin: 0 0 24px;
}

.content-box-senryu .list-archive-wrap ul li dl dt:hover {
    text-decoration: underline;
}

.content-box-senryu .list-archive-wrap ul li dl dd {
    color: #333;
    font-size: 16px;
}

.content-box-senryu .list-archive-wrap ul li dl dd:hover {
    text-decoration: none;
}

.backnumber {
    text-align: center;
}

.backnumber a {
    padding: 0 0 0 15px;
}

/* contents-wrap-english */
.contents-wrap-english {
    background: #fff;
    border-bottom: 1px #eee solid;
    font-size: 14px;
    margin: 24px 0 0;
    padding: 24px 20px 40px;
}

.contents-wrap-english h1 {
    margin: 0 0 24px;
    text-align: center;
}

.contents-wrap-english .lead {
    line-height: 1.6;
    margin: 32px 0 0;
}

.contents-wrap-english .social-button {
    text-align: right;
    vertical-align: middle;
}

.contents-wrap-english.block-top {
    margin: 0;
}

.content-box-english {
    border: 5px #699be1 solid;
    margin: 24px 0;
}

.content-box-english .ttl-box {
    background: #699be1;
    box-sizing: border-box;
    color: #fff;
    font-size: 20px;
    padding: 10px;
}

.content-box-english .ttl-box .num {
    display: inline-block;
    font-size: 20px;
    line-height: 1.6;
    margin: 0 10px 0 0;
    vertical-align: middle;
}

*:first-child + html .content-box-english .ttl-box .num {
    display: inline;
    zoom: 1;
}

.content-box-english .ttl-box .update {
    display: inline-block;
    font-size: 14px;
    line-height: 1.6;
    vertical-align: middle;
}

*:first-child + html .content-box-english .ttl-box .update {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in {
    line-height: 1.6;
    padding: 20px 16px;
}

.content-box-english .content-box-english-in p a {
    border-bottom: 1px #36c dotted;
    text-decoration: none;
}

.content-box-english .content-box-english-in .list-backnumber li {
    margin: 0 0 8px;
}

.content-box-english .content-box-english-in .list-backnumber li a {
    display: inline-block;
    line-height: 1.2;
    padding: 0 0 0 20px;
    position: relative;
}

.content-box-english .content-box-english-in .btn_more_backnumber {
    text-align: center;
}

*:first-child + html .content-box-english .content-box-english-in .list-backnumber li a {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in .list-backnumber li a:before {
    color: #ccc;
    content: '\f0da';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 14px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -7px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

.content-box-english .content-box-english-in .example-unit {
    padding: 24px 0;
}

.content-box-english .content-box-english-in .example-unit dl {
    box-sizing: border-box;
    letter-spacing: -0.4em;
    width: 100%;
}

.content-box-english .content-box-english-in .example-unit dl dt {
    display: inline-block;
    font-weight: bold;
    letter-spacing: normal;
    line-height: 1.2;
    margin: 0 0 10px;
    vertical-align: top;
    width: 10%;
    word-break: break-all;
}

*:first-child + html .content-box-english .content-box-english-in .example-unit dl dt {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in .example-unit dl dd {
    display: inline-block;
    letter-spacing: normal;
    line-height: 1.2;
    margin: 0 0 10px;
    vertical-align: top;
    width: 88%;
    word-break: break-all;
}

*:first-child + html .content-box-english .content-box-english-in .example-unit dl dd {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in .example-unit dl a {
    border-bottom: 1px #36c dotted;
    color: #36c;
    text-decoration: none;
}

.content-box-english .content-box-english-in .point-unit {
    background: #fdfdd7;
    border: 3px #dd4c39 dashed;
    margin: 40px 0 24px;
    padding: 24px 20px 16px;
    position: relative;
}

.content-box-english .content-box-english-in .point-unit h3 {
    background: #dd4c39;
    border-radius: 32px;
    color: #fff;
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    left: 20px;
    padding: 5px 16px 3px;
    position: absolute;
    top: -20px;
}

*:first-child + html .content-box-english .content-box-english-in .point-unit h3 {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in .point-unit p {
    font-size: 24px;
    margin: 12px 0;
    position: relative;
    width: 100%;
}

.content-box-english .content-box-english-in .point-unit p span {
    display: inline-block;
    font-size: 32px;
    font-size: 0;
    font-weight: bold;
    height: 32px;
    margin: 0 10px 0 0;
    position: relative;
    vertical-align: top;
    width: 32px;
}

*:first-child + html .content-box-english .content-box-english-in .point-unit p span {
    display: inline;
    zoom: 1;
}

.content-box-english .content-box-english-in .point-unit .ok span {
    background: url(/mistake_english/img/ico_ok.png) no-repeat 0 50%;
    color: #f00;
}

.content-box-english .content-box-english-in .point-unit .ng span {
    background: url(/mistake_english/img/ico_ng.png) no-repeat 0 50%;
    color: #00f;
}

.content-box-english .content-box-english-in .author {
    color: #999;
}

.sankei-banner {
    margin: 0 0 24px;
    text-align: center;
}

.backnumber {
    text-align: center;
}

.backnumber a {
    padding: 0 0 0 15px;
    position: relative;
}

.backnumber a:before {
    color: #333;
    content: '\f054';
    display: block;
    font-family: 'Font Awesome 5 Pro';
    font-size: 12px;
    font-style: normal;
    font-weight: normal;
    left: 0;
    margin-top: -6px;
    position: absolute;
    text-decoration: none;
    top: 50%;
    z-index: 2;
}

/* PowerTip Plugin */
#powerTip {
    background-color: rgba(0, 0, 0, 0.8);
    background-color: #333;
    border-radius: 3px;
    color: #fff;
    cursor: default;
    display: none;
    font-size: 11px;
    padding: 6px 8px;
    position: absolute;
    white-space: nowrap;
    z-index: 2147483647;
}

#powerTip:before {
    content: '';
    position: absolute;
}

#powerTip.n:before,
#powerTip.s:before {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    left: 50%;
    margin-left: -5px;
}

#powerTip.e:before,
#powerTip.w:before {
    border-bottom: 5px solid transparent;
    border-top: 5px solid transparent;
    margin-top: -5px;
    top: 50%;
}

#powerTip.n:before {
    border-top: 10px solid #333;
    border-top: 10px solid rgba(0, 0, 0, 0.8);
    bottom: -10px;
}

#powerTip.e:before {
    border-right: 10px solid #333;
    border-right: 10px solid rgba(0, 0, 0, 0.8);
    left: -10px;
}

#powerTip.s:before {
    border-bottom: 10px solid #333;
    border-bottom: 10px solid rgba(0, 0, 0, 0.8);
    top: -10px;
}

#powerTip.w:before {
    border-left: 10px solid #333;
    border-left: 10px solid rgba(0, 0, 0, 0.8);
    right: -10px;
}

#powerTip.ne:before,
#powerTip.se:before {
    border-left: 0;
    border-right: 10px solid transparent;
    left: 10px;
}

#powerTip.nw:before,
#powerTip.sw:before {
    border-left: 10px solid transparent;
    border-right: 0;
    right: 10px;
}

#powerTip.ne:before,
#powerTip.nw:before {
    border-top: 10px solid #333;
    border-top: 10px solid rgba(0, 0, 0, 0.8);
    bottom: -10px;
}

#powerTip.se:before,
#powerTip.sw:before {
    border-bottom: 10px solid #333;
    border-bottom: 10px solid rgba(0, 0, 0, 0.8);
    top: -10px;
}

#powerTip.nw-alt:before,
#powerTip.ne-alt:before,
#powerTip.sw-alt:before,
#powerTip.se-alt:before {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 10px solid #333;
    border-top: 10px solid rgba(0, 0, 0, 0.8);
    bottom: -10px;
    left: 10px;
}

#powerTip.ne-alt:before {
    left: auto;
    right: 10px;
}

#powerTip.sw-alt:before,
#powerTip.se-alt:before {
    border-bottom: 10px solid #333;
    border-bottom: 10px solid rgba(0, 0, 0, 0.8);
    border-top: none;
    bottom: auto;
    top: -10px;
}

#powerTip.se-alt:before {
    left: auto;
    right: 10px;
}

/* imported from old css file */
#NR-main div.kokugo div.explanation img {
    vertical-align: middle;
}

#NR-main div.kokugo div.explanation ul {
    padding: 5px 0;
}

#NR-main div.kokugo div.explanation ul li {
    list-style: none;
    margin: 20px 0 20px 0;
}

/*#NR-main div.kokugo div.explanation ul li a {margin: 0 0 0 15px ;line-height: 20px;}*/
#NR-main div.kokugo div.explanation ul li a.camera {
    margin: 0 0 0 4px;
}

#NR-main div.kokugo div.explanation ul li.synonym {
    background: url(/img/renewal2010/icon_synonym.gif) no-repeat;
    line-height: 19px;
    padding: 0 0 10px 60px;
}

#NR-main div.kokugo div.explanation ul li.related {
    background: url(/img/renewal2010/icon_relatedword.gif) no-repeat;
    line-height: 19px;
    padding: 0 0 10px 60px;
}

#NR-main div.kokugo div.explanation ul li span.synonym_ref {
    font-weight: bold;
}

#NR-main div.kokugo div.explanation ul li span.synonym_ref a {
    margin: 0 0 0 0;
}

#list_backnumber li.hide {
    display: none;
}

div.enditImg {
    float: right;
    margin: 0 20px 20px 0;
}

/* senryu img */
.question-unit-in img {
    margin-left: 3px;
    margin-right: 3px;
}

em {
    font-weight: bold;
}

.prog_parent {
    font-size: 16px;
    margin-top: 16px;
}

img.gaiji {
    height: 18px;
    vertical-align: middle;
}

img.prog_gaiji {
    height: 18px;
    vertical-align: middle;
}

h1.ttl-cj img.prog_gaiji {
    height: 22px;
    vertical-align: -2px;
}

h2.ttl-cj img.prog_gaiji {
    vertical-align: -2px;
}

.search-ttl-cj img.prog_gaiji {
    vertical-align: -2px;
}

.crumb-cj img.prog_gaiji {
    height: 16px;
    vertical-align: -2px;
}

div.content-box-cj img.prog_gaiji {
    vertical-align: -2px;
}

hatsuon .prog_gaiji {
    height: 27px;
}

.cjHelpArea p {
    padding-left: 1em;
}

.column_ref {
    margin-bottom: 10px;
    text-align: right;
}

.column_ref img {
    vertical-align: middle;
}

/*---------- progressive --------------*/
div.column {
    background: #f2f9ff;
    border: 1px solid #bdd8ef;
    font-size: 18px;
    line-height: 1.4em;
    margin: 15px 20px;
    padding: 15px;
}

/*---------- thsrs --------------*/
#NR-main ul.candidate {
    line-height: 19px;
    list-style: none;
    margin: 0;
    padding: 15px 0;
}

#NR-main ul.candidate li a {
    margin: 0 10px 0 0;
}

#NR-main ul.candidate li.relation {
    background: url(/img/renewal2010/icon_relatedword.gif) no-repeat;
    padding: 0 0 0 57px;
}

/*-------- .comparisonTable --------*/
#NR-main .comparisonTable {
    padding: 10px 0 5px 1em;
}

#NR-main .comparisonTable table {
    font-family: 'ＭＳ Ｐゴシック', 'MS PGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro';
    margin: 0;
    padding: 0;
    border-collapse: collapse;
    border-spacing: 0;
}

#NR-main .comparisonTable table tr th,
#NR-main .comparisonTable table tr td {
    border: 1px solid #ccc;
    font-size: 12px;
    font-weight: normal;
    line-height: normal;
    margin: 0;
    padding: 7px 10px;
    text-align: center;
    vertical-align: middle;
    width: 67px;
}

.related-word a {
    margin-right: 10px;
}

/* igakukan  table *************************************/
div.igakukanTable {
    margin: 0 15px 40px;
}

div.igakukanTable table {
    border: 0;
    border-bottom: #bcbcbc 1px solid;
    border-top: #bcbcbc 1px solid;
    font-size: 90%;
    width: 100%;
}

div.igakukanTable table caption {
    font-size: 100%;
    font-weight: bold;
    padding-bottom: 5px;
    text-align: left;
    vertical-align: top;
}

div.igakukanTable table td {
    border-bottom: #bcbcbc 1px dotted;
    border-left: #bcbcbc 1px solid;
    padding: 5px 10px;
    text-align: left;
    vertical-align: top;
}

div.igakukanTable table th {
    background: url('../img/table_dotline.gif') repeat-x bottom #ebf6ff;
    border-right: #fff 2px solid;
    border-top: #fff 2px solid;
    padding: 5px 10px;
    text-align: left;
    vertical-align: top;
    white-space: nowrap;
}

div.igakukanTable table td.noLine {
    border-bottom: 0;
    padding-bottom: 2px;
}

div.igakukanTable table th.noDotline {
    background-color: #ebf6ff;
    background-image: none;
    border-bottom: #fff 2px solid;
    padding-bottom: 2px;
}

div.igakukanTable2 {
    margin: 0 15px 25px;
}

div.igakukanTable2 table {
    border: 0;
    border-bottom: #bcbcbc 1px solid;
    border-top: #bcbcbc 1px solid;
    font-size: 90%;
    width: 100%;
}

div.igakukanTable2 table caption {
    font-size: 100%;
    font-weight: bold;
    padding-bottom: 5px;
    text-align: left;
    vertical-align: top;
}

div.igakukanTable2 table td {
    background: url('../img/table_dotline.gif') repeat-x bottom #f4f4f4;
    border-top: #fff 2px solid;
    padding: 5px 10px 10px;
    text-align: left;
    vertical-align: top;
}

div.igakukanTable2 table td.noDotline2 {
    background-color: #f4f4f4;
    background-image: none;
    border-bottom: #fff 2px solid;
}

div.igakukanTable2 ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

div.igakukanTable2 ul li {
    background: url('../img/listmark_gray.gif') 0 6px no-repeat;
    margin: 0;
    padding: 0 0 0 15px;
}

div.listtable {
    margin: 10px 0;
    text-indent: 0;
}

div.listtable tr td:first-child {
    width: 20%;
}

sup {
    font-size: smaller;
    vertical-align: super;
}

sub {
    font-size: smaller;
    vertical-align: sub;
}

.fa {
    color: #000;
    display: inherit;
    margin-left: 5px;
}

.fa.inline {
    color: #000;
    display: inline;
    margin-left: 5px;
    margin-right: 5px;
}

.tc {
    text-align: center;
}

.a_color a {
    color: #36c !important;
}

.a_color:visited a {
    color: #609 ! important;
}

span.btn_sound img {
    vertical-align: middle;
}

.text-c.ref {
    color: #666;
    font-size: 12px;
}

img[type='flag'] {
    display: none;
}

.text-indent {
    padding-left: 1em;
    text-indent: -1em;
}

.text-indent-3em {
    padding-left: 3em;
    text-indent: -3em;
}

.no-text-indent {
    padding-left: 0;
    text-indent: 0;
}

span[data-type='hatsuon'] i {
    margin-right: 0;
}

#sns-buttons {
    height: 20px;
}

#sns-buttons span {
    float: right;
    margin: 0;
    padding: 0;
}

#sns-buttons span.rgtspace {
    padding-right: 12px;
}

#sns-buttons table {
    margin: 0;
    padding: 0;
}

#sns-buttons table td {
    background: transparent no-repeat url(/img/sns-bubble.png);
    color: #464646;
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: normal;
    height: 20px;
    margin: 0;
    padding: 0;
}

#sns-buttons table td.count-value {
    background-position: -6px 0;
    vertical-align: middle;
    top-margin: 4px;
}

#sns-buttons table td.count-open {
    width: 11px;
}

#sns-buttons table td.count-close {
    background-position: -40px 0;
    width: 7px;
}

.flash-sound {
    vertical-align: -10%;
}

/* Trac-6133 */
#sp-backlink-biglobe {
    text-align: right;
}

#sp-backlink-biglobe ul li {
    margin: 10px 0 3px 0;
}

#sp-backlink-biglobe ul li a:link,
#sp-backlink-biglobe ul li a:visited {
    color: #333;
    text-decoration: none;
}

#sp-backlink-biglobe ul li a:hover {
    color: #333;
    opacity: 0.8;
    text-decoration: underline;
}

#NR-header-biglobe {
    text-align: right;
}

#NR-header-biglobe-logo {
    max-height: 18px;
    width: auto;
    margin-left: 10px;
}

/** ページトップへリンク **/
#NR-backToTop {
    display: none;
}

/** /ページトップへリンク **/

.je-leaf .contents-wrap-b > .header {
    width: 100%;
}

.je-leaf .ttl-b a,
.je-leaf .ttl-b a:hover,
.je-leaf .ttl-b a:visited {
    color: #000;
    font-weight: bold;
}

.je-leaf .contents-wrap-b-in {
    border-top: none;
}

.je-leaf hr.mt {
    margin-top: 32px;
}

.mb32 {
    margin-bottom: 32px;
}

.bt_b {
    border-top: 2px #9c4836 solid;
}

/* right_side sns share button */
.social-button-wide.right_side li {
    box-sizing: border-box;
    float: left;
    letter-spacing: normal;
    margin: 0;
    text-align: center;
    width: 86px;
    margin-right: 10px;
    border-radius: 2px;
}

.social-button-wide.right_side li:hover {
    filter: alpha(opacity=75);
    -moz-opacity: 0.75;
    opacity: 0.75;
}

*:first-child + html .social-button-wide.right_side {
    overflow: hidden;
}

*:first-child + html .social-button-wide.right_side li {
    display: block;
    float: left;
}

.social-button-wide.right_side li:last-child {
    margin: 0;
}

.social-button-wide.right_side li.twitter {
    background: #5EA9DD;
    border-bottom: 3px #267DB7 solid;
}

.social-button-wide.right_side li.facebook {
    background: #3C589D;
    border-bottom: 3px #2D4275 solid;
}

.social-button-wide.right_side li.gplus {
    background: #DC4B38;
    border-bottom: 3px #AC301E solid;
}

.social-button-wide.right_side li a {
    display: block;
    padding: 8px 0 6px 0;
}

.social-button-wide.right_side li span {
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    display: inline;
    height: auto;
    line-height: inherit;
}

.social-button-wide.right_side {
    margin: 0 0 5px;
}

div.right_side_sns .basic_title {
    border-bottom: 1px #e5e6e9 solid;
    width: 100%;
}

div.right_side_sns .mb5 {
    margin-bottom: 5px !important;
}

div.right_side_sns .basic_title h2.nolink {
    padding: 12px 10px 12px 10px !important;
    font-weight: bold;
    color: #000;
}

div.right_side_sns .basic_title h2 {
    line-height: 120%;
    font-size: 14px;
}

div.right_side_sns .basic_title:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}

div.right_side_sns .contents_area {
    padding: 10px;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 150%;
    word-break: break-all;
    width: 100%;
}

div.section.right_side_sns {
    /* border-radius: 3px; */
    padding: 0;
    background: #fff;
    margin: 0 0 10px 0;
}

div.right_side_sns a {
    color: #0D47A1;
    text-decoration: none;
}

.contents-wrap-f {
    background: #fff;
    border-bottom: 1px #eee solid;
    border-top: 3px #f60 solid;
    margin: 28px 0 0;
    padding: 24px 20px 20px;
}

.contents-wrap-f-in {
    margin: 20px 0 0;
    position: relative;
}

.contents-wrap-f .content-box p.text-b:first-child {
    margin: 0;
}

.contents-wrap-f .content-box.sns {
    margin: 0;
    text-align: right;
}

.contents-wrap-f .photo-unit.block-top {
    margin: 15px 0 0;
}

.contents-wrap-f .list-simple-a.col2 > li {
    margin: 16px 0 0;
    padding: 0 20px 0 18px;
    width: 50%;
}

.contents-wrap-f .list-simple-a.col2 > li:before {
    left: 8px;
}

.contents-wrap-f .list-simple-a.col3 > li {
    margin: 16px 0 0 14px;
    width: 13%;
}

.contents-wrap-f .list-simple-b > li {
    line-height: 1.6;
}

.contents-wrap-f .list-simple-b {
    margin: 16px 0 0;
}

/* list-article */
.contents-wrap-f .list-article {
    border-bottom: 1px solid #eee;
    letter-spacing: -0.4em;
}

.contents-wrap-f .list-article li {
    border-top: 1px solid #eee;
    display: inline-block;
    letter-spacing: normal;
    margin: 0 0 0 24px;
    width: 310px;
}

.contents-wrap-f .list-article li:nth-child(2n+1) {
    margin: 0;
}

.contents-wrap-f .list-article li:first-child,
.contents-wrap-f .list-article li:nth-child(2) {
    border: 0;
}

.contents-wrap-f .list-article li a {
    display: table;
    padding: 8px 0;
    table-layout: fixed;
    text-decoration: none;
    width: 100%;
}

.contents-wrap-f .list-article li a:hover {
    opacity: 0.8;
}

.contents-wrap-f .list-article li .box-image,
.contents-wrap-f .list-article li .box-text {
    box-sizing: border-box;
    display: table-cell;
    vertical-align: top;
}

.contents-wrap-f .list-article li .box-image {
    height: 80px;
    width: 80px;
}

.contents-wrap-f .list-article li .box-image img {
    max-height: 100%;
    max-width: 100%;
}

.contents-wrap-f .list-article li .box-text {
    padding: 0 0 0 12px;
}

.contents-wrap-f .list-article li .box-text .ttl {
    color: #36c;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.2;
}

.contents-wrap-f .list-article li .box-text .text {
    color: #666;
    font-size: 12px;
    line-height: 1.5;
    margin: 3px 0 0;
}

.social-button-wide.new li a {
    border-radius: 3px;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    height: 42px;
    line-height: 44px;
    text-align: center;
    text-decoration: none;
}

.social-button-wide.new {
    margin: 20px 0 0;
}

.social-button-wide.new li a:before {
    content: ' ';
    display: inline-block;
    margin: 0 12px 0 0;
    vertical-align: middle;
}

.social-button-wide.new li.twitter {
    background: none;
}

.social-button-wide.new li.twitter a {
    background: #1da1f2;
    box-shadow: 0 2px 0 0 #5698cb;
}

.social-button-wide.new li.twitter a:before {
    background: url(/img/sns/ico_twitter_02.png) no-repeat 0 0;
    height: 19px;
    width: 24px;
}

.social-button-wide.new li.facebook {
    background: none;
}

.social-button-wide.new li.facebook a {
    background: #3b5998;
    box-shadow: 0 2px 0 0 #404c66;
}

.social-button-wide.new li.facebook a:before {
    background: url(/img/sns/ico_facebook_02.png) no-repeat 0 0;
    height: 25px;
    width: 13px;
}

.social-button-wide.new li.line {
    display: none;
}

.social-button-wide.new li.gplus {
    background: none;
}

.social-button-wide.new li.gplus a {
    background: #db4437;
    box-shadow: 0 2px 0 0 #be382a;
}

.social-button-wide.new li.gplus a:before {
    background: url(/img/sns/ico_google_02.png) no-repeat 0 0;
    height: 22px;
    width: 34px;
}

.social-button-follow {
    margin: 15px 0 0;
}

.social-button-follow a {
    background: #1da1f2;
    border-radius: 3px;
    box-shadow: 0 2px 0 0 #5698cb;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    height: 52px;
    line-height: 54px;
    text-align: center;
    text-decoration: none;
    width: 256px;
}

.social-button-follow a:hover {
    opacity: 0.8;
}

.social-button-follow a:before {
    background: url(/img/sns/ico_twitter_03.png) no-repeat 0 0;
    background-size: 28px 22px;
    content: ' ';
    display: inline-block;
    height: 22px;
    margin: 0 12px 0 0;
    vertical-align: middle;
    width: 28px;
}

.social-button-follow.side a {
    background: #fff;
    box-shadow: 0 2px 0 0 #0d81c6;
    color: #1da0f2;
    height: 42px;
    line-height: 44px;
}

.social-button-follow.side a:before {
    background: url(/img/sns/ico_twitter_04.png) no-repeat 0 0;
}

.contents-wrap-f .ttl-a {
    font-weight: normal;
}

.contents-wrap-f .ttl-f {
    margin: 24px 0 0;
}

.contents-wrap-f .ttl-f {
    background: #fff;
    border-color: #fc6;
    font-weight: normal;
    padding: 10px 10px 10px 2px;
}

.contents-wrap-f .ttl-f:first-child {
    margin: 0;
}

.table-schedule {
    font-size: 14px;
    line-height: 1.6;
    margin: 20px 0 0;
    table-layout: fixed;
    text-align: center;
    width: 100%;
}

.table-schedule thead {
    background: #eee;
}

.table-schedule th,
.table-schedule td {
    padding: 13px 5px 9px;
    vertical-align: top;
}

.table-schedule th:nth-child(1) {
    width: 200px;
}

.table-schedule td:nth-child(2) {
    text-align: left;
    padding-left: 2rem;
}

.table-schedule th:nth-child(3) {
    width: 110px;
}

.table-schedule th span {
    border-left: 1px solid #666;
    display: block;
}

.table-schedule th:first-child span {
    border: 0;
}

.table-schedule tbody tr {
    background: #fff;
    border-bottom: 1px solid #ccc;
}

.table-schedule tbody tr:nth-child(2n) {
    background: #f9f9f9;
}

/*!* NR Overwrite *!*/
/*#NR-page {*/
/*min-width: 1024px;*/
/*}*/

.contents-wrap-f .NR-ad {
    margin: 24px -15px 0;
}

.contents-wrap-f > .hr {
    background: #ccc;
    border: none;
    height: 2px;
    margin: 20px -20px 0;
}

.sns-wrap.aside-wrap-social {
    background: #1da1f2;
    border: 2px solid #eee;
    padding: 16px 0 13px;
    text-align: center;
}

.sns-wrap .aside-wrap-social .text {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
}

.aside-wrap .in-side-ttl-c + .list-simple-d {
    margin: 10px 0 0;
    padding: 0 0 0 8px;
}

.aside-wrap.article .list-simple-d li:before,
.aside-wrap.pickup .list-simple-d li:before {
    color: #ccc;
}

.aside-wrap .in-side-ttl-c {
    background: #eee;
    color: #333;
    font-size: 14px;
    height: 26px;
    line-height: 26px;
    margin: 20px 0 0;
    padding: 0 8px;
}

.aside-wrap .in-side-ttl-c:first-child {
    margin: 0;
}

.aside-wrap .in-side-ttl-c a {
    color: #333;
    display: inline-block;
    position: relative;
    text-decoration: none;
}

.aside-wrap .in-side-ttl-c a:hover {
    opacity: 0.8;
}

.aside-wrap .in-side-ttl-c a:before {
    background: #333;
    bottom: 4px;
    content: ' ';
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    width: 100%;
}

aside:first-child .sns-wrap {
    margin: 0;
}

.mb20 {
    margin-bottom: 20px;
}

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

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

.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 {
    /* 20171205 */
    /*    margin: 10px 0 0 0;*/
    margin: 0;
}

.list-data-b-in li.text-b.no-text-indent p.text-b {
    margin: 0;
}

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

.list-data-b-in .text-b {
    /* 20171205 */
    /*    font-size: 15px; */
    font-size: 14px;
}

.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;
}

.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;
}

.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 {
    /* 20171205 */
    /*    margin: 0 0 10px;*/
    margin: 0;
}

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

/* --- 品詞がないパターン 要素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;
}

ul.level-title {
    list-style: none;
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin: 0;
}

ul.level-title li {
    padding: 0;
    text-align: left;
    flex-grow: 1;
}

/*ul.level-title li a,*/
/*ul.level-title li a:visited,*/
/*ul.level-title li a:hover {*/
/*color: #000;*/
/*opacity: unset;*/
/*}*/

