@charset "utf-8";
/*
-------------------------------------------------------------------------------- width: 721px -
*/
/* ---------------- 20160226 移行 ---------------- */
/* ---------------- basic ---------------- */
body {
    min-width: 1020px;
    background-color: #f9f4f0;
    color: #404040;
    text-align: justify;
    text-justify: inter-ideograph;
}
a {
    color: #e54800;
    text-decoration: none;
}
a:active,
a:hover {
    color: #e54800;
    text-decoration: underline;
}
strong, em, b {
    font-weight: bold;
    font-style: normal;
}
@media screen and (min-width: 721px) {
    .onlySP {
        display: none !important; /* 201707 */
    }
}
/* ---------------- header ---------------- */
/* container */
#header {
    height: 100px;
    padding: 0 20px;
    background-color: #fff;
}
#header > .inner {
    position: relative;
    width: 980px;
    margin: 0 auto;
}
#header > .inner:before, #header > .inner:after { content: ""; display: table; }
#header > .inner:after { clear: both; }
#header > .inner .inner {
    float: right;
    margin-top: 13px;
}
#header > .inner .inner:before, #header > .inner .inner:after { content: ""; display: table; }
#header > .inner .inner:after { clear: both; }
#header > .inner .inner > * {
    float: right;
    margin-left: 10px;
}
/* site id */
#siteId {
    float: left;
    width: 220px;
    padding-top: 25px;
}
#siteId img {
    width: 212px;
    height: 56px;
}
/* navigation - 1 */
ul#headerNav1 {
    display: table;
    height: 28px;
}
ul#headerNav1 li {
    display: table-cell;
    font-size: 69%;
    vertical-align: middle;
}
ul#headerNav1 li a {
    padding: 0 8px;
    border-left: 1px solid #e4e4e4;
    color: #505050;
}
ul#headerNav1 li:first-child a {
    border-left-style: none;
}
ul#headerNav1 li a:hover,
ul#headerNav1 li a:active {
    color: #a0a0a0;
    text-decoration: none;
}
/* font size */
#fontSize {
    position: relative;
    width: 130px;
    height: 28px;
    z-index: 3;
}
#fontSize ul {
    position: absolute;
    left: 0;
    top: 0;
}
#fontSize ul li {
    display: none;
    width: 130px;
    height: 28px;
}
#fontSize ul li:first-child {
    display: block;
}
#fontSize ul li a {
    display: block;
    height: 28px;
    padding-left: 10px;
    background-color: #e54800;
    color: #fff;
    font-size: 75%;
    line-height: 28px;
}
#fontSize ul li a:active,
#fontSize ul li a:hover {
    background-color: #ea6d33;
    color: #fff;
    text-decoration: none;
}
#fontSize ul li:first-child a {
    background-image: url(../img/icon_pulldown.png);
    background-repeat: no-repeat;
    background-position: 115px 50%;
}
#fontSize ul li a span {
    font-weight: bold;
}
/* language */
#language {
    position: relative;
    width: 100px;
    height: 28px;
    z-index: 3;
}
a#languageButton {
    display: block;
    height: 28px;
    padding-left: 10px;
    background-color: #e54800;
    background-image: url(../img/icon_pulldown.png);
    background-repeat: no-repeat;
    background-position: 85px 50%;
    color: #fff;
    font-size: 75%;
    line-height: 28px;
    cursor: default;
}
a#languageButton:active,
a#languageButton:hover {
    background-color: #ea6d33;
    color: #fff;
    text-decoration: none;
}
#languageList {
    position: absolute;
    right: 0;
    top: 28px;
}
#languageList > ul {
    display: none;
}
#languageList ul li {
    border-top: 1px solid #e78254;
}
#languageList ul li a,
#languageList ul li span {
    display: block;
    height: 28px;
    padding: 0 8px;
    background-color: #e54800;
    color: #fff;
    font-size: 75%;
    line-height: 28px;
    text-align: left;
    white-space: nowrap;
}
#languageList ul li a:before {
    content: "";
    display: inline-block;
    border: 2px solid #fff;
    border-bottom: none;
    border-left: none;
    width: 4px;
    height: 4px;
    margin-right: 5px;
    -webkit-transform: rotate(45deg) translateX(-2px);
    -moz-transform: rotate(45deg) translateX(-2px);
    -ms-transform: rotate(45deg) translateX(-2px);
    -o-transform: rotate(45deg) translateX(-2px);
    transform: rotate(45deg) translateX(-2px);
}
#languageList ul li a:active,
#languageList ul li a:hover {
    background-color: #ea6d33;
    color: #fff;
    text-decoration: none;
}
#languageList ul li li a {
    padding-left: 20px;
}
/* search */
.searchForm {
    position: relative;
    width: 140px;
    height: 28px;
    background-color: #f9f4f0;
}
.searchForm .searchTxt {
    position: absolute;
    left: 0;
    top: 0;
    box-sizing: border-box;
    width: 110px;
    height: 28px;
    margin: 0;
    padding: 0 10px;
    border-style: none;
    background-color: transparent;
    color: #9e948b;
    outline: 0;
    font-size: 75%;
}
.searchForm .searchBtn {
    position: absolute;
    right: 0;
    top: 0;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    border-style: none;
    background-color: transparent;
    background-image: url(../img/icon_search.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 16px 16px;
    outline: 0;
    text-indent: -9999px;
    cursor: pointer;
}
.searchForm .searchBtn:active,
.searchForm .searchBtn:hover {
    opacity: .7;
}
/* entrance exam info web button */
#header a.examInfoWebBtn {
    display: block;
    width: 110px;
    margin-left: 0;
    padding: 0 15px 0 0;
    background-color: #1674b9;
    background-image: url(../img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 12px center;
    background-size: 6px 9px;
    color: #fff;
    font-size: 75%;
    font-weight: bold;
    line-height: 30px;
    text-align: right;
}
#header a.examInfoWebBtn:active,
#header a.examInfoWebBtn:hover {
    background-color: #5a9ac9;
    color: #fff;
    text-decoration: none;
}
/* navigation - 2 */
ul#headerNav2 {
    display: table;
    height: 30px;
}
ul#headerNav2 li {
    display: table-cell;
    padding-right: 20px;
}
ul#headerNav2 li a {
    display: block;
    padding-left: 25px;
    height: 30px;
    background: no-repeat left center;
    color: #505050;
    font-size: 82%;
    font-weight: bold;
    line-height: 30px;
    white-space: nowrap;
}
ul#headerNav2 li a:hover,
ul#headerNav2 li a:active {
    color: #e54800;
    text-decoration: none;
}
ul#headerNav2 li:nth-child(5n+1) a {
    display: none; /* 201707 */
    background-image: url(../img/icon_hnav_1.png);
    background-size: 19px 18px;
}
ul#headerNav2 li:nth-child(5n+2) a {
    background-image: url(../img/icon_hnav_2.png);
    background-size: 20px 19px;
}
ul#headerNav2 li:nth-child(5n+3) a {
    background-image: url(../img/icon_hnav_3.png);
    background-size: 20px 20px;
}
ul#headerNav2 li:nth-child(5n+4) a {
    background-image: url(../img/icon_hnav_4.png);
    background-size: 21px 16px;
}
ul#headerNav2 li:nth-child(5n+5) a {
    padding-left: 20px;
    background-image: url(../img/icon_hnav_5.png);
    background-size: 14px 17px;
}
/* ---------------- slide navigation ---------------- */
/* button */
#menuOpenBtn {
    display: none;
}
/* container */
#bodyCover {
    display: none;
}
#slideNav {
    display: none;
}
/* ---------------- global navigation ---------------- */
#globalNav {
    position: relative;
    padding: 0 20px;
    background-color: #e54800;
    box-shadow: 0 3px 5px rgba(20,5,8,.1);
    z-index: 2;
}
#globalNav > ul {
    position: relative;
    width: 980px;
    margin: 0 auto;
    background: url(../img/global_nav_line.png) no-repeat right center;
}
#globalNav > ul:before, #globalNav > ul:after { content: ""; display: table; }
#globalNav > ul:after { clear: both; }
#globalNav > ul > li {
    float: left;
    background: url(../img/global_nav_line.png) no-repeat left center;
}
#globalNav li#globalNav1 { width: 16%; }
#globalNav li#globalNav2 { width: 18%; }
#globalNav li#globalNav3 { width: 16%; }
#globalNav li#globalNav4 { width: 16%; }
#globalNav li#globalNav5 { width: 16%; }
#globalNav li#globalNav6 { width: 18%; }
#globalNav > ul > li > a {
    display: block;
    position: relative;
    padding: 22px 0;
    border-bottom: 0 solid #fff;;
    background-color: transparent;
    color: #fff;
    font-size: 94%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}
