@charset "UTF-8";


html {
    overflow-y: scroll;
}

body, th, td, input, textarea {
    font-size: small;
    line-height: 140%;
    font-family: "Simhei", "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
    color: #535353;
}

body {
    margin: 0px;
}

img {
    border: 0px;
}

a {
    color: #5a9fe6;
    text-decoration: none;
}

a:hover {
    color: #ff6e75;
}

a img.opacity:hover,
a img.opacity:active {
    opacity:0.7;
    filter:alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}

dl, ul, ol {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

p {
    margin: 0px;
}

p+p,
p+ul,
p+ol,
p+.textbox,
p+.datelist,
p+table.table,
p+.columns,
ul+p,
ul+ul,
ul+ol,
ul+.textbox,
ul+.datelist,
ul+table.table,
ul+.columns,
ol+p,
ol+ul,
ol+ol,
ol+.textbox,
ol+.datelist,
ol+table.table,
ol+.columns,
.textbox+p,
.textbox+ul,
.textbox+ol,
.textbox+.textbox,
.textbox+.datelist,
.textbox+table.table,
.textbox+.columns,
.datelist+p,
.datelist+ul,
.datelist+ol,
.datelist+.textbox,
.datelist+.datelist,
.datelist+table.table,
.datelist+.columns,
table.table+p,
table.table+ul,
table.table+ol,
table.table+.textbox,
table.table+.datelist,
table.table+table.table,
table.table+.columns,
.columns+p,
.columns+ul,
.columns+ol,
.columns+.textbox,
.columns+.datelist,
.columns+table.table,
.columns+.columns {
    margin-top: 1.5em;
}

#sidebar .block p+p,
#sidebar .block p+ul,
#sidebar .block p+ol,
#sidebar .block p+.textbox,
#sidebar .block p+.datelist,
#sidebar .block p+table.table,
#sidebar .block p+.columns,
#sidebar .block ul+p,
#sidebar .block ul+ul,
#sidebar .block ul+ol,
#sidebar .block ul+.textbox,
#sidebar .block ul+.datelist,
#sidebar .block ul+table.table,
#sidebar .block ul+.columns,
#sidebar .block ol+p,
#sidebar .block ol+ul,
#sidebar .block ol+ol,
#sidebar .block ol+.textbox,
#sidebar .block ol+.datelist,
#sidebar .block ol+table.table,
#sidebar .block ol+.columns,
#sidebar .block .textbox+p,
#sidebar .block .textbox+ul,
#sidebar .block .textbox+ol,
#sidebar .block .textbox+.textbox,
#sidebar .block .textbox+.datelist,
#sidebar .block .textbox+table.table,
#sidebar .block .textbox+.columns,
#sidebar .block .datelist+p,
#sidebar .block .datelist+ul,
#sidebar .block .datelist+ol,
#sidebar .block .datelist+.textbox,
#sidebar .block .datelist+.datelist,
#sidebar .block .datelist+table.table,
#sidebar .block .datelist+.columns,
#sidebar .block table.table+p,
#sidebar .block table.table+ul,
#sidebar .block table.table+ol,
#sidebar .block table.table+.textbox,
#sidebar .block table.table+.datelist,
#sidebar .block table.table+table.table,
#sidebar .block table.table+.columns,
#sidebar .block .columns+p,
#sidebar .block .columns+ul,
#sidebar .block .columns+ol,
#sidebar .block .columns+.textbox,
#sidebar .block .columns+.datelist,
#sidebar .block .columns+table.table,
#sidebar .block .columns+.columns {
    margin-top: 1.2em;
}

.taLeft { text-align: left !important; }
.taCenter { text-align: center !important; }
.taRight { text-align: right !important; }

.fwNormal { font-weight: normal !important; }
.fwBold { font-weight: bold !important; }

.mt0 { margin-top: 0 !important; }
.mb0 { margin-bottom: 0 !important; }
.mrLastChild { margin-right: 0 !important; }

.kayakuspirit {
    font-family: Times New Roman, Times, serif;
}

#top {
    width: 100%;
    min-width: 1000px;
    background: #ffffff;
    background-color: rgba(255, 255, 255, 0.95);
    border-bottom: 1px solid #0077be;
    z-index: 100;
}

#ptop {
    width: 100%;
    min-width: 1000px;
    background: #ffffff;
    background-color: rgba(255, 255, 255, 0.95);
}

#header {
    width: 960px;
    margin: 0px auto;
    padding: 0px 20px;
}
#header a:hover {
	color: #ff6e75 !important;
}

#header:after {
    content: "";
    clear: both;
    display: block;
}

