@charset "UTF-8";

/*******************************************************************************
  #CONTENT内部のスタイル
*******************************************************************************/

#CONTENT a.style2 {
    margin-left: 0.5em;
    margin-right: 0.5em;
    padding-left: 15px;
    display: inline-block;
    background: url("../images/marker_link.gif") no-repeat 0 0.4em;
}

#CONTENT a.external {
    margin-left: 0.333em;
    margin-right: 0.333em;
    padding-left: 16px;
    display: inline-block;
    background: url("../images/icon_external.gif") no-repeat 0 0.4em;
}

#CONTENT a.plain {
    text-decoration: none;
}

#CONTENT a.style2 {
}

#CONTENT img.style2 {
    margin-right: 3px;
    margin-bottom: 3px;
    box-shadow: 3px 3px 3px #888888;
    -moz-box-shadow: 3px 3px 3px #888888;
    -webkit-box-shadow: 3px 3px 3px #888888;
    filter: progid:DXImageTransform.Microsoft.Shadow(color='#888888', Direction=135, Strength=3);
}

#CONTENT span.list_marker {
    _display: inline; /* for IE 6 */
    float: left;
    clear: left;
}
#CONTENT span.list_text {
    display: block;
    /display: inline-block; /* for IE 6 and IE 7 */
    overflow: hidden;
}

#CONTENT h1,
#CONTENT h2,
#CONTENT h3,
#CONTENT h4,
#CONTENT h5,
#CONTENT h6 {
    line-height: 1.25;
    font-weight: bold;
    /zoom: 1; /* for IE 6 and IE 7 */
}

#CONTENT h1 {
    margin-top: -10px;
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    border-top: solid 10px #E60012;
    font-size: 200%; /* 24px */
}
body.translation #CONTENT h1,
body.order #CONTENT h1,
body.services #CONTENT h1 {
    border-top-color: #0685BC;
}
body.form-thanks #CONTENT h1 {
    padding-top: 110px;
    background: url("../images/h1_bg-thanks.jpg") no-repeat 0 14px;
}

#CONTENT h2 {
    margin-bottom: 0.870em; /* 1 / 1.15 = 0.870 */
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    padding-left: 34px;
    padding-right: 8px;
    border-top: solid 0.870em #FFFFFF; /* 1 / 1.15 = 0.870 */
    background: url("../images/h2_bg.gif") repeat-y left top;
    font-size: 116.7%; /* 14px */
}
body.translation #CONTENT h2,
body.order #CONTENT h2,
body.services #CONTENT h2 {
    background-image: url("../images/h2_bg-services.gif");
}

#CONTENT h2.has_link {
    padding-right: 94px;
    position: relative;
    /zoom: 1; /* for IE 6 and IE 7 */
}
#CONTENT h2.has_link a {
    margin-top: -10px;
    position: absolute;
    right: 3px;
    top: 50%;
}

#CONTENT h3 {
    margin-bottom: 1em;
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    padding-left: 32px;
    border-top: solid 0.5em #FFFFFF;
    background: url("../images/h3_bg.gif") no-repeat 4px 50%;
    color: #E60012;
}
body.translation #CONTENT h3,
body.order #CONTENT h3,
body.services #CONTENT h3 {
    color: #0685BC;
    background-image: url("../images/h3_bg-services.gif");
}

#CONTENT h4 {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    color: #E60012;
}
body.translation #CONTENT h4,
body.order #CONTENT h4,
body.services #CONTENT h4 {
    color: #0685BC;
}

#CONTENT h5 {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
}

#CONTENT h6 {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
}

#CONTENT p,
#CONTENT ul,
#CONTENT ol,
#CONTENT dl,
#CONTENT hr,
#CONTENT table {
    margin-bottom: 1em;
}

#CONTENT p.figure {
   text-align: center;
}

#CONTENT p.date {
   text-align: right;
}

#CONTENT p.toTop {
    text-align: right;
}

#CONTENT ul li {
    padding-left: 21px;
}

#CONTENT ul li,
#CONTENT ul.style1 li,
#CONTENT ul li.style1,
#CONTENT ul.disc li,
#CONTENT ul li.disc {
    background: url("../images/marker_disc.gif") no-repeat 7px 0.5em;
}

#CONTENT ul li ul li,
#CONTENT ul.style2 li,
#CONTENT ul li.style2,
#CONTENT ul.circle li,
#CONTENT ul li.circle {
    background: url("../images/marker_circle.gif") no-repeat 7px 0.5em;
}

#CONTENT ul li ul li ul li,
#CONTENT ul.style3 li,
#CONTENT ul li.style3,
#CONTENT ul.hyphen li,
#CONTENT ul li.hyphen {
    background: url("../images/marker_hyphen.gif") no-repeat 8px 0.6em;
}