#globalNav > ul > li > a.current,
#globalNav > ul > li > a.active,
#globalNav > ul > li > a:active,
#globalNav > ul > li > a:hover {
    padding-bottom: 15px;
    border-bottom-width: 7px;
}
#globalNav > ul > li > ul {
    display: none;
}
/* ---------------- megamenu ---------------- */
#megamenu {
    display: none;
}
#globalNav ul.megamenu {
    position: absolute;
    left: 0;
    top: 59px;
    width: 920px;
    height: 0;
    padding: 16px 40px 24px 20px;
    background: #fff url(/common/img/bg_megamenu.png) repeat-x;
    box-shadow: 0 6px 10px rgba(20,4,8,.16);
}
#globalNav ul.megamenu:before, #globalNav ul.megamenu:after { content: ""; display: table; }
#globalNav ul.megamenu:after { clear: both; }
#globalNav ul.megamenu > li {
    float: left;
    width: 210px;
    margin-left: 20px;
}
#globalNav ul.megamenu > li:before, #globalNav ul.megamenu > li:after { content: ""; display: table; }
#globalNav ul.megamenu > li:after { clear: both; }
#globalNav ul.megamenu > li.wide {
    width: 230px;
    margin-left: 0;
}
#globalNav ul.megamenu > li.col2 {
    width: 440px;
}
#globalNav ul.megamenu > li.col3 {
    width: 670px;
}
#globalNav ul.megamenu > li > strong {
    display: block;
    clear: left;
    padding: 12px 0 6px;
}
#globalNav ul.megamenu > li > strong > a {
    display: inline-block;
    padding: 4px 0 4px 30px;
    background-image: url(../img/icon_angle_megamenu.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    color: #404040;
    font-size: 94%;
    font-weight: bold;
}
#globalNav ul.megamenu > li > strong > a:active,
#globalNav ul.megamenu > li > strong > a:hover {
    color: #e54800;
    text-decoration: none;
}
#globalNav ul.megamenu > li > ul {
    float: left;
    width: 210px;
}
#globalNav ul.megamenu > li > ul:first-child {
    padding-top: 12px;
}
#globalNav ul.megamenu > li.col2 > ul:nth-of-type(2n),
#globalNav ul.megamenu > li.col3 > ul:nth-of-type(3n) {
    margin-left: 20px;
}
#globalNav ul.megamenu > li > ul > li > a {
    display: inline-block;
    padding: 4px 0 4px 25px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 8px .58em;
    background-size: 6px 9px;
    color: #404040;
    font-size: 82%;
    line-height: 1.3;
}
#globalNav ul.megamenu > li > ul > li > a.newwin {
    background-image: url(../img/icon_newwin.png);
    background-position: 0 .2em;
    background-size: 20px 20px;
}
#globalNav ul.megamenu > li > ul > li > a:active,
#globalNav ul.megamenu > li > ul > li > a:hover {
    color: #e54800;
    text-decoration: none;
}
#globalNav ul.megamenu > li > ul > li > a img {
    position: relative;
    top: -.1em;
    margin-right: 3px;
    vertical-align: middle;
}
/* ---------------- level 2 header ---------------- */
#lv2Header {
    position: relative;
    height: 205px;
    padding: 0 20px;
    overflow: hidden;
}
#lv2Header.short {
    height: 145px;
}
#lv2Header ul#breadcrumbs {
    position: relative;
    width: 980px;
    margin: 0 auto;
    z-index: 1;
}
#lv2Header h1 {
    position: relative;
    width: 980px;
    margin: 50px auto 0;
    padding-left: 50px;
    z-index: 1;
    font-size: 213%;
    font-weight: bold;
}
#lv2Header.short h1 {
    margin-top: 30px;
    font-size: 175%;
}
#lv2Header .img {
    position: absolute;
    left: 50%;
    top: 0;
    margin-left: -900px;
    z-index: 0;
}
#lv2Header .img img {
    display: block;
    width: 1800px;
    max-width: none;
}
/* ---------------- local navigation ---------------- */
#localNavHeader {
    font-size: 100%;
    font-weight: bold;
    line-height: 1.4;
}
.onlyPC #localNavHeader {
    padding-bottom: 30px;
    border-bottom: 1px solid #dad3cd;
}
ul#localNav {
    margin-top: 30px;
    border-bottom: 1px solid #dad3cd;
}
ul#localNav > li {
    border-top: 1px solid #dad3cd;
}
ul#localNav > li > a {
    display: block;
    padding: 10px 40px 10px 0;
    background-image: url(../img/icon_plus_orange.png);
    background-repeat: no-repeat;
    background-position: 196px 50%;
    background-size: 12px 12px;
    color: #404040;
    font-size: 88%;
    line-height: 1.4;
}
ul#localNav > li > a:active,
ul#localNav > li > a:hover {
    color: #e54800;
    text-decoration: none;
}
ul#localNav > li > a.close {
    background-image: url(../img/icon_minus_orange.png);
}
ul#localNav > li > a.current {
    font-weight: bold;
}
ul#localNav > li ul {
    display: none;
    padding: 7px 0;
    border-top: 1px solid #dad3cd;
}
ul#localNav > li ul li a {
    display: block;
    padding: 7px 0 7px 42px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 20px 50%;
    background-size: 6px 9px;
    color: #404040;
    font-size: 88%;
    line-height: 1.4;
}
ul#localNav > li ul li a:active,
ul#localNav > li ul li a:hover {
    color: #e54800;
    text-decoration: none;
}
ul#localNav > li ul li a.pdf {
    background-image: url(../img/icon_pdf.png);
    background-position: 13px 50%;
    background-size: 21px 21px;
}
ul#localNav > li ul li a.download {
    background-image: url(../img/icon_download.png);
    background-position: 13px 50%;
    background-size: 21px 21px;
}
ul#localNav > li ul li a.ebook {
    background-image: url(../img/icon_ebook.png);
    background-position: 13px 50%;
    background-size: 21px 21px;
}
ul#localNav > li ul li a.newwin {
    background-image: url(../img/icon_newwin.png);
    background-position: 13px 50%;
    background-size: 21px 21px;
}
ul#localNav > li ul li a.current {
    font-weight: bold;
}
/* ---------------- body ---------------- */
/* container */
#body {
    padding: 0 20px 30px 20px;
    background-color: #f9f4f0;
}
#body > .inner {
    width: 980px;
    margin: 0 auto;
}
#body > .inner:before, #body > .inner:after { content: ""; display: table; }
#body > .inner:after { clear: both; }
#body > .inner #main {
    float: right;
    width: 740px;
    padding-top: 30px;
}
#body > .inner #main:before, #body > .inner #main:after { content: ""; display: table; }
#body > .inner #main:after { clear: both; }
.fontLarge #body > .inner #main {
    font-size: 117%;
}
#body > .inner #sub {
    float: left;
    width: 220px;
    padding-top: 30px;
}
#body > .inner #main > .wrapper {
    float: left;
}
#body > .inner #main > .wrapper.w75 { width: 555px !important; }
#body > .inner #main > .wrapper.w50 { width: 370px !important; }
#body > .inner #main > .wrapper.w25 { width: 185px !important; }
/* utility */
.w75 {
    float: left;
    clear: none !important;
    width: 540px !important;
}
.w50 {
    float: left;
    clear: none !important;
    width: 355px !important;
}
.w25 {
    float: left;
    clear: none !important;
    width: 170px !important;
}
.ml10{ margin-left: 10px !important;}/* 201707 */
.mb0 { margin-bottom: 0 !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb90 { margin-bottom: 90px !important; }
.clear,
.jsClear {
    clear: left !important;
}
.center {
    text-align: center;
}
.right {
    text-align: right;
}
/* breadcrumbs */
ul#breadcrumbs {
    padding-top: 25px;
    font-size: 69%;
}
ul#breadcrumbs li {
    display: inline;
    line-height: 1.4;
}
ul#breadcrumbs li:before {
    content: "　＞　";
}
ul#breadcrumbs li:first-child:before {
    content: "";
}
ul#breadcrumbs li a {
    color: #404040;
    text-decoration: underline;
}
ul#breadcrumbs li a:active,
ul#breadcrumbs li a:hover {
    color: #e54800;
    text-decoration: underline;
}
/* side banners */
ul#sideBanners {
    margin-top: 30px;
}
ul#sideBanners li {
    margin-top: 10px;
    background-color: #fff;
    line-height: 0;
}
ul#sideBanners li a:active,
ul#sideBanners li a:hover {
    opacity: .7;
}
/* side links */
ul#sideLinks {
    margin-top: 30px;
    border-top: 1px solid #dad3cd;
}
ul#sideLinks li {
    border-bottom: 1px solid #dad3cd;
}
ul#sideLinks li a {
    display: block;
    padding: 10px 0 10px 30px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 6px 9px;
    color: #404040;
    font-size: 88%;
    line-height: 1.4;
}
ul#sideLinks li a:active,
ul#sideLinks li a:hover {
    color: #e54800;
    text-decoration: none;
}
ul#sideLinks li a.pdf {
    background-image: url(../img/icon_pdf.png);
    background-size: 21px 21px;
}
ul#sideLinks li a.download {
    background-image: url(../img/icon_download.png);
    background-size: 21px 21px;
}
ul#sideLinks li a.ebook {
    background-image: url(../img/icon_ebook.png);
    background-size: 21px 21px;
}
ul#sideLinks li a.newwin {
    background-image: url(../img/icon_newwin.png);
    background-size: 21px 21px;
}
/* headings */
.h1 {
    clear: left;
    margin: 0 0 30px 15px;
    padding-bottom: 16px;
    border-bottom: 3px solid #404040;
    font-size: 150%;
    font-weight: bold;
    line-height: 1.2;
}
.h1.noBorder {
    padding-bottom: 0;
    border-bottom-style: none;
}
.h1 .img {
    position: relative;
    height: 0;
    margin-top: 20px;
    padding-bottom: 16.55%;
    overflow: hidden;
}
.h1 .img img {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
.h1.image {
    position: relative;
    padding-bottom: 0;
    border-bottom-style: none;
}
.h1.image span {
    position: absolute;
    left: 50px;
    top: 50%;
    font-size: 100%;
    font-weight: bold;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.h2 {
    clear: left;
    margin: 0 0 30px 15px;
    padding: 0 0 2px 15px;
    border-left: 6px solid #cdc4bc;
    font-size: 138%;
    font-weight: bold;
    line-height: 150%;
}
.h2.image {
    position: relative;
    padding: 0;
    border-left-style: none;
    font-size: 113%;
}
.h2.image span {
    position: absolute;
    left: 35px;
    top: 30px;
    font-size: 100%;
    font-weight: bold;
}
.h2.image span i {
    margin-left: 10px;
    font-size: 75%;
    font-weight: bold;
    font-style: normal;
}
.h2.border { /* 201707 */
    padding: 0 0 20px 0;
    border-left-style: none;
    border-bottom: 1px solid #dad3cd;
}
.h2.border span { /* 201707 */
    display: block;
    padding: 0 0 2px 15px;
    border-left: 6px solid #cdc4bc;
    font-weight: bold;
}
.h3 {
    clear: left;
    margin: 0 0 30px 15px;
    padding: 11px 20px;
    background-color: #e4d8d0;
    font-size: 100%;
    font-weight: bold;
    line-height: 1.2;
}
.h4 {
    clear: left;
    margin: 0 0 30px 15px;
    padding: 2px 0 2px 22px;
    background-image: url(../img/icon_h4.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 16px 16px;
    font-size: 88%;
    font-weight: bold;
}
/* text */
.bodyText,
p:not([class]) {
    clear: left;
    margin: 0 0 30px 15px;
    font-size: 82%;
    line-height: 1.8;
}
.boxText {
    clear: left;
    box-sizing: border-box;
    margin: 0 0 30px 15px;
    padding: 14px 20px;
    font-size: 82%;
    line-height: 1.8;
}
.boxText.white { background-color: #fff; }
.boxText.beige { background-color: #e4d8d0; }
.boxText.line {
background-color: #fff;
border: solid 1px #cfbfb3;
}
.boxText.hasChild {
font-size: 100%;
}
.boxText > * {
margin-left: 0 !important;
}
.boxText > *:last-child {
margin-bottom: 0 !important;
}
/* blockquote */
blockquote {
    clear: left;
    box-sizing: border-box;
    margin: 0 0 30px 15px;
    padding: 14px 20px;
    border: solid 1px #cfbfb3;
    background-color: #fff;
    font-size: 82%;
    line-height: 1.8;
}
blockquote p {
    margin: 0 !important;
    font-size: 100% !important;
}
/* list */
ul.plainList {
    clear: left;
    margin: 0 0 30px 15px;
    font-size: 82%;
    line-height: 1.4;
}
ul.plainList li {
    margin-top: 14px;
    padding-left: 12px;
    background-image: url(../img/icon_list.png);
    background-repeat: no-repeat;
    background-position: 0 7px;
    background-position: 0 calc(.7em - 1.5px);
}
ul.plainList.noMarker li {
    padding-left: 0;
    background-image: none;
}
ul.plainList > li:first-child {
    margin-top: 0;
}
ul.plainList li ul {
    margin: 0 0 0 48px;
}
ol.plainList {
    clear: left;
    box-sizing: border-box;
    margin: 0 0 30px 15px;
    padding-left: 1.6em;
    font-size: 82%;
    line-height: 1.4;
}
ol.plainList li {
    margin-top: 14px;
    padding-left: 0;
    list-style-type: decimal;
}
ol.plainList > li:first-child {
    margin-top: 0;
}
ol.plainList li ol {
    margin: 0 0 0 48px;
}
ul.plainList.col4 {
    margin-left: 0;
}
ul.plainList.col4:before, ul.plainList.col4:after { content: ""; display: table; }
ul.plainList.col4:after { clear: both; }
ul.plainList.col4 li {
    box-sizing: border-box;
    float: left;
    width: 25%;
    padding-left: 27px;
    background-position: 15px 7px;
    background-position: 15px calc(.7em - 1.5px);
}
ul.plainList.col4.noMarker li {
    padding-left: 15px;
    background-image: none;
}
ul.plainList.col4 li:nth-child(4n+1) {
    clear: left;
}
ul.plainList.col4 li:nth-child(-n+4) {
    margin-top: 0;
}
/* contact */
.contact {
    clear: left;
    margin: 0 0 30px 15px;
    background-color: #fff;
}
.contact .head {
    padding: 15px 20px;
    background-color: #404040;
    color: #fff;
    font-size: 100%;
    font-weight: bold;
}
.contact dl {
    padding: 0 20px 18px 20px;
}
.contact dl dt {
    margin-top: 18px;
    font-size: 94%;
    font-weight: bold;
    line-height: 1.2;
}
.contact dl dd {
    margin-top: 10px;
    font-size: 82%;
    line-height: 1.4;
}
/* table */
table.plainTable,
table.planeTable {
    clear: left;
    width: 725px;
    margin: 0 0 30px 15px;
}
table.plainTable.w50,
table.planeTable.w50 {
    width: calc(50% - 15px);
}
table.plainTable th,
table.plainTable td,
table.planeTable th,
table.planeTable td {
    padding: 14px 15px;
    border: solid 1px #cfbfb3;
    font-size: 82%;
    line-height: 1.3;
    vertical-align: middle;
    word-break: break-all;
}
table.plainTable th,
table.planeTable th {
    background-color: #eee5df;
    font-weight: bold;
}
table.plainTable .tw5, table.planeTable .tw5 { width: 5%; }
table.plainTable .tw10, table.planeTable .tw10 { width: 10%; }
table.plainTable .tw15, table.planeTable .tw15 { width: 15%; }
table.plainTable .tw20, table.planeTable .tw20 { width: 20%; }
table.plainTable .tw25, table.planeTable .tw25 { width: 25%; }
table.plainTable .tw30, table.planeTable .tw30 { width: 30%; }
table.plainTable .tw35, table.planeTable .tw35 { width: 35%; }
table.plainTable .tw40, table.planeTable .tw40 { width: 40%; }
table.plainTable .tw45, table.planeTable .tw45 { width: 45%; }
table.plainTable .tw50, table.planeTable .tw50 { width: 50%; }
table.plainTable .tw55, table.planeTable .tw55 { width: 55%; }
table.plainTable .tw60, table.planeTable .tw60 { width: 60%; }
table.plainTable .tw65, table.planeTable .tw65 { width: 65%; }
table.plainTable .tw70, table.planeTable .tw70 { width: 70%; }
table.plainTable .tw75, table.planeTable .tw75 { width: 75%; }
table.plainTable .tw80, table.planeTable .tw80 { width: 80%; }
table.plainTable .tw85, table.planeTable .tw85 { width: 85%; }
table.plainTable .tw90, table.planeTable .tw90 { width: 90%; }
table.plainTable .tw95, table.planeTable .tw95 { width: 95%; }
/* anchor link */
ul.anchorLink {
    clear: left;
    margin: 0 0 30px 15px;
    padding-top: 13px;
    background-color: #404040;
}
ul.anchorLink:before, ul.anchorLink:after { content: ""; display: table; }
ul.anchorLink:after { clear: both; }
ul.anchorLink li {
    display: inline-block;
    float: left;
    padding-bottom: 13px;
}
ul.anchorLink li a {
    display: block;
    padding: 6px 18px 6px 36px;
    border-right: 1px solid #626262;
    background-image: url(../img/icon_anchor.png);
    background-repeat: no-repeat;
    background-position: 16px 50%;
    color: #fff;
    font-size: 106%;
    font-weight: bold;
    white-space: nowrap;
}
ul.anchorLink li a:active,
ul.anchorLink li a:hover {
    background-position: -784px 50%;
    color: #e54800;
    text-decoration: none;
}
/* text link */
#main a.normal,
#main a.newwin,
#main a.pdf,
#main a.download,
#main a.ebook,
#main a.calendar {
    display: inline-block;
    padding: 0 0 0 26px;
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 21px 21px;
    color: #404040;
    font-weight: bold;
}
#main a.normal:active,
#main a.newwin:active,
#main a.pdf:active,
#main a.download:active,
#main a.ebook:active,
#main a.calendar:active,
#main a.normal:hover,
#main a.newwin:hover,
#main a.pdf:hover,
#main a.download:hover,
#main a.ebook:hover,
#main a.calendar:hover {
    color: #e54800;
    text-decoration: none;
}
#main a.normal {
    background-image: url(../img/icon_angle_orange.png);
    background-position: 7px 50%;
    background-size: 6px 9px;
}
#main a.pdf { background-image: url(../img/icon_pdf.png); }
#main a.download { background-image: url(../img/icon_download.png); }
#main a.ebook { background-image: url(../img/icon_ebook.png);}
#main a.newwin { background-image: url(../img/icon_newwin.png); }
#main a.calendar { background-image: url(../img/icon_calendar.png); }
/* link list */
ul.linkList {
    clear: left;
    margin: 0 0 30px 15px;
    font-size: 82%;
    line-height: 1.4;
}
ul.linkList li {
    margin-top: 6px;
}
ul.linkList li a {
    padding: 4px 0 4px 26px !important;
}
ul.linkList li a.normal {
    background-position: 7px .6em !important;
}
ul.linkList li a.newwin,
ul.linkList li a.pdf,
ul.linkList li a.download,
ul.linkList li a.ebook,
ul.linkList li a.calendar {
    background-position: 0 .2em !important;
}
ul.linkList.col4:before, ul.linkList.col4:after { content: ""; display: table; }
ul.linkList.col4:after { clear: both; }
ul.linkList.col4 li {
    float: left;
    width: 25%;
}
ul.linkList.col4 li a {
    padding: 4px 15px 4px 26px !important;
}
ul.linkList.col4 li:nth-child(4n+1) {
    clear: left;
}
/* link box */
.linkBox {
    clear: left;
    margin: 0 0 30px 15px;
    border-top: 4px solid #e54800;
    background-color: #e7e2de;
    font-size: 82%;
    line-height: 1.4;
    text-align: left;
    text-justify: auto;
}
.linkBox .header {
    padding: 16px 10px;
    background-color: #fff;
}
.linkBox ul {
    padding: 14px 10px;
}
.linkBox ul li {
    display: inline;
    margin: 6px 25px 0 0;
}
.linkBox ul li a {
    padding: 4px 0 4px 26px !important;
    font-weight: normal !important;
}
/* plugin download */
.plugin {
    clear: left;
    display: table;
    width: 725px;
    margin: 0 0 30px 15px;
    background-color: #fff;
}
.plugin .banner {
    display: table-cell;
    padding: 30px 15px 30px 25px;
    vertical-align: middle;
}
.plugin .banner a:active,
.plugin .banner a:hover {
    opacity: .7;
}
.plugin .banner img {
    max-width: none;
}
.plugin p {
    display: table-cell;
    width: 100%;
    padding: 20px 25px 20px 0;
    font-size: 75%;
    line-height: 1.8;
    vertical-align: middle;
}
/* text button */
a.textButton {
    display: table;
    float: left;
    width: 170px;
    height: 61px;
    margin: 0 0 30px 15px;
    border-top: 4px solid #e54800;
    background-color: #fff;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 15px 50%;
    background-size: 6px 9px;
    color: #404040;
}
a.textButton:active,
a.textButton:hover {
    color: #e54800;
    text-decoration: none;
}
a.textButton span {
    display: table-cell;
    height: 61px;
    padding: 0 10px 0 35px;
    font-size: 82%;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
}
#main a.textButton.newwin,
#main a.textButton.pdf,
#main a.textButton.download,
#main a.textButton.ebook,
#main a.textButton.calendar {
    display: table;
    padding: 0;
    background-position: 8px 50%;
}
/* image button */
a.imageButton {
    display: block;
    float: left;
    width: 170px;
    margin: 0 0 30px 15px;
    border-top: 4px solid #e54800;
    background-color: #fff;
    color: #404040;
}
a.imageButton .txt {
    display: table-cell;
    width: 100%;
    height: 57px;
    padding: 0 10px 0 35px;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 15px 50%;
    background-size: 6px 9px;
    font-size: 82%;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
}
a.imageButton .img {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 74.12%;
    overflow: hidden;
}
a.imageButton.compact .img { /* 201707 */
    padding-bottom: 38.24%;
}
a.imageButton .img img {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}
a.imageButton:active,
a.imageButton:hover {
    color: #e54800;
    text-decoration: none;
}
a.imageButton:active img,
a.imageButton:hover img {
    opacity: .7;
}
a.imageButton.layered { /* 201707 */
    position: relative;
}
a.imageButton.layered .txt { /* 201707 */
    position: relative;
    z-index: 1;
    height: 126px;
}
a.imageButton.layered .img { /* 201707 */
    margin-top: -126px;
    height: 126px;
    padding-bottom: 0;
}
a.imageButton.layered .img img { /* 201707 */
    opacity: .3;
}
a.imageButton.layered:active img,
a.imageButton.layered:hover img { /* 201707 */
    opacity: .2;
}
#main a.imageButton.newwin,
#main a.imageButton.pdf,
#main a.imageButton.download,
#main a.imageButton.ebook {
    display: block;
    padding: 0;
    background-image: none;
}
a.imageButton.newwin .txt {
    background-image: url(../img/icon_newwin.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.imageButton.pdf .txt {
    background-image: url(../img/icon_pdf.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.imageButton.download .txt {
    background-image: url(../img/icon_download.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.imageButton.ebook .txt {
    background-image: url(../img/icon_ebook.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
/* box button */
a.boxButton {
    display: table;
    clear: left;
    width: 725px;
    margin: 0 0 30px 15px;
    border-top: 4px solid #e54800;
    background-color: #fff;
    color: #404040;
}
a.boxButton .img {
    display: table-cell;
    width: 170px;
    padding: 20px;
    vertical-align: top;
}
a.boxButton .img img {
    display: block;
    width: 100%;
}
a.boxButton .txt {
    display: table-cell;
    padding: 20px 20px 20px 0;
    vertical-align: top;
}
a.boxButton .txt strong {
    display: block;
    padding: 0 0 0 16px;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 0 50%;
    background-size: 6px 9px;
    font-size: 82%;
    font-weight: bold;
    line-height: 1.2;
}
a.boxButton .txt span {
    display: block;
    margin-top: 10px;
    font-size: 82%;
    line-height: 1.4;
}
a.boxButton .txt dl {
    margin: 15px 0;
    font-size: 82%;
    line-height: 1.4;
}
a.boxButton .txt dl dt {
    font-weight: bold;
}
a.boxButton:active,
a.boxButton:hover {
    text-decoration: none;
}
a.boxButton:active .txt strong,
a.boxButton:hover .txt strong {
    color: #e54800;
}
a.boxButton:active .txt span,
a.boxButton:hover .txt span {
    color: #404040;
}
a.boxButton:active img,
a.boxButton:hover img {
    opacity: .7;
}
a.boxButton.noImage .txt {
    padding-left: 20px;
}
a.boxButton.noImage .txt strong {
    padding: 0 0 0 20px;
    background-image: url(../img/icon_angle_orange.png);
    background-size: 10px 14px;
    font-size: 106%;
}
a.boxButton.noImage .txt span {
    margin-top: 15px;
}
a.boxButton.noImage .txt dl {
    display: inline-block;
    margin: 15px 0 0 20px;
    font-size: 82%;
    line-height: 1.4;
}
a.boxButton.noImage .txt dl.w50 {
    width: auto !important;
    max-width: calc(50% - 10px);
}
a.boxButton.noImage .txt dl.w25 {
    width: auto !important;
    max-width: calc(25% - 15px);
}
a.boxButton.noImage .txt dl:first-of-type {
    margin-left: 0;
}
a.boxButton.noImage .txt dl dd {
    margin: 5px 0 0 .8em;
    text-indent: -.8em;
}
a.boxButton.vertical .img {
    display: block;
    width: auto;
}
a.boxButton.vertical .txt {
    display: block;
    padding: 0 20px 20px 20px;
}
a.boxButton.vertical .txt span {
    margin-top: 12px;
}
a.boxButton.w50 .img {
    width: 150px;
    padding-right: 15px;
}
a.boxButton.vertical.w50 .img {
    width: calc(100% - 40px);
    padding-right: 0;
}
a.boxButton.noImage.w25 .txt {
    padding: 20px 15px;
}
a.boxButton.noImage.w25 .txt strong {
    padding: 0 0 0 16px;
    background-size: 6px 9px;
    font-size: 82%;
}
/* right button */
a.rightButton {
    display: block;
    clear: left;
    position: relative;
    width: 355px;
    height: 56px;
    margin: 0 0 30px auto;
    border-top: 4px solid #e54800;
    overflow: hidden;
    background-color: #fff;
    color: #404040;
}
a.rightButton span {
    display: table-cell;
    position: relative;
    height: 56px;
    padding: 0 10px 0 35px;
    z-index: 1;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 15px 50%;
    background-size: 6px 9px;
    font-size: 82%;
    font-weight: bold;
    line-height: 1.3;
    vertical-align: middle;
}
a.rightButton img {
    display: block;
    width: 100%;
    margin-top: -56px;
}
a.rightButton:active,
a.rightButton:hover {
    color: #e54800;
    text-decoration: none;
}
a.rightButton:active img,
a.rightButton:hover img {
    opacity: .7;
}
#main a.rightButton.newwin,
#main a.rightButton.pdf,
#main a.rightButton.download,
#main a.rightButton.ebook {
    display: block;
    padding: 0;
    background-image: none;
}
a.rightButton.newwin span {
    background-image: url(../img/icon_newwin.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.rightButton.pdf span {
    background-image: url(../img/icon_pdf.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.rightButton.download span {
    background-image: url(../img/icon_download.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
a.rightButton.ebook span {
    background-image: url(../img/icon_ebook.png);
    background-position: 8px 50%;
    background-size: 21px 21px;
}
/* orange button */
a.orangeButton {
    display: table;
    float: left;
    width: 355px;
    height: 65px;
    margin: 0 0 30px 15px;
    background-color: #e54800;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_white.png);
    background-position: 20px 50%;
    background-size: 6px 9px;
    color: #fff;
}
a.orangeButton:active,
a.orangeButton:hover {
    background-color: #eb7b48;
    text-decoration: none;
}
a.orangeButton span {
    display: table-cell;
    padding: 0 20px 1px 40px;
    font-size: 100%;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
}
a.orangeButton.newwin {
    display: table !important;
    padding: 0 !important;
    background-image: url(../img/icon_newwin_white.png) !important;
    background-position: 12px 50% !important;
    color: #fff !important;
}
/* image */
.image {
    clear: left;
    margin: 0 0 30px 15px;
    background-color: #fff;
}
.image a,
.image img {
    display: block;
}
.image a:hover, .image a:active { /* 201707 */
    opacity: .7;
}
.image p {
    clear: none;
    margin: 0;
    padding: 14px 20px;
    font-size: 82%;
    line-height: 1.8;
}
.image.left25:before, .image.left25:after,
.image.left50:before, .image.left50:after { content: ""; display: table; }
.image.left25:after, .image.left50:after { clear: both; }
.image.left25 img {
    float: left;
    width: 170px;
}
.image.left50 img {
    float: left;
    width: 355px;
}
.image.left25 p {
    float: left;
    box-sizing: border-box;
    width: 555px;
}
.image.left50 p {
    float: left;
    box-sizing: border-box;
    width: 370px;
}
/* YouTube */
.youTube {
    clear: left;
    position: relative;
    height: 0;
    margin: 0 0 30px 15px;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.youTube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/* news list */
.newsList {
    clear: left;
    margin: 0 0 30px 15px;
    padding: 15px;
    background-color: #fff;
}
.newsList .header {
    padding-bottom: 15px;
    border-bottom: 1px solid #ddd9d6;
    color: #1674b9;
    font-size: 106%;
    font-weight: bold;
}
.newsList.header:before, .newsList.header:after { content: ""; display: table; }
.newsList.header:after { clear: both; }
.newsList .header a {
    display: inline-block;
    float: right;
    margin-top: 3px;
    padding: 1px 0 0 12px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 6px 9px;
    color: #404040;
    font-size: 71%;
}
.newsList .header a:active,
.newsList .header a:hover {
    color: #e54800;
    text-decoration: none;
}
.newsList .header a span {
    font-weight: bold;
}
.newsList .body {
    width: 695px;
    height: 140px;
    margin-top: 15px;
    overflow-y: auto;
}
.newsList ul {
    display: table;
    width: 100%;
}
.newsList ul li {
    display: table-row;
}
.newsList ul li .date {
    display: table-cell;
    padding: 14px 15px 9px 0;
    color: #b0a79f;
    font-size: 75%;
    white-space: nowrap;
    vertical-align: top;
}
.newsList ul li .category {
    display: table-cell;
    padding: 9px 15px 9px 0;
    font-size: 69%;
    font-weight: bold;
    vertical-align: top;
}
.newsList ul li .category a {
    display: block;
    width: 10em;
    padding: 6px 0;
    background-color: #1674b9;
    color: #fff;
    text-align: center;
}
.newsList ul li .category a:active,
.newsList ul li .category a:hover {
    background-color: #5a9ac9;
    color: #fff;
    text-decoration: none;
}
.newsList ul li .title {
    display: table-cell;
    width: 100%;
    padding: 9px 10px 9px 0;
    vertical-align: top;
}
.newsList ul li .title a {
    color: #404040;
    text-decoration: none;
    font-size: 82%;
    line-height: 1.6;
}
.newsList ul li .title a:active,
.newsList ul li .title a:hover {
    color: #404040;
    text-decoration: underline;
}
.newsList.borderTop {
    padding-top: 25px;
    border-top: 5px solid #1674b9;
}
.newsList.borderTop .header {
    padding-bottom: 12px;
    border-bottom-style: none;
}
.newsList.borderTop .body {
    height: auto;
    margin-top: 0;
}
/* accordion */
.accordionHead {
    position: relative;
    margin-bottom: 8px !important;
    cursor: pointer;
}
.accordionHead:hover {
    border-left-color: #e54800;
    color: #e54800;
}
.accordionHead:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    background-image: url(../img/btn_accordion.png);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 24px 48px;
}
.accordionHead.open:after {
    background-position: 0 -24px;
}
.accordionBody {
    margin: 0 0 0 15px;
    padding-top: 30px;
    border-top: 1px solid #cdc4bc;
}
.accordionBody .inner {
    display: none;
    margin: 0 0 0 -15px;
}
/* parts list */
.partsHeading {
    clear: left;
    margin: 0 0 30px 15px;
}
.partsHeading span {
    display: inline-block;
    padding: 2px 12px;
    border-radius: 8px;
    background-color: #e54800;
    color: #fff;
    font-size: 82%;
    font-weight: bold;
}
.partsCode {
    box-sizing: border-box;
    width: 725px;
    height: 100px;
    margin: 0 0 50px 15px;
    padding: 8px;
    border: 1px solid #dad3cd;
    background-color: #fff;
    font-size: 82%;
}
.partsCode + .bodyText {
    margin-top: -45px;
    margin-bottom: 50px;
}
/* ---------------- footer ---------------- */
/* container */
#footer .inner {
    width: 980px;
    margin: 0 auto;
}
#footerNav1 {
    padding: 20px 0;
    background-color: #404040;
}
#footerNav2 {
    padding: 20px 0;
    background-color: #545454;
}
#footerNav3 {
    padding: 15px 0;
    background-color: #e54800;
}
/* footer navigation - 1 */
#footerNav1 .inner > ul {
    width: 1000px;
    margin-left: -20px;
}
#footerNav1 .inner > ul:before, #footerNav1 .inner > ul:after { content: ""; display: table; }
#footerNav1 .inner > ul:after { clear: both; }
#footerNav1 .inner > ul > li {
    float: left;
    width: 230px;
    margin: 30px 0 0 20px;
}
#footerNav1 .inner > ul > li > strong {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 13px;
    border-bottom: 1px solid #5a5a5a;
}
#footerNav1 .inner > ul > li > strong > a {
    display: inline-block;
    padding: 1px 0 1px 20px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 9px 13px;
    color: #fff;
    font-size: 88%;
    font-weight: bold;
}
#footerNav1 .inner > ul > li > strong > a:active,
#footerNav1 .inner > ul > li > strong > a:hover {
    color: #e54800;
    text-decoration: none;
}
#footerNav1 .inner > ul > li > ul {
    margin-left: 20px;
}
#footerNav1 .inner > ul > li > ul > li {
    margin-top: 7px;
}
#footerNav1 .inner > ul > li > ul > li > a {
    display: inline-block;
    padding: 3px 0 3px 25px;
    background-image: url(../img/icon_angle_circle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    color: #fff;
    font-size: 82%;
    font-weight: bold;
}
#footerNav1 .inner > ul > li > ul > li > a:active,
#footerNav1 .inner > ul > li > ul > li > a:hover {
    color: #e54800;
    text-decoration: none;
}
#footerNav1 .inner > ul > li > ul > li > ul {
    margin: 0 0 17px 5px;
}
#footerNav1 .inner > ul > li > ul > li > ul:first-child {
    margin-top: -4px;
}
#footerNav1 .inner > ul > li > ul > li > ul > li {
    margin-top: 4px;
}
#footerNav1 .inner > ul > li > ul > li > ul > li > a {
    display: inline-block;
    padding: 0 0 0 20px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 2px;
    background-size: 6px 9px;
    color: #fff;
    font-size: 69%;
    line-height: 1.2;
}
#footerNav1 .inner > ul > li > ul > li > ul > li > a.newwin {
    margin-left: -4px;
    padding: 0 0 0 24px;
    background-image: url(../img/icon_newwin_s.png);
    background-size: 15px 11px;
}
#footerNav1 .inner > ul > li > ul > li > ul > li > a:active,
#footerNav1 .inner > ul > li > ul > li > ul > li > a:hover {
    color: #949494;
    text-decoration: none;
}
#footerNav1 .inner > ul > li.academics {
    width: 730px;
}
#footerNav1 .inner > ul > li.academics:before,
#footerNav1 .inner > ul > li.academics:after { content: ""; display: table; }
#footerNav1 .inner > ul > li.academics:after { clear: both; }
#footerNav1 .inner > ul > li.academics > ul {
    float: left;
    width: 210px;
    margin-left: 40px;
}
#footerNav1 .inner > ul > li.academics > strong + ul {
    margin-left: 20px;
}
#footerNav1 .inner > ul > li.academics > ul > li:first-child {
    margin-top: 0;
}
#footerNav1 .inner > ul > li.academics + li {
    clear: left;
}
#footerNav1 .juaa {
    text-align: right;
    position: relative;
}
/* 20190830 */
#footerNav1 .juaa ul.sns li a {
    display: block;
    background: none;
    padding: 0;
    width: 40px;
}
#footerNav1 .juaa ul.sns li a img {
    width: 100%;
}
@media screen and (min-width: 721px), print {
    #footerNav1 .juaa ul.sns {
        position: absolute;
        width: auto;
        top: 50%;
        -webkit-transform: translate(0, -50%);
        -moz-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
        -o-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }
    #footerNav1 .juaa ul.sns li {
        float: left;
        margin-right: 0;
        margin-right: 15px;
    }
    #footerNav1 .juaa ul.sns li a:hover {
        opacity: .7;
    }
}
@media screen and (max-width: 720px) {
    #footerNav1 .juaa ul.sns {
        position: static;
        width: auto;
        text-align: center;
    }
    #footerNav1 .juaa ul.sns li {
        display: inline-block;
        margin: 0 4px 10px;
    }
}
/* footer navigation - 2 */
#footerNav2 .pagetop {
    display: none;
}
#footerNav2 ul {
    width: 980px;
}
#footerNav2 ul:before, #footerNav2 ul:after { content: ""; display: table; }
#footerNav2 ul:after { clear: both; }
#footerNav2 ul li {
    float: left;
    margin-right: 40px;
}
#footerNav2 ul li a {
    display: inline-block;
    margin-top: 0;
    padding: 3px 0 3px 12px;
    background-image: url(../img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 6px 9px;
    color: #fff;
    font-size: 69%;
}
#footerNav2 ul li a:active,
#footerNav2 ul li a:hover {
    color: #949494;
    text-decoration: none;
}
#footerNav2 ul li a.newwin {
    margin-top: 2px;
    padding: 1px 0 3px 22px;
    background-image: url(../img/icon_newwin_white_s.png);
    background-size: 15px 11px;
}
/* footer navigation - 3 */
#footerNav3 .inner {
    width: 980px;
}
#footerNav3 .inner:before, #footerNav3 .inner:after { content: ""; display: table; }
#footerNav3 .inner:after { clear: both; }
#footerNav3 ul {
    float: left;
    width: 720px;
    color: #131313;
    font-size: 69%;
}
#footerNav3 ul li {
    display: inline;
}
#footerNav3 ul li:before {
    content: "　｜　";
}
#footerNav3 ul li:first-child:before {
    content: "";
}
#footerNav3 ul li a {
    color: #131313;
    text-decoration: none;
}
#footerNav3 ul li a:active,
#footerNav3 ul li a:hover {
    color: #784836;
    text-decoration: none;
}
#footerNav3 .copyright {
    float: right;
    width: 240px;
    color: #131313;
    font-size: 69%;
    text-align: right;
}
/* page top button */
a#pagetopButton {
    display: block;
    position: fixed;
    right: 0;
    bottom: -40px;
    width: 40px;
    height: 40px;
    z-index: 999;
    opacity: .9;
}
a#pagetopButton:active,
a#pagetopButton:hover {
    opacity: .7;
}
/* ---------------- level 2 pages ---------------- */
/* heading */
.lv2H2 {
    clear: left;
    margin: 40px 0 20px 15px;
    font-size: 138%;
    font-weight: bold;
    line-height: 1.2;
}
.lv2H2 span {
    margin-left: 15px;
    font-size: 64%;
    font-weight: bold;
}
.lv2Heading {
    position: relative;
    clear: left;
    margin: 40px 0 20px 15px;
}
.lv2Heading.border {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #dad3cd;
}
.lv2Heading .lv2H2 {
    margin: 0;
}
.lv2Heading ul {
    display: table;
    position: absolute;
    right: 0;
    bottom: 0;
}
.lv2Heading.border ul {
    bottom: 18px;
}
.lv2Heading ul li {
    display: table-cell;
    padding-left: 20px;
    font-size: 75%;
}
.lv2Heading ul li a {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}
/* department */
.deptBox {
    clear: left;
    position: relative;
    margin: 0 0 40px 15px;
}
.deptBox .img {
    position: absolute;
    left: 0;
    top: 0;
    width: 170px;
}
.deptBox .txt {
    margin-left: 200px;
}
.deptBox .txt strong {
    display: block;
    margin-bottom: 15px;
}
.deptBox .txt strong a {
    display: inline-block;
    padding: 0 0 0 20px;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 10px 14px;
    color: #404040;
    font-size: 100%;
    font-weight: bold;
}
.deptBox .txt strong a:active,
.deptBox .txt strong a:hover {
    color: #e54800;
    text-decoration: none;
}
.deptBox .txt p {
    margin: 0 0 15px 0;
    font-size: 82%;
    line-height: 1.4;
}
.deptBox table {
    width: calc(100% - 200px);
    margin-left: 200px;
    background-color: #fff;
}
.deptBox table tr {
    border-top: 1px solid #ddd;
}
.deptBox table tr:first-child {
    border-top-style: none;
}
.deptBox table th {
    width: 170px;
    border-right: 1px solid #ddd;
    font-size: 82%;
    line-height: 1.5;
    vertical-align: middle;
}
.deptBox table td {
    padding: 12px 20px;
    color: #8d8d8d;
    font-size: 82%;
    line-height: 1.5;
    vertical-align: middle;
}
.deptBox table td ul {
    margin: 0;
    font-size: 100%;
}
.deptBox table th a {
    display: block !important;
    padding: 12px 8px 12px 34px !important;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 16px 50%;
    background-size: 6px 9px;
    color: #404040;
}
.deptBox table th a.newwin {
    background-position: 8px 50% !important;
    font-weight: normal !important;
}
.deptBox table th a:active,
.deptBox table th a:hover {
    color: #e54800;
    text-decoration: none;
}
/* topics box */
a.topixBox {
    display: table;
    clear: left;
    width: 725px;
    margin: 0 0 30px 15px;
    background-color: #fff;
    color: #404040;
}
a.topixBox .img {
    display: table-cell;
    width: 170px;
    padding: 20px;
    vertical-align: top;
}
a.topixBox .img img {
    display: block;
    width: 100%;
}
a.topixBox .txt {
    display: table-cell;
    padding: 20px 20px 20px 0;
    vertical-align: top;
}
a.topixBox .txt .date {
    color: #b0a79f;
    font-size: 82%;
    line-height: 1.4;
}
a.topixBox .txt strong {
    display: block;
    margin-top: 5px;
    padding: 0 0 0 16px;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 0 50%;
    background-size: 10px 14px;
    font-size: 106%;
    font-weight: bold;
    line-height: 1.2;
}
a.topixBox .txt p {
    margin: 10px 0 0 0;
    font-size: 82%;
    line-height: 1.4;
}
a.topixBox:active,
a.topixBox:hover {
    text-decoration: none;
}
a.topixBox:active .txt strong,
a.topixBox:hover .txt strong {
    color: #e54800;
}
a.topixBox:active .txt span,
a.topixBox:hover .txt span {
    color: #404040;
}
a.topixBox:active img,
a.topixBox:hover img {
    opacity: .7;
}
a.topixBox.noImage .txt {
    padding-left: 20px;
}
a.topixBox.noImage .txt strong {
    padding: 0 0 0 20px;
}
a.topixBox.noImage .txt p {
    margin: 15px 0 0 0;
}
/* tab navigation */
.tabNav {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 4px;
    overflow: hidden;
}
.tabNav:after {
    content: "";
    display: block;
    position: absolute;
    left: 15px;
    bottom: 0;
    width: 725px;
    height: 4px;
    background-color: #e54800;
}
.tabNav li {
    float: left;
    width: 170px;
    height: 61px;
    margin: 0 0 0 15px;
}
.tabNav li a {
    display: table;
    width: 168px;
    height: 60px;
    border-top: 1px solid #dad3cd;
    border-left: 1px solid #dad3cd;
    border-right: 1px solid #dad3cd;
    background-color: #fff;
    background-repeat: no-repeat;
    background-image: url(../img/icon_angle_orange.png);
    background-position: 15px 50%;
    background-size: 6px 9px;
    color: #404040;
}
.tabNav li a:active,
.tabNav li a:hover {
    color: #e54800;
    text-decoration: none;
}
.tabNav li a span {
    display: table-cell;
    height: 61px;
    padding: 0 10px 0 35px;
    font-size: 82%;
    font-weight: bold;
    line-height: 1.2;
    vertical-align: middle;
}
.tabNav li a.current {
    border-color: #e54800;
    background-color: #e54800;
    background-image: url(../img/icon_angle_white.png);
    color: #fff;
    pointer-events: none;
}
/*
-------------------------------------------------------------------------------- width: - 720px
*/
@media screen and (max-width: 720px) {
/* ---------------- basic ---------------- */
body {
    min-width: 0;
    background-color: #616161;
    overflow-y: scroll;
    text-align: left;
    text-justify: auto;
}
.onlyPC {
    display: none !important; /* 201707 */
}
/* ---------------- header ---------------- */
/* container */
#header {
    height: 58px;
    padding: 0 10px;
    border-top: 6px solid #e54800;
}
#header .inner {
    width: 100%;
    margin: 0;
}
#header > .inner .inner {
    display: none;
}
/* site id */
#siteId {
    width: 132px;
    padding-top: 12px;
}
#siteId img {
    width: 132px;
    height: 35px;
}
/* ---------------- slide navigation ---------------- */
/* container */
#overflowContainer {
    overflow: hidden;
}
#globalContainer {
    position: relative;
    margin-left: 0;
    overflow: hidden;
}
#globalContainer:before, #globalContainer:after { content: ""; display: table; }
#globalContainer:after { clear: both; }
#bodyContainer {
    position: relative;
    float: left;
}
#bodyCover {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    background: rgba(255,255,255,.2);
}
#slideNav {
    position: relative;
    float: left;
    box-shadow: 0 -4px 4px rgba(19,5,8,.4);
}
/* open button */
#menuOpenBtn {
    display: block;
    float: right;
    margin-top: 11px;
    width: 36px;
    height: 36px;
}
#menuOpenBtn img {
    width: 36px;
    height: 36px;
}
/* close button */
a#menuCloseBtn {
    display: none;
    position: absolute;
    left: -46px;
    top: 17px;
    width: 36px;
    height: 36px;
    background-image: url(../img/btn_menu_close.png);
    background-repeat: no-repeat;
    background-size: 36px 36px;
}
a#menuCloseBtn span {
    display: none;
}
/* global navigation */
ul#slideNav1 > li {
    position: relative;
    border-top: 1px solid #ed7f4d;
}
ul#slideNav1 > li:first-child {
    border-top-style: none;
}
ul#slideNav1 > li > a:first-child {
    display: block;
    height: 45px;
    padding: 0 15px 0 30px;
    background-color: #e54800;
    background-image: url(../img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 15px 50%;
    background-size: 6px 9px;
    color: #fff;
    font-size: 88%;
    line-height: 44px;
}
ul#slideNav1 > li > a:first-child:active,
ul#slideNav1 > li > a:first-child:hover {
    text-decoration: none;
}
ul#slideNav1 a.toggle {
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 45px;
    background-color: #c83f00;
    background-image: url(../img/icon_plus_white.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 14px 14px;
}
ul#slideNav1 a.toggle.close {
    background-image: url(../img/icon_minus_white.png);
}
ul#slideNav1 > li > ul {
    display: none;
}
ul#slideNav1 > li > ul > li {
    border-top: 1px solid #7f7f7f;
}
ul#slideNav1 > li:last-child > ul > li:last-child {
    border-bottom: 1px solid #7f7f7f;
}
ul#slideNav1 > li > ul > li > a {
    display: block;
    padding: 6px 15px 6px 50px;
    background-color: #616161;
    background-image: url(../img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 35px 50%;
    background-size: 6px 9px;
    color: #fff;
    font-size: 82%;
    line-height: 1.4;
}
ul#slideNav1 > li > ul > li > a:active,
ul#slideNav1 > li > ul > li > a:hover {
    color: #fff;
    text-decoration: none;
}
/* target navigation */
ul#slideNav2 {
    padding: 10px 8px 8px 10px;
    background-color: #616161;
}
ul#slideNav2:before, ul#slideNav2:after { content: ""; display: table; }
ul#slideNav2:after { clear: both; }
ul#slideNav2 li {
    float: left;
    width: 48%;
    width: calc(50% - 2px);
    margin: 0 2px 2px 0;
    background-color: #fff;
}
ul#slideNav2 li:first-child {
    width: 98%;
    width: calc(100% - 2px);
}
ul#slideNav2 li a {
    display: block;
    padding: 15px 0 15px 25px;
    background: no-repeat 22% 50%;
    color: #505050;
    font-size: 63%;
    font-weight: bold;
    text-align: center;
}
ul#slideNav2 li a:active,
ul#slideNav2 li a:hover {
    color: #505050;
    text-decoration: none;
}
ul#slideNav2 li:nth-child(5n+1) a {
    background-image: url(../img/icon_hnav_1.png);
    background-position: 36% 50%;
    background-size: 19px 18px;
}
ul#slideNav2 li:nth-child(5n+2) a {
    background-image: url(../img/icon_hnav_2.png);
    background-size: 20px 19px;
}
ul#slideNav2 li:nth-child(5n+3) a {
    background-image: url(../img/icon_hnav_3.png);
    background-size: 20px 20px;
}
ul#slideNav2 li:nth-child(5n+4) a {
    background-image: url(../img/icon_hnav_4.png);
    background-size: 21px 16px;
}
ul#slideNav2 li:nth-child(5n+5) a {
    padding-left: 20px;
    background-image: url(../img/icon_hnav_5.png);
    background-size: 14px 17px;
}
/* primary navigation */
#slideEIWbtn a,
#slideNav3 li a {
    display: block;
    padding: 12px 15px;
    border-bottom: 1px solid #959595;
    background-color: #888;
    color: #fff;
    font-size: 75%;
}
#slideEIWbtn a:active,
#slideEIWbtn a:hover,
#slideNav3 li a:active,
#slideNav3 li a:hover {
    color: #fff;
    text-decoration: none;
}
#slideEIWbtn { /* 201707 */
    display: none;
}
/* language */
#slideLang > a {
    display: block;
    position: relative;
    padding: 12px 15px;
    border-bottom: 1px solid #959595;
    background-color: #888;
    color: #fff;
    font-size: 75%;
}
#slideLang a:active,
#slideLang a:hover {
    color: #fff;
    text-decoration: none;
}
#slideLang > a span {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 100%;
    background-color: #616161;
    background-image: url(../img/icon_plus_white.png);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 14px 14px;
}
#slideLang > a.close span {
    background-image: url(../img/icon_minus_white.png);
}
#slideLang > ul {
    display: none;
}
#slideLang ul li {
    border-bottom: 1px solid #7f7f7f;
}
#slideLang ul li a {
    display: block;
    padding: 6px 15px 6px 50px;
    background-color: #616161;
    background-image: url(../img/icon_angle_white.png);
    background-repeat: no-repeat;
    background-position: 35px 50%;
    background-size: 6px 9px;
    color: #fff;
    font-size: 82%;
    line-height: 1.4;
}
#slideLang ul li span {
    display: block;
    padding: 6px 15px 6px 50px;
    background-color: #616161;
    background-repeat: no-repeat;
    background-position: 35px 50%;
    background-size: 6px 9px;
    color: #fff;
    font-size: 82%;
    line-height: 1.4;
}
/* #slideLang ul li li {
    margin-left: 30px;
}
#slideLang ul li li a {
    padding-left: 40px;
    background-position-x: 25px;
} */
#slideLang ul li ul {
    border-top: 1px solid #7f7f7f;
}
#slideLang ul li ul li a {
    padding-left: 65px;
    background-position: 50px 50%;
}
/* search */
#slideSearch {
    padding: 10px;
    background-color: #888;
}
.searchForm {
    width: 100%;
    height: 35px;
    background-color: #fff;
}
.searchForm .searchTxt {
    width: 80%;
    width: calc(100% - 35px);
    height: 35px;
}
.searchForm .searchBtn {
    width: 35px;
    height: 35px;
    background-size: 14px 14px;
}
/* ---------------- global navigation ---------------- */
#globalNav {
    display: none;
}
/* ---------------- level 2 header ---------------- */
#lv2Header,
#lv2Header.short {
    height: 100px;
    padding: 0;
    background-color: #f9f4f0;
}
#lv2Header ul#breadcrumbs {
    width: auto;
    padding-bottom: 6px;
}
#lv2Header h1,
#lv2Header.short h1 {
    position: absolute;
    left: 35px;
    bottom: 28px;
    width: auto;
    margin: 0;
    padding-left: 0;
    color: #1f1e1e;
    font-size: 125%;
}
#lv2Header .img {
    position: relative;
    left: 0;
    height: 75px;
    margin-left: 0;
    overflow: hidden;
}
#lv2Header .img img {
    position: absolute;
    left: 50%;
    top: 0;
    width: 720px;
    max-width: none;
    margin-left: -360px;
}
#lv2Header.short .img img {
    width: 1018px;
    margin-left: -509px;
}
/* ---------------- local navigation ---------------- */
#localNavHeader {
    padding: 12px 10px;
    background-color: #f9f4f0;
}
ul#localNav {
    margin-top: 0;
    background-color: #f9f4f0;
}
ul#localNav > li {
    border-top: 1px solid #dad3cd;
}
ul#localNav > li > a {
    padding: 8px 25px 8px 10px;
    border-right: 10px solid #f9f4f0;
    background-position: right center;
    background-size: 14px 14px;
    font-size: 82%;
}
ul#localNav > li ul li a {
    padding: 7px 0 7px 48px;
    background-position: 27px 50%;
    background-size: 6px 9px;
    font-size: 75%;
}
ul#localNav > li ul li a.pdf {
    background-position: 22px 50%;
    background-size: 16px 16px;
}
ul#localNav > li ul li a.download {
    background-position: 22px 50%;
    background-size: 16px 16px;
}
ul#localNav > li ul li a.ebook {
    background-position: 22px 50%;
    background-size: 16px 16px;
}
ul#localNav > li ul li a.newwin {
    background-position: 22px 50%;
    background-size: 16px 16px;
}
/* ---------------- body ---------------- */
/* container */
#body {
    padding: 0;
}
#body > .inner {
    width: auto;
    margin: 0;
    padding-right: 10px;
}
#body > .inner #main {
    float: none;
    width: 100%;
    padding-top: 15px;
}
.fontLarge #body .inner #main {
    font-size: 100%;
}
#body > .inner #sub {
    float: none;
    width: auto;
    margin-right: -10px;
    padding: 15px 10px;
    background-color: #fff;
}
#body > .inner #main > .wrapper.w75,
#body > .inner #main > .wrapper.w50 {
    float: none;
    clear: left !important;
    width: 100% !important;
}
#body > .inner #main > .wrapper.w25 {
    width: 50% !important;
}
#body > .inner #main > .wrapper.w25 a.textButton,
#body > .inner #main > .wrapper.w25 a.imageButton,
#body > .inner #main > .wrapper.w25 a.orangeButton {
    width: calc(100% - 10px);
}
/* utility */
.w75 {
    clear: left !important;
    float: none;
    width: calc(100% - 10px) !important;
}
.w50 {
    clear: left !important;
    float: none;
    width: calc(100% - 10px) !important;
}
.w25 {
    float: left;
    width: calc(50% - 10px) !important;
}
.mb10 { margin-bottom: 5px !important; }
.mb20 { margin-bottom: 10px !important; }
.mb30 { margin-bottom: 15px !important; }
.mb40 { margin-bottom: 20px !important; }
.mb50 { margin-bottom: 25px !important; }
.mb60 { margin-bottom: 30px !important; }
.mb70 { margin-bottom: 35px !important; }
.mb80 { margin-bottom: 40px !important; }
.mb90 { margin-bottom: 45px !important; }
/* breadcrumbs */
ul#breadcrumbs {
    padding: 6px 10px 15px;
    font-size: 56%;
}
ul#breadcrumbs img {
    width: 8px;
    height: 8px;
}
/* side banners */
ul#sideBanners {
    margin-top: 0;
    padding: 5px 10px 15px;
    background-color: #f9f4f0;
}
ul#sideBanners img {
    width: 100%;
}
/* side links */
ul#sideLinks {
    margin-top: 0;
    border-top-style: none;
    background-color: #f9f4f0;
}
ul#sideBanners + ul#sideLinks {
    border-top: 1px solid #dad3cd;
}
ul#sideLinks li:last-child {
    border-bottom-style: none;
}
ul#sideLinks li a {
    padding: 8px 0 9px 30px;
    background-position: 15px 50%;
    font-size: 82%;
}
ul#sideLinks li a.pdf,
ul#sideLinks li a.download,
ul#sideLinks li a.ebook,
ul#sideLinks li a.newwin {
    background-position: 10px 50%;
    background-size: 16px 16px;
}
/* headings */
.h1 {
    margin: 0 0 25px 10px;
    padding-bottom: 8px;
    border-bottom: 2px solid #404040;
    font-size: 125%;
}
.h1 .img {
    margin-top: 10px;
}
.h1.image {
    height: 65px;
    overflow: hidden;
}
.h1.image img {
    width: 720px;
    max-width: none;
    margin-top: -28px;
}
.h1.image span {
    left: 20px;
}
.h2 {
    margin: 0 0 15px 10px;
    padding: 0 0 2px 8px;
    border-left: 5px solid #cdc4bc;
    font-size: 113%;
}
.h2.image {
    height: 50px;
    overflow: hidden;
}
.h2.image img {
    width: 720px;
    max-width: none;
    margin-top: -15px;
}
.h2.image span {
    left: 10px;
    top: 17px;
    font-size: 89%;
}
.h2.border { /* 201707 */
    padding: 0 0 10px 0;
}
.h2.border span { /* 201707 */
    padding: 0 0 2px 8px;
    border-left: 5px solid #cdc4bc;
}
.h3 {
    margin: 0 0 15px 10px;
    padding: 6px 10px;
    background-color: #e4d8d0;
    font-size: 94%;
}
.h4 {
    margin: 0 0 15px 10px;
}
/* text */
.bodyText,
p:not([class]) {
    margin: 0 0 15px 10px;
    line-height: 1.6;
}
.boxText {
    margin: 0 0 15px 10px;
    padding: 7px 10px;
    line-height: 1.6;
}
/* blockquote */
blockquote {
    margin: 0 0 15px 10px;
    padding: 7px 10px;
    line-height: 1.6;
}
/* list */
ul.plainList {
    margin: 0 0 15px 10px;
}
ul.plainList li {
    margin-top: 7px;
}
ul.plainList li ul {
    margin: 0 0 0 24px;
}
ol.plainList {
    margin: 0 0 15px 10px;
}
ol.plainList li {
    margin-top: 7px;
}
ol.plainList li ol {
    margin: 0 0 0 24px;
}
ul.plainList.col4 li {
    width: 50%;
    padding-left: 22px;
}
ul.plainList.col4.noMarker li {
    padding-left: 10px;
}
ul.plainList.col4 li:nth-child(-n+4) {
    margin-top: 7px;
}
ul.plainList.col4 li:nth-child(-n+2) {
    margin-top: 0;
}
ul.plainList.col4 li:nth-child(2n+1) {
    clear: left;
}
/* contact */
.contact {
    margin: 0 0 15px 10px;
}
.contact .head {
    padding: 8px 10px;
    font-size: 82%;
}
.contact dl {
    padding: 0 10px 10px 10px;
}
.contact dl dt {
    margin-top: 10px;
    font-size: 82%;
}
.contact dl dd {
    margin-top: 5px;
    font-size: 75%;
}
/* table */
table.plainTable,
table.planeTable {
    width: auto;
    min-width: 100%;
    margin: 0;
}
table.plainTable.w50,
table.planeTable.w50 {
    width: 100% !important;
}
table.plainTable th,
table.plainTable td,
table.planeTable th,
table.planeTable td {
    padding: 9px 10px;
}
.scrollableTable {
    clear: left;
    margin: 0 0 15px 10px;
    overflow: auto;
}
.scrollableTable::-webkit-scrollbar {
  height: 5px;
}
.scrollableTable::-webkit-scrollbar-track {
    background-color: #efefef;
}
.scrollableTable::-webkit-scrollbar-thumb {
    background-color: #888;
}
.scrollableTable table th,
.scrollableTable table td {
    white-space: nowrap;
}
.scrollableTable table.w50 th,
.scrollableTable table.w50 td {
    white-space: normal;
}
/* anchor link */
ul.anchorLink {
    margin: 0 0 15px 10px;
    padding-top: 7px;
}
ul.anchorLink li {
    padding-bottom: 8px;
}
ul.anchorLink li a {
    padding: 3px 16px 3px 28px;
    font-size: 88%;
}
/* link list */
ul.linkList {
    margin: 0 -10px 15px 0;
    border-top: 1px solid #dad3cd;
}
ul.linkList li {
    margin-top: 0;
    border-bottom: 1px solid #dad3cd;
}
ul.linkList li a {
    display: block !important;
    padding: 12px 0 12px 36px !important;
}
ul.linkList li a.normal {
    background-position: 17px 50% !important;
}
ul.linkList li a.newwin,
ul.linkList li a.pdf,
ul.linkList li a.download,
ul.linkList li a.ebook,
ul.linkList li a.calendar {
    background-position: 10px 50% !important;
}
ul.linkList.col4 li {
    float: none;
    width: auto;
}
ul.linkList.col4 li a {
    padding: 12px 0 12px 36px !important;
}
/* link box */
.linkBox {
    margin: 0 0 15px 10px;
    border-top: 3px solid #e54800;
    font-size: 75%;
}
.linkBox .header {
    padding: 12px 0;
}
.linkBox ul {
    padding: 8px 0;
}
.linkBox ul li {
    display: inline;
    margin: 6px 15px 0 0;
}
.linkBox a {
    background-position: 10px 50% !important;
}
.linkBox a.newwin,
.linkBox a.pdf,
.linkBox a.download,
.linkBox a.ebook {
    background-position: 3px 50% !important;
}
/* plugin download */
.plugin {
    display: block;
    width: auto;
    margin: 0 0 15px 10px;
    background-color: #fff;
}
.plugin .banner {
    display: block;
    padding: 10px 10px 6px 10px;
}
.plugin p {
    display: block;
    width: auto;
    padding: 0 10px 10px 10px;
    font-size: 69%;
    line-height: 1.3;
}
/* text button */
a.textButton {
    width: calc(50% - 10px);
    height: 50px;
    margin: 0 0 15px 10px;
    border-top: 3px solid #e54800;
    background-position: 10px 50%;
}
a.textButton span {
    height: 50px;
    padding: 0 10px 0 25px;
    font-size: 75%;
}
#main a.textButton.newwin,
#main a.textButton.pdf,
#main a.textButton.download,
#main a.textButton.ebook {
    background-position: 3px 50%;
}
/* image button */
a.imageButton {
    width: calc(50% - 10px);
    margin: 0 0 15px 10px;
    border-top: 3px solid #e54800;
}
a.imageButton .txt {
    height: 50px;
    padding: 0 10px 0 25px;
    background-position: 10px 50%;
    font-size: 75%;
}
a.imageButton.layered .txt { /* 201707 */
    height: 30vw;
}
a.imageButton.layered .img { /* 201707 */
    margin-top: -30vw;
    height: 30vw;
}
#lv2Header + #body a.imageButton.layered .txt { /* 201707 */
    height: 30vw;
}
a.imageButton.newwin .txt,
a.imageButton.pdf .txt,
a.imageButton.download .txt,
a.imageButton.ebook .txt {
    background-position: 3px 50%;
}
#lv2Header + #body a.imageButton .txt {
    height: 40px;
}
/* box button */
a.boxButton {
    width: calc(100% - 10px);
    margin: 0 0 15px 10px;
    border-top: 3px solid #e54800;
}
a.boxButton .img {
    width: 50%;
    padding: 15px 10px;
}
a.boxButton .txt {
    padding: 15px 10px 15px 0;
}
a.boxButton.noImage .txt {
    padding-left: 10px;
}
a.boxButton.noImage .txt strong {
    padding: 0 0 0 16px;
    background-size: 9px 13px;
    font-size: 93%;
}
a.boxButton.noImage .txt span {
    margin-top: 8px;
}
a.boxButton.noImage .txt dl {
    margin: 8px 0 0 10px;
    font-size: 75%;
    line-height: 1.3;
}
a.boxButton.noImage .txt dl.w50 {
    clear: none !important;
    float: left;
    max-width: calc(50% - 5px);
}
a.boxButton.noImage .txt dl.w25 {
    max-width: calc(25% - 7px);
}
a.boxButton.noImage .txt dl dd {
    margin: 3px 0 0 .8em;
}
a.boxButton.vertical .txt {
    padding: 0 10px 15px 10px;
}
a.boxButton.vertical .txt span {
    margin-top: 8px;
}
a.boxButton.w50 .img {
    width: 120px;
    padding-right: 10px;
}
a.boxButton.vertical.w50 .img {
    width: calc(100% - 20px);
}
a.boxButton.noImage.w25 .txt {
    padding: 15px 10px;
}
/* right button */
a.rightButton {
    width: auto;
    margin: 0 0 15px 10px;
    border-top: 3px solid #e54800;
}
a.rightButton span {
    font-size: 75%;
}
a.rightButton img {
    max-width: none;
    min-width: 100%;
    min-height: 56px;
}
/* orange button */
a.orangeButton {
    width: calc(50% - 10px);
    height: 50px;
    margin: 0 0 15px 10px;
    background-position: 10px 50%;
}
a.orangeButton span {
    padding: 0 10px 0 25px;
    font-size: 82%;
}
a.orangeButton.newwin {
    background-position: 3px 50% !important;
}
/* image */
.image {
    margin: 0 0 15px 10px;
}
.image p {
    padding: 7px 10px;
    line-height: 1.6;
}
.image img {
    width: 100%;
}
.image.left25 img {
    float: none;
    width: auto;
}
.image.left50 img {
    float: none;
    width: auto;
}
.image.left25 p {
    float: none;
    width: auto;
}
.image.left50 p {
    float: none;
    width: auto;
}
/* YouTube */
.youTube {
    margin: 0 0 15px 10px;
}
/* news list */
.newsList {
    margin: 0 0 15px 10px;
    padding: 0;
}
.newsList .header {
    padding: 8px 10px;
    border-bottom-style: none;
    font-size: 88%;
}
.newsList .header a {
    margin-top: 2px;
    padding: 0 0 0 11px;
}
.newsList .body {
    width: auto;
    height: auto;
    margin-top: 0;
}
.newsList .body ul li {
    display: none;
}
.newsList .body ul li:nth-child(-n+3) {
    display: block;
}
.newsList .body ul li {
    padding: 15px 10px;
    border-top: 1px solid #eceae8;
    background-image: url(../img/icon_angle_orange.png);
    background-repeat: no-repeat;
    background-position: 97% 50%;
    background-size: 9px 13px;
}
.newsList .body ul li .date {
    display: block;
    float: left;
    margin: 0 4px 8px 0;
    padding: 2px 0;
    font-size: 69%;
}
.newsList .body ul li .category {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    font-size: 56%;
}
.newsList .body ul li .category a {
    padding: 3px 0 5px;
}
.newsList .body ul li .title {
    display: block;
    clear: left;
    width: auto;
    padding: 0 20px 0 0;
}
.newsList .body ul li .title a {
    font-size: 82%;
    line-height: 1.4;
}
.newsList.borderTop {
    padding-top: 0;
    border-top: 4px solid #1674b9;
}
.newsList.borderTop .header {
    padding-bottom: 8px;
    border-bottom-style: none;
}
.newsList.borderTop .body {
    height: auto;
    margin-top: 0;
}
/* accordion */
.accordionHead {
    margin-bottom: 8px !important;
}
.accordionHead:hover {
    border-left-color: #cdc4bc;
    color: #404040;
}
.accordionHead:after {
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background-size: 20px 40px;
}
.accordionHead.open:after {
    background-position: 0 -20px;
}
.accordionBody {
    margin: 0 0 0 10px;
    padding-top: 15px;
}
.accordionBody .inner {
    margin: 0 0 0 -10px;
}
/* parts list */
.partsHeading {
    margin: 0 0 15px 10px;
}
.partsHeading span {
    border-radius: 6px;
    font-size: 69%;
}
.partsCode,
.partsCode + .bodyText {
    display: none;
}
/* ---------------- footer ---------------- */
/* container */
#footer .inner {
    width: auto;
}
#footerNav1 {
    padding: 15px 0;
}
#footerNav2 {
    padding: 0 0 5px;
}
#footerNav3 {
    padding: 12px 0 20px;
}
/* footer navigation - 1 */
#footerNav1 .inner > ul {
    display: none;
}
#footerNav1 .juaa {
    text-align: center;
}
#footerNav1 .juaa img {
    width: 74px;
}
/* footer navigation - 2 */
#footerNav2 .pagetop {
    display: block;
    margin-bottom: -5px;
    padding-top: 5px;
    text-align: center;
}
#footerNav2 .pagetop img {
    width: 30px;
}
#footerNav2 ul {
    width: auto;
}
#footerNav2 ul li {
    width: 50%;
    margin: 0 0 10px 0;
    text-align: center;
}
/* footer navigation - 3 */
#footerNav3 .inner {
    width: auto;
    text-align: center;
}
#footerNav3 ul {
    display: inline-block;
    float: none;
    width: auto;
    font-size: 63%;
}
#footerNav3 ul li:before {
    content: " ｜ ";
}
#footerNav3 .copyright {
    float: none;
    width: auto;
    margin-top: 12px;
    font-size: 63%;
    text-align: center;
}
/* page top button */
a#pagetopButton {
    display: none;
}
/* ---------------- level 2 pages ---------------- */
/* heading */
.lv2H2 {
    clear: left;
    margin: 25px 0 15px 10px;
    font-size: 113%;
}
.lv2Heading {
    margin: 25px 0 15px 10px;
}
.lv2Heading.border {
    padding-bottom: 10px;
}
.lv2Heading ul {
    bottom: 8px;
}
.lv2Heading ul li {
    padding-left: 10px;
    font-size: 69%;
}
.lv2Heading ul li a {
    padding-left: 24px !important;
}
.lv2Heading ul li a.normal {
    padding-left: 18px !important;
}
/* department */
.deptBox {
    margin: 0 0 20px 10px;
}
.deptBox:before, .deptBox:after { content: ""; display: table; }
.deptBox:after { clear: both; }
.deptBox .img {
    position: static;
    float: left;
    width: 120px;
    margin-bottom: 8px;
}
.deptBox .txt {
    float: left;
    width: 100%;
    margin-left: -120px;
}
.deptBox .txt strong {
    margin: 0 0 8px 130px;
}
.deptBox .txt strong a {
    padding: 0 0 0 16px;
    background-size: 9px 13px;
    font-size: 93%;
}
.deptBox .txt p {
    margin: 0 0 8px 130px;
}
.deptBox table {
    clear: left;
    width: 100%;
    margin-left: 0;
}
.deptBox table th {
    width: 120px;
    font-size: 75%;
    line-height: 1.4;
}
.deptBox table td {
    padding: 8px 10px;
    font-size: 75%;
    line-height: 1.4;
}
.deptBox table th a {
    padding: 8px 8px 8px 34px !important;
}
/* topics box */
a.topixBox {
    display: block;
    width: calc(100% - 10px);
    margin: 0 0 15px 10px;
}
a.topixBox .img {
    display: block;
    width: auto;
    padding: 15px 10px;
}
a.topixBox .txt {
    display: block;
    padding: 0 15px 10px;
}
a.topixBox.noImage .txt {
    padding-top: 10px;
    padding-left: 15px;
}
a.topixBox.noImage .txt strong {
    padding: 0 0 0 16px;
    background-size: 9px 13px;
    font-size: 93%;
}
a.topixBox.noImage .txt p {
    margin: 8px 0 0 0;
}
/* tab navigation */
.tabNav {
    margin-bottom: 10px;
    padding-bottom: 0;
}
.tabNav:after {
    content: none;;
}
.tabNav li {
    width: calc(50% - 10px);
    height: 50px;
    margin: 0 0 15px 10px;
}
.tabNav li a {
    width: 100%;
    height: 50px;
    border-style: none;
    border-top: 3px solid #e54800;
    background-position: 10px 50%;
}
.tabNav li a span {
    height: 50px;
    padding: 0 10px 0 25px;
    font-size: 75%;
}
} /* width: - 720px */
/*
-------------------------------------------------------------------------------- width: - 400px
*/
@media screen and (max-width: 400px) {
/* headings */
.h1.image img {
    width: auto;
    height: 65px;
    margin-top: 0;
}
.h2.image img {
    width: auto;
    height: 50px;
    margin-top: 0;
}
} /* width: - 400px */
/*
-------------------------------------------------------------------------------- print
*/
@media print {
body {
    width: 1020px;
    background-color: #fff;
    -webkit-print-color-adjust: exact;
}
} /* print */
/*