#logo {
    float: left;
    margin-top: 15px;
    margin-left: 10px;
}

#headertools {
    float: right;
    /* overflow: hidden; */
}

#fontsize {
    float: left;
}

#fontsize dl {
    display: table;
}

#fontsize dt {
    display: table-cell;
    padding: 5px 12px 0px 0px;
    white-space: nowrap;
    vertical-align: middle;
}

#fontsize dd {
    display: table-cell;
    padding: 0px 0px 0px 1px;
    vertical-align: middle;
}

#fontsize dd a {
    display: block;
    padding: 12px 9px 6px;
    color: #ffffff;
    font-weight: bold;
    line-height: 100%;
    text-decoration: none;
    background: #5a9fe6;
    border-bottom: 1px solid #142365;
}

#fontsize .fontsize_small dd#fontsize_small a,
#fontsize .fontsize_medium dd#fontsize_medium a,
#fontsize .fontsize_large dd#fontsize_large a,
#fontsize dd a:hover {
    color: #ffffff !important;
    background: #0077be;
    border-bottom: 1px solid #00042a;
}

#search {
    float: left;
    margin: 5px 0px 0px 20px;
}
#search .kayaku-search-box {
    width: 200px;
    margin: 0 !important;
}
#search .kayaku-search-box .mf_finder_searchBox_items {
    padding: 0 !important;
}
#search .kayaku-search-box .mf_finder_searchBox_query_input {
    min-height: initial;
    min-height: auto;
    font-size: inherit !important;
    padding: 4px 5px !important;
}
#search .kayaku-search-box .mf_finder_searchBox_submit {
    background-color: #0077be !important;
    color: #fff !important;
}
#search .kayaku-search-box .mf_finder_searchBox_submit span {
    margin: 0 !important;
}

#print {
    float: left;
}

#print dl {
    display: table;
    margin-left: 14px;
}

#print dt {
    display: table-cell;
    padding: 5px 8px 0px 0px;
    white-space: nowrap;
    vertical-align: middle;
}

#print dd {
    display: table-cell;
    padding: 0px 0px 0px 1px;
    vertical-align: middle;
}

#print dd a {
    display: block;
    width: 30px;
    height: 31px;
    text-indent: -10000px;
    background: url(../images/print.gif) no-repeat center 60% #0077be;
    border-bottom: 1px solid #00042a;
    overflow: hidden;
}

#top #contact,
#language {
    float: left;
    margin-left: 9px;
}

#top #contact ul,
#language ul {
    overflow: hidden;
}

#top #contact ul li,
#language ul li {
    float: left;
    margin-left: 1px;
}

#top #contact a,
#language a {
    display: block;
    padding: 12px 12px 6px;
    color: #ffffff;
    line-height: 100%;
    text-decoration: none;
    background: #5a9fe6;
    border-bottom: 1px solid #142365;
}

#top #contact a:hover,
#language a:hover {
    color: #ffffff !important;
    background: #0077be;
    border-bottom: 1px solid #00042a;
}

#globalnavi {
    float: right;
    margin: 24px -5px 9px 0px;
    overflow: hidden;
}

#globalnavi ul {
    float: left;
    overflow: hidden;
}

#globalnavi li {
    display: block;
    float: left;
    line-height: 100%;
}

#globalnavi li+li {
    margin-left: 5px;
    padding-left: 5px;
    border-left: 1px solid #b9b9b9;
    box-shadow: -1px 0px 0px #d3d3d3;
}

#globalnavi li a {
    display: inline-block;
    padding: 3px 5px 2px;
    color: #000000;
    font-size: 105%;
    line-height: 100%;
    text-decoration: none;
}

body.vision #globalnavi li.vision a,
body.business #globalnavi li.business a,
body.information #globalnavi li.information a,
body.group #globalnavi li.group a,
body.ir #globalnavi li.ir a,
body.csr #globalnavi li.csr a,
body.rd #globalnavi li.rd a {
    color: #ffffff;
    background: #0077be;
}

#breadcrumbs {
    width: 100%;
    min-width: 1000px;
    margin: 0px auto 20px;
    background: #ececec;
    border-top: 2px solid #ffffff;
    border-bottom: 9px solid #5f91a6;
    box-shadow: inset 0px -1px 0px #ffffff;
}

#breadcrumbs ul {
    width: 960px;
    margin: auto;
    padding: 9px 20px;
    line-height: 100%;
    color: #959595;
}

#breadcrumbs ul li {
    display: inline-block;
}

#breadcrumbs ul li span {
    padding-right: 11px;
    background: url(../images/breadcrumbs.gif) no-repeat right 5px;
}