#CONTENT ul.links li,
#CONTENT ul li.link {
    background: url("../images/marker_link.gif") no-repeat 6px 0.4em;
}

#CONTENT ul.plain li,
#CONTENT ul li.plain {
    padding-left: 0;
    background: none;
}

#CONTENT ul.spaced {
    margin-bottom: 0;
}
#CONTENT ul.spaced li {
    margin-bottom: 1em;
}

#CONTENT ul.linear {
    margin-left: -0.25em;
    margin-right: -0.25em;
}
#CONTENT ul.linear li {
    margin-left: 0.25em;
    margin-right: 0.25em;
    display: inline-block;
    /display: inline; /* for IE 6 and IE 7 */
    /zoom: 1; /* for IE 6 and IE 7 */
    white-space: nowrap;
}

#CONTENT ul.recruit_menu {
    margin-left: -10px;
    margin-right: -10px;
}
#CONTENT ul.recruit_menu li {
    margin-top: 10px;
    margin-left: 10px;
    margin-right: 10px;
    padding-left: 0;
    display: inline-block;
    /display: inline; /* for IE 6 and IE 7 */
    /zoom: 1; /* for IE 6 and IE 7 */
    background: none;
}

#CONTENT ol li {
    margin-left: 2.5em;
}

#CONTENT ol li,
#CONTENT ol.style1 li,
#CONTENT ol li.style1,
#CONTENT ol.decimal li,
#CONTENT ol li.decimal {
    list-style: decimal;
}

#CONTENT ol li ol li,
#CONTENT ol.style2 li,
#CONTENT ol li.style2,
#CONTENT ol.upper_roman li,
#CONTENT ol li.upper_roman {
    list-style: upper-roman;
}

#CONTENT ol li ol li ol li,
#CONTENT ol.style3 li,
#CONTENT ol li.style3,
#CONTENT ol.lower_roman li,
#CONTENT ol li.lower_roman {
    list-style: lower-roman;
}

#CONTENT ol.plain li,
#CONTENT ol li.plain {
    margin-left: 0;
    list-style: none;
}

#CONTENT ol.process {
    margin-left: auto;
    margin-right: auto;
    width: 50%;
}
#CONTENT ol.process li {
    margin-left: 0;
    padding-top: 12px;
    padding-bottom: 36px;
    padding-left: 12px;
    padding-right: 12px;
    border: solid 1px #A3A3A3;
    list-style: none;
    background: url("../images/ol_process_li_bg.gif") no-repeat center bottom;
    font-weight: bold;
    text-align: center;
}
#CONTENT ol.process li.style2 {
    background-image: url("../images/ol_process_li_bg-style2.gif");
}
#CONTENT ol.process li.last-child {
    padding-bottom: 12px;
    background: none;
}

#CONTENT dl dt {
    font-weight: bold;
}

#CONTENT dl.plain dt {
    font-weight: normal;
}

#CONTENT dl.style2 dd {
    margin-left: 1.5em;
}

#CONTENT dl.style3 dt {
    padding-top: 0.5em;
}
#CONTENT dl.style3 dd {
    padding-bottom: 0.5em;
    padding-left: 1.5em;
    border-bottom: dotted 1px #959595;
}

#CONTENT dl.style4 dt {
    padding-left: 13px;
    background: url("../images/marker_dt.gif") no-repeat 0 0.3em;
    font-weight: bold;
}
#CONTENT dl.style4 dd {
    margin-bottom: 1em;
}

#CONTENT dl.interview {
    margin-bottom: 0;
}
#CONTENT dl.interview dt {
    margin-bottom: 1em;
    padding-left: 42px;
    background: url("../images/dash.gif") no-repeat 0 0.6em;
}
#CONTENT dl.interview dd {
    margin-bottom: 1em;
    padding-left: 42px;
}

#CONTENT dl.matrix {
    line-height: 1.25;
}
#CONTENT dl.matrix dt,
#CONTENT dl.matrix dd {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    border: solid 1px #FFFFFF;
}
#CONTENT dl.matrix dt {
    font-weight: normal;
    background: #E8D3AF;
}
#CONTENT dl.matrix dd {
    padding-left: 4em;
    background: #FDF5E6;
}

#CONTENT table.definition th {
    white-space: nowrap;
}
#CONTENT table.definition td {
    padding-left: 1em;
}

#CONTENT table.definition_style2 {
    border-bottom: solid 1px;
    border-bottom-color: #000000; /* for IE 6 and IE 7 */
}
#CONTENT table.definition_style2 th,
#CONTENT table.definition_style2 td {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    border-top: solid 1px;
    border-top-color: #000000; /* for IE 6 and IE 7 */
}
#CONTENT table.definition_style2 th {
    font-weight: bold;
    white-space: nowrap;
}
#CONTENT table.definition_style2 td {
    padding-left: 1em;
}

#CONTENT table.definition_style3 th,
#CONTENT table.definition_style3 td {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
    border-bottom: dotted 1px #959595;
}
#CONTENT table.definition_style3 th {
    font-weight: bold;
    white-space: nowrap;
}
#CONTENT table.definition_style3 td {
    padding-left: 2em;
}

#CONTENT table.matrix {
    line-height: 1.25;
}
#CONTENT table.matrix th,
#CONTENT table.matrix td {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    border: solid 1px #FFFFFF;
}
#CONTENT table.matrix th {
    background: #E8D3AF;
}
#CONTENT table.matrix td {
    background: #FDF5E6;
}

#CONTENT hr,
#CONTENT hr.solid {
    /* border-top-widthとheightを同じにすべし */
    border-top: solid 1px;
    border-top-color: #000000; /* for IE 6 and IE 7 */
    display: block;
    height: 1px;
}

#CONTENT hr.style2,
#CONTENT hr.dashed {
    border-top-style: dashed;
}

#CONTENT form input,
#CONTENT form select {
    vertical-align: middle;
}
#CONTENT form textarea {
    vertical-align: bottom;
}
#CONTENT form span.asterisk {
    margin-right: 0.25em;
    color: #E60012;
    font-weight: bold;
}
#CONTENT form label.error {
    margin-left: 0.25em;
    color: #E60012;
    font-weight: bold;
}

#CONTENT div.lead {
    margin-bottom: 0.5em;
    padding-top: 1em;
    border-bottom: solid 5px #E60012;
    font-size: 115%;
}

#CONTENT div.rug {
    margin-bottom: 1em;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    background: #E5E5E5;
}

#CONTENT div.showcase {
    margin-left: -5px;
    margin-right: -5px;
}
#CONTENT div.showcase dl {
    margin-left: 5px;
    margin-right: 5px;
    _display: inline; /* for IE 6 */
    float: left;
}

#CONTENT div.bookcase {
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 20px;
    padding-right: 20px;
    background: url("../images/bookcase_bg.gif") repeat-x left top;
}

#CONTENT div.object_and_text {
    display: table;
}
#CONTENT div.object_and_text div.object {
    display: table-cell;
    /float: left; /* for IE 6 and IE 7 */
    vertical-align: top;
}
#CONTENT div.object_and_text div.object p.figure{
    margin-right: 1em;
}
#CONTENT div.object_and_text div.text {
    display: table-cell;
    width: 100%;
    /width: auto; /* for IE 6 and IE 7 */
    /zoom: 1; /* for IE 6 and IE 7 */
    vertical-align: top;
}

#CONTENT div.object_and_text_style2 {
    display: table;
    direction: rtl;
}
#CONTENT div.object_and_text_style2 div.object {
    display: table-cell;
    /float: right; /* for IE 6 and IE 7 */
    direction: ltr;
    vertical-align: top;
}
#CONTENT div.object_and_text_style2 div.object p.figure{
    margin-left: 1em;
}
#CONTENT div.object_and_text_style2 div.text {
    display: table-cell;
    width: 100%;
    /width: auto; /* for IE 6 and IE 7 */
    /zoom: 1; /* for IE 6 and IE 7 */
    direction: ltr;
    vertical-align: top;
}

/***************************************
  廃止予定
***************************************/

#CONTENT div.figure_and_text div.figure {
    margin-right: 1em;
    _display: inline; /* for IE 6 */
    float: left;
}
#CONTENT div.figure_and_text div.text {
    /zoom: normal; /* for IE 6 and IE 7 */
}

#CONTENT div.figure_and_text_style2 div.figure {
    margin-left: 1em;
    _display: inline; /* for IE 6 */
    float: right;
}
#CONTENT div.figure_and_text_style2 div.text {
    /zoom: normal; /* for IE 6 and IE 7 */
}

#CONTENT div.figure_and_text_style3 div.figure {
    margin-right: 1em;
    _display: inline; /* for IE 6 */
    float: left;
}
#CONTENT div.figure_and_text_style3 div.text {
    overflow: hidden;
}

#CONTENT div.figure_and_text_style4 div.figure {
    margin-left: 1em;
    _display: inline; /* for IE 6 */
    float: right;
}
#CONTENT div.figure_and_text_style4 div.text {
    overflow: hidden;
}