#breadcrumbs ul li a {
    padding-right: 11px;
    background: url(../images/breadcrumbs.gif) no-repeat right 5px;
}

#main {
    width: 960px;
    padding: 0px 20px 70px;
    margin: auto;
}

#main:after {
    content: "";
    clear: both;
    display: block;
}


#main.fontsize_medium {
    font-size: 100%;
}

#main.fontsize_large {
    font-size: 120%;
    line-height: 140%;
}

#main.fontsize_small {
    font-size: 85%;
}

#categoryvisual {
    margin: 0px 0px 50px;
}

#categoryvisual h1 {
    margin: 0px;
}

#categoryvisual img {
    display: block;
}


#sidebar {
    float: right;
    display: inline;
    width : 255px;
}
#sidebar a:hover {
	color: #ff6e75 !important;
}

#sidebar *+.localmenu {
    margin-top: 50px;
}

#sidebar .localmenu dt a {
    display: block;
    padding: 15px 10px;
    color: #4377bb;
    font-weight: bold;
    font-size: 110%;
    background: #ececec;
}

#sidebar .localmenu dd {
    margin: 0px;
}

#sidebar .localmenu dd+dd {
    border-top: 1px solid #ffffff;
}

#sidebar .localmenu dd a {
    display: block;
    padding: 15px 10px;
    color: #ffffff;
    font-weight: bold;
    background: no-repeat right center #5a9fe6;
}

#sidebar .localmenu dd.open > a {
    padding-right: 30px;
    background-image: url(../images/localmenu_open.png);
}

#sidebar .localmenu dd.current > a {
    background-color: #0077bf;
}


#sidebar .localmenu dd ul {
    padding-left: 15px;
    background: #83b6ec;
    border-top: 1px solid #ffffff;
}

#sidebar .localmenu dd ul li+li {
    border-top: 1px solid #ffffff;
}

#sidebar .localmenu dd li a {
    padding: 15px 5px;
    background: #83b7ec;
}

#sidebar .localmenu dd li.current a {
    background: #4376bb;
}
#sidebar .localmenu dd li.localmenulow {
	padding-left: 15px;
}

#sidebar *+.block {
    margin-top: 50px;
}



#sidebar .localmenu + .groupMenu {
    margin-top: 26px;
}

#sidebar .groupMenu {
    border-collapse: collapse;
}

#sidebar .groupMenu li {
    margin: 0px;
    border-bottom: #E6E6E6 solid 2px;
    border-left: #E6E6E6 solid 2px;
    border-right: #E6E6E6 solid 2px;
}

#sidebar .groupMenu li:first-child {
    border-top: #E6E6E6 solid 2px;
}

#sidebar .groupMenu li a {
    display: block;
    padding: 13px 8px;
}

#sidebar .groupMenu li.current > a {
    background-color: #fff8c2;
}





#contents {
    float: left;
    display: inline;
    width : 680px;
}

#contents.wide {
    float: none;
    display: block;
    width : 960px;
}

#pagetop {
    position: fixed;
    right: 40px;
    bottom: 40px;
    z-index: 100;
}

#pagetop a {
    display: block;
    width: 35px;
    height: 35px;
    text-indent: -10000px;
    background: url(../images/pagetop.gif) no-repeat left top;
    overflow: hidden;
}

#footernavi {
    min-width: 1000px;
    background: #6b757f;
}
#footernavi a:hover {
	color: #ff6e75 !important;
}

#footernavi .inner {
    width: 960px;
    margin: 0px auto;
    padding: 0px 20px 15px;
    overflow: hidden;
}

#footernavi .inner dl {
    float: left;
    width: 160px;
}

#footernavi .inner dl dt {
    margin: 15px 0px 20px;
}

#footernavi .inner dl dt.twoLines {
    margin: 15px 0px 2px;
}

#footernavi .inner dl dt a {
    font-weight: bold;
    color: #ffffff;
    text-decoration: none;
}

#footernavi .inner dl dd {
    margin: 0px;
    margin-right: 10px;
    color: #ffffff;
}

#footernavi .inner dl dd li+li {
    margin-top: 4px;
}

#footernavi .inner dl dd li li {
    margin-left: 7px;
    margin-top: 2px;
}

#footernavi .inner dl dd a {
    font-size: 95%;
    line-height: 120%;
    color: #ffffff;
    text-decoration: none;
}

a.footernavi_bnr {
	display: block;
	margin-top: 20px;
}
a.footernavi_bnr img {
	width: 100%;
}

#footer {
    min-width: 1000px;
    overflow: hidden;
}
#footer a:hover {
	color: #ff6e75 !important;
}

#footertools {
    position: relative;
    padding: 18px 0px;
    background: #899199;
    overflow: hidden;
}

#footertools ul {
    position: relative;
    left: 50%;
    float: left;
}

#footertools ul li {
    position: relative;
    left: -50%;
    float: left;
}

#footertools ul li+li {
    margin-left: 10px;
    padding-left: 10px;
    border-left: 1px solid #ffffff;
}

#footertools ul li a {
    color: #000000;
    text-decoration: none;
}

#footer p {
    width: 960px;
    margin: 0px auto;
    padding: 7px 20px 15px;
    color: #8b8b8b;
    font-size: 90%;
    line-height: 100%;
    text-align: center;
}

img.icon_new {
    vertical-align:middle;
}



/*------------------------------------------------------------
    Cookie Policy
------------------------------------------------------------*/

#cookie {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    background-color: rgba(51,51,51,0.9);
    padding: 0;
    width: 100%;
    min-height: 70px;
    position: fixed;
    bottom: 0;
    z-index: 99999;
}
#cookie p {
    color: #FFF;
    font-size: 107.7%;
    line-height: 1.5;
    margin: 24px 24px 22px calc((100vw - 960px) / 2);
    width: 960px;
}
#cookie p a {
    color: #FFF;
    line-height: 1.5;
    text-decoration: underline;
    margin: 0 0 0 0.7em;
}
#cookie div {
    box-sizing: border-box;
    background-color: #0071CB;
    border-radius: 19px;
    text-align: center;
    margin: 16px calc((100vw - 960px) / 2) 0 0;
    padding: 12px 0 0;
    width: 166px;
    height: 38px;
}
#cookie div a {
    color: #FFF;
    font-size: 107.7%;
    font-weight: bold;
    line-height: 1.0;
}

/* リンク　汎用 */
.noLink,.noLink:hover {
    pointer-events: none;
    color: inherit;
}

/*------------------------------------------------------------
    QAVision　設定
------------------------------------------------------------*/
/* ヘッダー検索フォーム */
#header .qvWrapper {
    padding: 0;
}
#header .qvWrapper form {
    width: 100%;
}
#header .qvWrapper .query,
#header .qvWrapper .searchButton {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    border: none;
    border-radius: 0;
    outline: none;
    background: transparent;
    font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
}
#header .qvWrapper .query {
    font-size: 13px;
    padding: 4px 5px 3px;
    background-color: #fff;
    border: 1px solid #ddd;
    width: 176px !important;
}
#header .qvWrapper .searchButton {
    font-size: 16px;
    padding: 0 12px;
    background-color: #0077be;
    border-radius: 0 3px 3px 0;
}
#header .qvWrapper .searchButton::before {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url(../images/icon_search.svg);
    background-size: contain;
    vertical-align: middle;
}

/* サジェスト */
.qvWrapper .qvSuggestorBox {
    top: 100% !important;
    border: none !important;
    background-color: rgb(60, 60, 60, 0.8) !important;
}
.qvWrapper .qvSuggestorBox ol li {
    color: #fff !important;
    background-color: rgb(60, 60, 60, 0.8) !important;
    border-bottom: 1px dotted silver !important;
}
.qvWrapper .qvSuggestorBox ol li.active {
    background-color: rgb(90, 90, 90, 0.8) !important;
}

/* サジェスト ヘッダー */
#header .qvWrapper .qvSuggestorBox {
    width: 176px !important;
}
#header .qvWrapper .qvSuggestorBox ol li {
    font-size: 13px !important;
}



/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000; opacity: 0.3; filter: alpha(opacity = 30);}
#colorbox{outline:0;}
    #cboxContent{margin-top:32px; overflow:visible; background:#fff;}
        .cboxIframe{background:#fff;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#fff; padding:1px;}
        #cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#fff;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}

        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; text-indent:-9999px; width:20px; height:20px; position:absolute; top:-20px; background:url(../images/controls.png) no-repeat 0 0;}

        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

        #cboxPrevious{background-position:0px 0px; right:44px;}
        #cboxPrevious:hover{background-position:0px -25px;}
        #cboxNext{background-position:-25px 0px; right:22px;}
        #cboxNext:hover{background-position:-25px -25px;}
        #cboxClose{background-position:-50px 0px; right:0;}
        #cboxClose:hover{background-position:-50px -25px;}
        .cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
        .cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
        .cboxSlideshow_on #cboxSlideshow:hover{background-position:-100px -25px;}
        .cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
        .cboxSlideshow_off #cboxSlideshow:hover{background-position:-75px -25px;}
