@charset 'UTF-8';

/* **********************************************************************
 *
 *       Title:   ウェブラボ master.css
 *       Notes:   Hand-crafted by WebLab Corporation in Tokyo.
 *
 ********************************************************************** */

/* web fonts
======================================================= */

@import url(https://fonts.googleapis.com/css?family=Lato:300,400,400italic);


/* IE用印刷設定CSS
======================================================= */

@media print {
    body {
        _zoom: 67%; /*WinIE only */
    }

    #top_a {
        _zoom: 95%; /*WinIE only */
    }
}


/* 基本設定
======================================================= */

* {
    margin: 0;
    padding: 0;
}

body {
    font: 13px 'Lato','メイリオ', 'Meiryo', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'Helvetica', 'Arial', 'Verdana', 'sans-serif';
    text-align: center;
    color: #555;
    background: #fff;
    *font-family: 'Lato','メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'Helvetica', 'Arial', 'sans-serif';
    min-width: 980px;
}
* html body {
    font: x-small;
}
:first-child + html body {
    font-size: small;
}

table {
    font: 100%;
    font-size: inherit;
}

hr.hide {
    display: none;
}
.clear {
    clear: both;
    width: 100%;
}
.clear hr {
    display: none;
}
a {
    outline: none;
}
a:link,
a:visited {
    color: #007dbb;
}
a:hover,
a:active {
    text-decoration: none;
    color: #007dbb;
}


address,
caption,
cite,
code,
dfn,
em,
th,
var {
    font-weight: normal;
    font-style: normal;
}

p {
    font-size: 100%;
    line-height: 1.8;
    margin: 0;
    padding: 0;
}

ul {
    font-size: 116%;
    line-height: 1.5;
    margin: 5px 0 5px 10px;
    padding: 0 0 0 10px;
}

ol {
    font-size: 116%;
    line-height: 1.5;
    margin: 5px 0 5px 15px;
    padding: 0 0 0 20px;
}

.pc_none {
    display: none;
}


/* 全体のレイアウト設定
======================================================= */

#wrapper {
    width: 980px;
    margin: 0 auto;
    padding: 0 0 50px 0;
    background: #fff;
}

#wrappertop {
    width: 980px;
    margin: 0 auto;
    background: #fff;
}


/* header部分のスタイル設定
======================================================= */

#headwrap {
    width: 100%;
    border-bottom: 1px solid #d9d9d9;
}

body#contact #headwrap {
    position: fixed;
    top: 0;
    left: 0;
    height: 53px;
    background: #fff;
}

header {
    width: 980px;
    margin: 0 auto;
    padding: 0;
    background: #fff;
}

#sp_menu {
    display: none;
}

.head_top {
    padding: 12px 0 0px 0;
}

header #catch {
    float: left;
    width: 325px;
    font-size: 85%;
    font-weight: normal;
    line-height: 100%;
    padding: 0;
    text-align: left;
    color: #555;
}

header #catch a {
    text-decoration: none;
    color: #555;
}

header #catch a:visited {
    color: #555;
}

.head_top ul {
    float: left;
    width: 195px;
    list-style-type: none;
    margin: 0;
    padding: 10px 0 0 0;
}

.head_top ul li {
    margin: 0;
    padding: 0;
    display: inline;
    list-style-type: none;
}

.head_top ul a {
    float: left;
    padding-top: 15px;
    height: 0px !important;
    height /**/: 15px;
    overflow: hidden;
    outline: none;
    background: url(../img/hnav.gif) no-repeat;
}

/*++++++++++++++++ nav button set ++++++++++++++++*/

.head_top ul .hnav01 a { width:  84px; background-position: 0px 0px; margin: 0 20px 0 0; }
.head_top ul .hnav01 a:hover,
.head_top ul .hnav01 a:active     { width:  84px; background-position: 0px -15px; }

.head_top ul .hnav02 a { width: 62px; background-position: -104px 0px; }
.head_top ul .hnav02 a:hover,
.head_top ul .hnav02 a:active     { width: 62px; background-position: -104px -15px; }

.head_top .sp_btn {
    padding: 6px 0 0 0;
}

.tel_trigger {
    display: none;
}

.head_top .h_tel {
    float: left;
    width: 195px;
}

.head_top .h_tel,
nav#subnav_saiyou ul li.tel {
    background: url(../img/h_tel.gif) 0 50% no-repeat;
    text-align: left;
    padding: 0 0 0 20px;
    font-size: 138.5%;
    line-height: 1;
    font-weight: 700;
}

.head_top .h_tel em {
    font-size: 10px;
    padding: 0 0 0 5px;
}

.head_top .h_contact {
    float: right;
    width: 18px;
    padding: 2px 0 0 0;
}

.head_top .h_contact a {
    display: block;
    background: url(../img/h_contact.gif) 0 0 no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    line-height: 1;
}

header .logo {
    float: left;
    width: 127px;
    margin: 0;
    padding: 2px 0 13px 0px;
    text-align: left;
}

body#contact header .logo {
    padding: 8px 0;
}

header .logo a {
    display: block;
    width: 127px;
    height: 37px;
    background: url(../../file/h_logo_weblab.svg) 0 0 no-repeat;
    background-size:100% auto;
    text-indent: 101%;
    white-space: nowrap;
    overflow: hidden;
}

.ie header .logo a,
.ie8 header .logo a {
    background: url(../../img/logo_170417.gif) 0 0 no-repeat;
}


header .head_fix {
    position: fixed;
    z-index: 1001;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 60px;
    background: #fff;
    border-bottom: 1px solid #d9d9d9;
}

header .head_fix .inner {
    width: 980px;
    margin: 0 auto;
}

header .head_fix .inner .logo {
    padding: 12px 0 0 0;
}

header .head_fix ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

body#contact header {
    width: 980px;
    margin: 0 auto;
    padding: 0;
    background: #fff;
}


/* LP用ヘッダーナビ
======================================================= */

header .contact_head ul {
    float: right;
    margin: 17px 0 0 0;
    padding: 0;
    list-style: none;
    *zoom:1;
    font-size: 84%;
}

header .contact_head ul li {
    float: left;
    margin: 0;
    padding: 0 0 0 20px;
    *zoom:1;
}

header .contact_head ul li a {
    padding-left: 12px;
    background: url(../img/arw_blue.gif) no-repeat 0 50%;
}
header .contact_head a:link,
header .contact_head a:active,
header .contact_head a:hover,
header .contact_head a:visited {
    color: #555;
}


.sp_close {
    display: none;
}


/* headnav部分設定
======================================================= */

#headnav {
    float: right;
    width: 790px;
    display: block;
    margin: 0;
    padding: 16px 0 0 0;
}

#menu {
    margin: 0;
    padding: 0;
}

#menu ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

#menu li {    
    display:block;
    overflow:hidden;
    float:left;
    text-indent:-9999px;
    list-style-type:none;
    float:left;
}
#menu.hover-css a,
#menu.hover-anims a,
#menu.hover-anims span {
    display:block;
    height:36px;
    position:relative;
    background: url(../img/nav.gif) no-repeat;
}
#menu.hover-anims span { position:absolute; left:0; top:0; }

#menu.hover-css .nav01 a,
#menu.hover-anims .nav01 a,
#menu.hover-anims .nav01 span { width: 64px; background-position:0 top;}
#menu.hover-css .nav01 a:hover,
#menu.hover-anims .nav01 span,
#menu .nav01 a.selected { width: 64px; background-position:0 bottom;}

#menu.hover-css .nav02 a,
#menu.hover-anims .nav02 a,
#menu.hover-anims .nav02 span { width: 121px; background-position:-64px top;}
#menu.hover-css .nav02 a:hover,
#menu.hover-anims .nav02 span,
#menu .nav02 a.selected { width: 121px; background-position:-64px bottom;}

#menu.hover-css .nav03 a,
#menu.hover-anims .nav03 a,
#menu.hover-anims .nav03 span { width: 121px; background-position:-185px top;}
#menu.hover-css .nav03 a:hover,
#menu.hover-anims .nav03 span,
#menu .nav03 a.selected { width: 121px; background-position:-185px bottom;}

#menu.hover-css .nav04 a,
#menu.hover-anims .nav04 a,
#menu.hover-anims .nav04 span { width: 121px; background-position:-306px top;}
#menu.hover-css .nav04 a:hover,
#menu.hover-anims .nav04 span,
#menu .nav04 a.selected { width: 121px; background-position:-306px bottom;}

#menu.hover-css .nav05 a,
#menu.hover-anims .nav05 a,
#menu.hover-anims .nav05 span { width: 121px; background-position:-427px top;}
#menu.hover-css .nav05 a:hover,
#menu.hover-anims .nav05 span,
#menu .nav05 a.selected { width: 121px; background-position:-427px bottom;}

#menu.hover-css .nav06 a,
#menu.hover-anims .nav06 a,
#menu.hover-anims .nav06 span { width: 121px; background-position:-548px top;}
#menu.hover-css .nav06 a:hover,
#menu.hover-anims .nav06 span,
#menu .nav06 a.selected { width: 121px; background-position:-548px bottom;}

#menu.hover-css .nav07 a,
#menu.hover-anims .nav07 a,
#menu.hover-anims .nav07 span { width: 121px; background-position:-669px top;}
#menu.hover-css .nav07 a:hover,
#menu.hover-anims .nav07 span,
#menu .nav07 a.selected { width: 121px; background-position:-669px bottom;}

#fixmenu {
    float: right;
    width: 790px;
    margin: 0;
    padding: 17px 0 0 0;
}

#fixmenu ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

#fixmenu li {    
    display:block;
    overflow:hidden;
    float:left;
    text-indent:-9999px;
    list-style-type:none;
    float:left;
}
#fixmenu.hover-css a,
#fixmenu.hover-anims a,
#fixmenu.hover-anims span {
    display:block;
    height:43px;
    position:relative;
    background: url(../img/fixednav.gif) no-repeat;
}
#fixmenu.hover-anims span { position:absolute; left:0; top:0; }

#fixmenu.hover-css .nav01 a,
#fixmenu.hover-anims .nav01 a,
#fixmenu.hover-anims .nav01 span { width: 64px; background-position:0 top;}
#fixmenu.hover-css .nav01 a:hover,
#fixmenu.hover-anims .nav01 span,
#fixmenu .nav01 a.selected { width: 64px; background-position:0 bottom;}

#fixmenu.hover-css .nav02 a,
#fixmenu.hover-anims .nav02 a,
#fixmenu.hover-anims .nav02 span { width: 121px; background-position:-64px top;}
#fixmenu.hover-css .nav02 a:hover,
#fixmenu.hover-anims .nav02 span,
#fixmenu .nav02 a.selected { width: 121px; background-position:-64px bottom;}

#fixmenu.hover-css .nav03 a,
#fixmenu.hover-anims .nav03 a,
#fixmenu.hover-anims .nav03 span { width: 121px; background-position:-185px top;}
#fixmenu.hover-css .nav03 a:hover,
#fixmenu.hover-anims .nav03 span,
#fixmenu .nav03 a.selected { width: 121px; background-position:-185px bottom;}

#fixmenu.hover-css .nav04 a,
#fixmenu.hover-anims .nav04 a,
#fixmenu.hover-anims .nav04 span { width: 121px; background-position:-306px top;}
#fixmenu.hover-css .nav04 a:hover,
#fixmenu.hover-anims .nav04 span,
#fixmenu .nav04 a.selected { width: 121px; background-position:-306px bottom;}

#fixmenu.hover-css .nav05 a,
#fixmenu.hover-anims .nav05 a,
#fixmenu.hover-anims .nav05 span { width: 121px; background-position:-427px top;}
#fixmenu.hover-css .nav05 a:hover,
#fixmenu.hover-anims .nav05 span,
#fixmenu .nav05 a.selected { width: 121px; background-position:-427px bottom;}

#fixmenu.hover-css .nav06 a,
#fixmenu.hover-anims .nav06 a,
#fixmenu.hover-anims .nav06 span { width: 119px; background-position:-548px top;}
#fixmenu.hover-css .nav06 a:hover,
#fixmenu.hover-anims .nav06 span,
#fixmenu .nav06 a.selected { width: 119px; background-position:-548px bottom;}

#fixmenu.hover-css .nav07 a,
#fixmenu.hover-anims .nav07 a,
#fixmenu.hover-anims .nav07 span { width: 123px; background-position:-667px top;}
#fixmenu.hover-css .nav07 a:hover,
#fixmenu.hover-anims .nav07 span,
#fixmenu .nav07 a.selected { width: 123px; background-position:-667px bottom;}




/* main部分設定
======================================================= */

#catetit_nav02 {
    background: #49b2cf;
}
#catetit_nav03 {
    background: url(../img/bg_caettit_nav03.jpg) 0 0 repeat-x;
}
#catetit_nav04 {
    background: #e7683d;
}
#catetit_nav05 {
    background: #4184c2 url(../img/bg_caettit_nav05.gif) 50% 0 no-repeat;
}

#catetit_nav02 span {
    display: block;
    height: 190px;
    background: url(../img/catetit_nav02.jpg) 50% 0 no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#catetit_nav03 span {
    display: block;
    height: 190px;
    background: url(../img/catetit_nav03.png) 50% 0 no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#catetit_nav04 span {
    display: block;
    height: 190px;
    background: url(../img/catetit_nav04.jpg) 50% 0 no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#catetit_nav05 span {
    display: block;
    height: 190px;
    background: url(../img/catetit_nav05.png) 50% 0 no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#catetit_nav02 a,
#catetit_nav03 a,
#catetit_nav04 a,
#catetit_nav05 a,
#catetit_nav06 a {
    display: block;
    height: 190px;
}


#main {
    float: right;
    width: 730px;
}

body#contact #main {
    float: none;
    width: 730px;
    margin: 0 auto;
    padding: 95px 0 0 0;
}

#directry {
    font-size: 77%;
    padding: 15px 0 60px 0px;
    text-align: left;
    color: #666;
}
#directry a:visited {
    color: #007dbb;
}

#main h1,
#main_clm_un h1 {
    font-size: 29px;
    font-weight: normal;
    line-height: 1.2;
    margin: 0px 0 30px 0;
    padding: 0px 0px 15px 0px;
    color: #555;
    border-bottom: 3px solid #f2f3f4;
    text-align: left;
}

#main h1 span {
    font-size: 17px;
}

#info_contents_title {
    margin: 0;
    text-align: left;
    background: #fafafa;
}

#contents {
    padding: 0 0 0 0;
    text-align: left;
}

#contents_tpc {
    margin: 0;
    padding: 0;
    text-align: left;
}

#contents section {
    clear: both;
    width: 100%;
    margin-bottom: 80px;
}

#port #contents section {
    clear: both;
    width: 100%;
    margin-bottom: 40px;
}

#contents section a:visited {
    color: #007dbb;
}

#contents section h2 {
    font-size: 174%;
    font-weight: normal;
    line-height: 1.5;
    margin: 0 0 30px 0;
    padding: 0 0 0 0;
    text-align: left;
    color: #555;
}

#contents section h3 {
    font-size: 135%;
    line-height: 1.5;
    margin: 0 0 40px 0;
    padding: 0 0 0 0;
    text-align: left;
    color: #333;
}

#main section p,
#main_clm_un section p {
    font-size: 116%;
    line-height: 1.8;
    text-align: left;
    color: #555;
}

div.gotop {
    bottom: 159px;
    position: fixed;
    right: 20px;
    z-index: 1000;
}

body#contact div.gotop {
    bottom: 159px !important;
    position: fixed;
    right: 20px;
    z-index: 1000;
}


/* nav部分設定
======================================================= */

#lnav {
    float: left;
    width: 200px;
    margin: 0;
    text-align: left;
}

.anv_logo {
    text-align: center;
}

#submenu {
    float: left;
    width: 200px;
    margin: 0 0 100px 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid #e6e6e6;
}


/* subbutton set */
.subbutton {
    font-size: 72.5%;
    line-height: 1.5;
    text-align: left;
    border-bottom: 1px solid #e6e6e6;
}

.subbutton a {
    display: block;
    padding: 10px 0 10px 22px;
    text-decoration: none;
    color: #555;
    background: url(../img/arw.gif) 10px 50% no-repeat;
}

.subbutton a:active,
.subbutton a:hover {
    color: #07539f;
}

.subbutton a.subselected,
.subbutton a.subselected:active,
.subbutton a.subselected:hover {
    font-weight: bold;
    color: #07539f;
}

#submenu a.subnolink {
    color: #666;
    background-color: #ededed;
    background-image: none;
}


/* localbutton set */

.localmenu {
    width: 200px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.localbutton {
    font-size: 100%;
    line-height: 1.5;
    zoom: 1;
    width: 200px;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
    border-top: 1px solid #d9d9d9;
}

.localbutton a {
    display: block;
    zoom: 1;
    margin: 0;
    padding: 6px 0 4px 24px;
    text-decoration: none;
    color: #555;
    background: #fff;
}

.localbutton a:active,
.localbutton a:hover {
    color: #555;
    background: #f4f4f4;
}

.localbutton a.localselected,
.localbutton a.localselected:active,
.localbutton a.localselected:hover {
    font-weight: bold;
    color: #555;
    background-color: #f4f4f4;
}

#submenu a.localnolink {
    color: #666;
    background-color: #f1f1f1;
}

.subbutton a span,
.localbutton a span {
    font-size: 77%;
    color: #999;
}


/* footer conversion
======================================================= */

#foot_cv {
    background: #07539f url(../img/bg_footer.gif) 50% 0 repeat-x;
    padding: 130px 0 50px;
    text-align: left;
    color: #fff;
}

#foot_cv .inner {
    width: 980px;
    margin: 0 auto;
}

.fcv_l {
    float: left;
    width: 470px;
}

.fcv_l p {
    font-size: 100%;
}

.fcv_r {
    float: right;
    width: 465px;
    padding: 0 0 0 0;
}

.sp_fcv { display: none; }

#foot_cv h3 {
    font-size: 27px;
    color: #fff;
    font-weight: 300;
    margin: 0 0 35px;
}

#foot_cv h3 span {
    font-size: 13px;
    color: #fff;
    font-weight: normal;
    vertical-align: middle;
    padding: 0 0 0 10px;
}

.f_tel {
    background: url(../img/ico_f_tel.gif) 0 50% no-repeat;
    padding: 0 0 0 30px;
    font-size: 27px;
    margin: 0 0 0px;
    line-height: 1.5;
}
.f_tel em {
    font-size: 13px;
    vertical-align: middle;
    padding: 0 0 0 15px;
}

.f_cv_btn a {
    display: block;
    background: #dd4b39;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 138.5%;
    font-weight: bold;
    padding: 10px 0;
}

.f_cv_btn a span {
    background: url(../img/arw_btn.png) right 50% no-repeat;
    padding: 0 20px 0 0;
}

.f_cv_btn a,
.f_cv_btn a::before,
.f_cv_btn a::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}

.f_cv_btn a:hover {
    background: #ff5c48;
}




/* footer sitemap
======================================================= */

#foot_sm {
    margin: 0 auto;
    text-align: left;
    padding: 40px 0;
    background: #0e6ab9;
}

#foot_sm .inner {
    width: 980px;
    margin: 0 auto;
    background: url(../img/line_f_sm.gif) 0 0 repeat-y;
}

.sm_block {
    float: left;
    width: 208px;
    padding-left: 55px;
}
.sm_block.block_first {
    width: 255px;
    padding-left: 0;
}
.sm_block.block_second {
    width: 198px;
    padding: 50px 0 0 0;
}

.sm_block h4 {
    line-height: 1.5;
}

.sm_block h4 a {
    font-size: 100%;
    color: #fff;
}

.sm_block h4 a:link, .sm_block h4 a:visited {
    color: #fff;
    text-decoration:none;
}
.sm_block h4 a:hover, .sm_block h4 a:active {
    color: #fff;
    text-decoration:underline;
}

.sm_block h5 {
    line-height: 1.5;
    font-size: 85%;
    color: #fff;
    padding: 0 0 0 0;
    margin: 0 0 10px;
}

.sm_block h5 a:link, .sm_block h5 a:visited {
    color: #fff;
    text-decoration:none;
}
.sm_block h5 a:hover, .sm_block h5 a:active {
    color: #fff;
    text-decoration:underline;
}

.sm_block ul {
    list-style-type: none;
    margin-left: 11px;
    padding: 0;
    font-size: 100%;
}

.sm_block li {
    margin: 0;
    padding: 0;
    font-size: 85%;
    line-height: 2.2;
}

.sm_block li a {
    color: #fff;
    background: url(../img/arw_fsm.gif) 0 0.6em no-repeat;
    padding: 0 0 0 8px;
}
.sm_block li a:link, .sm_block li a:visited {
    color: #fff;
    text-decoration:none;
}
.sm_block li a:hover, .sm_block li a:active {
    color: #fff;
    text-decoration:underline;
}



/* footer部分設定
======================================================= */

footer {
    clear: both;
    margin: 0;
    padding: 0;
    text-align: left;
    background: #07539f;
}

body#contact footer {
    background: #07539f url(../img/bg_footer.gif) 50% 0 repeat-x;
    padding: 100px 0 0px;
}

.foot_inr {
    width: 980px;
    margin: 0 auto;
}

#footer_top {
    line-height: 1.5;
    overflow: hidden;
    width: 100%;
    padding: 15px 0 0 0;
}

#footer_top ul {
    float: left;
    width: 600px;
    margin: 0 0 15px -11px;
    padding: 0;
    list-style: none;
}

#footer_top li {
    display: inline;
    margin: 0;
    padding: 0 10px;
    border-left: 1px solid #05498a;
}

#footer_top li.pc_none {
    display: none;
}

#footer_top a {
    font-size: 72.5%;
    line-height: 1;
    text-decoration: none;
    color: #fff;
}

#footer_top a:active,
#footer_top a:hover {
    text-decoration: underline;
    color: #fff;
}

#footer_top .sns_btn {
    float: right;
    width: 95px;
    margin: 0 0 10px;
}

#footer_top .sns_btn ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#footer_top .sns_btn li {
    float: left;
    width: 19px;
    margin: 0 0 0 12px;
    padding: 0;
    border: 0;
}

#footer_btm {
    line-height: 1.5;
    overflow: hidden;
    width: 100%;
    padding: 15px 0 0 0;
}

#footer_btm dl {
    float: left;
    width: 650px;
    padding: 0 0 20px;
}

#footer_btm dt {
    float: left;
    width: 145px;
}

#footer_btm dt a {
    display: block;
    width: 127px;
    height: 37px;
    background: url(../img/f_logo_weblab.svg) 0 0 no-repeat;
    background-size:100% auto;
    text-indent: 101%;
    white-space: nowrap;
    overflow: hidden;
}

.ie #footer_btm dt a,
.ie8 #footer_btm dt a {
    background: url(../img/f_logo_170417.gif) 0 0 no-repeat;
}



#footer_btm dd {
    float: left;
    width: 500px;
}

.copyright {
    font-size: 85%;
    font-style: normal;
    line-height: 1.5;
    float: right;
    width: 320px;
    padding: 0 0 0 0px;
    text-align: right;
    color: #6e9bc5;
}

address {
    margin: 0;
    padding: 0 0 0 0;
    color: #6e9bc5;
    font-size: 85%;
}

/* TOPページ用のレイアウト設定
======================================================= */

.bxslider {
    width: 1180px;
    height: 380px;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#main_area {
    height: 474px;
    overflow-x:hidden;
    overflow-y:hidden;
    margin: 0 0 50px;
}

#mainvisual {
    width: 1180px;
    height: 380px;
    margin: 0 auto;
    position: relative;
    margin-left: -590px;
    left: 50%;
    text-align: left;
}

#mainvisual .bx-wrapper {
    height: 380px;
}

#main_area_osaka {
    width: 1180px;
    height: auto;
    margin: 0 auto 55px;
    position: relative;
    margin-left: -590px;
    left: 50%;
    text-align: left;
}


#top_a {
    width: 100%;
    margin: 0 0 100px 0;
    padding: 0 0 0 0;
    text-align: left;
}

#top_b {
    width: 100%;
    margin: 0;
    padding: 100px 0 50px;
    text-align: left;
    background: #f4f4f4;
}

#top_c {
    width: 100%;
    margin: 0 0 0 0;
    padding: 100px 0 50px;
    text-align: left;
    background: #f4f4f4;
}

#top_d {
    width: 100%;
    margin: 0 0 0 0;
    padding: 100px 0 50px;
    text-align: left;
}

#top_a section {
    width: 980px;
    clear: both;
    margin: 0 auto 50px;
}

#top_a section h2,
#top_b section h2,
#top_c section h2,
#top_d section h2 {
    font-size: 39px;
    font-weight: 300;
    line-height: 1;
    margin: 0 0 20px;
    padding: 0;
    color: #07539f;
}

#top_a section h2 span,
#top_b section h2 span,
#top_c section h2 span,
#top_d section h2 span {
    font-size: 13px;
    vertical-align: middle;
    padding: 0 0 0 15px;
    color: #555;
    font-weight: 400;
}

#top_a section a:visited {
    color: #007dbb;
}

#top_b section {
    width: 980px;
    clear: both;
    margin: 0 auto 50px;
}

#top_b section a:visited {
    color: #007dbb;
}

#top_c section {
    width: 980px;
    clear: both;
    margin: 0 auto 50px;
}

#top_c section a:visited {
    color: #007dbb;
}

#top_d section {
    width: 980px;
    clear: both;
    margin: 0 auto 50px;
}

#top_d section a:visited {
    color: #007dbb;
}

#top_c section a:visited {
    color: #007dbb;
}

#top_d h3.svctit {
    font-size: 116%;
    font-weight: normal;
    text-align: left;
    margin: 0 0 30px;
}

/* 資格・所属団体 */

#partner_list {
    width: 980px;
    padding: 60px 0 60px;
    margin: 0 auto 55px;
    border-bottom: 1px solid #eee;
}

#partner_list h4 {
    font-size: 116%;
    font-weight: normal;
    text-align: left;
    margin: 0 0 30px;
}

#partner_list ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    font-size: 100%;
}

#partner_list li {
    float: left;
    margin: 0 35px 0 0;
}

#partner_list li.last {
    margin: 0 0 0 0;
}

#partner_list li p {
    float: left;
    font-size: 77%;
    line-height: 1.5;
    text-align: left;
}

#partner_list li p.txt {
    width: 163px;
    padding: 0 0 0 10px;
}

#partner_list li p.txt02 {
    width: 72px;
    padding: 8px 0 0 10px;
}

/* その他のサービス */
#o_svc {
    width: 980px;
    overflow: hidden;
    margin: 0 auto 80px;
}

#o_svc ul {
    width: 1035px;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0;
    font-size: 100%;
}

#o_svc li {
    float: left;
    width: 290px;
    margin-right: 55px;
    padding-bottom: 0px;
    *zoom: 1;
}

#o_svc li p {
    font-size: 85%;
    text-align: left;
}

#top_d #htab ul {
    overflow:hidden;
    margin: 0 0 30px;
    padding: 0;
    list-style-type: none;
    font-size: 100%;
}
#top_d #htab li {
    text-align: center;
    padding:5px 0px;
    margin: 0 28px 0 0;
    float:left;
    width: 308px;
    cursor:pointer;
}

#top_d #htab li.end {
    margin: 0;
}
#top_d #htab li .img {
    margin: 0 0 5px;
}
#top_d #htab li .tit {
    font-size: 146.5%;
    font-weight: bold;
    color: #a2a2a2;
    margin: 0 0 5px;
}
#top_d #htab li .subtit {
    font-size: 116%;
    color: #a2a2a2;
    margin: 0 0 5px;
}
#top_d #htab li .txt {
    font-size: 116%;
    color: #a2a2a2;
    line-height: 1.8;
}
#top_d #htab li.resp-tab-active .tit {
    font-size: 146.5%;
    font-weight: bold;
    color: #07539f;
    margin: 0 0 5px;
}
#top_d #htab li.resp-tab-active .subtit {
    font-size: 116%;
    color: #555;
    margin: 0 0 5px;
}
#top_d #htab li.resp-tab-active .txt {
    font-size: 116%;
    color: #555;
    line-height: 1.8;
}
#top_d .content {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.resp-tab-content.rt_cnt01 {
    background: url(../img/bg_rec_baloon01.gif);
    padding: 40px 40px 10px;
    border-bottom: 1px solid #d9d9d9;
}
.resp-tab-content.rt_cnt02 {
    background: url(../img/bg_rec_baloon02.gif);
    padding: 40px 40px 10px;
    border-bottom: 1px solid #d9d9d9;
}
.resp-tab-content.rt_cnt03 {
    background: url(../img/bg_rec_baloon03.gif);
    padding: 40px 40px 10px;
    border-bottom: 1px solid #d9d9d9;
}

.resp-tab-content .info {
    float: left;
    width: 340px;
}

.resp-tab-content .info p.tit {
    font-size: 131%;
}

.resp-tab-content .servicelist {
    float: right;
    width: 530px;
}

#top_d #htab .resp-tab-content .servicelist {
    width: 530px;
    overflow: hidden;
}

#top_d #htab .resp-tab-content .servicelist ul {
    width: 550px;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#top_d #htab .resp-tab-content .servicelist li {
    float: left;
    width: 210px;
    min-height: 57px;
    margin-right: 20px;
    *zoom: 1;
    text-align: left;
    cursor: auto;
}

#top_d #htab .resp-tab-content .servicelist li a:visited {
    color: #007dbb;
}

#top_d #htab .servicelist li.sl_ico01 {
    background: url(../img/se_ico_tec01.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico02 {
    background: url(../img/se_ico_tec02.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico03 {
    background: url(../img/se_ico_tec03.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico04 {
    background: url(../img/se_ico_tec04.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico05 {
    background: url(../img/se_ico_tec05.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico06 {
    background: url(../img/se_ico_tec06.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico07 {
    background: url(../img/se_ico_tec07.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico08 {
    background: url(../img/se_ico_tec08.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico09 {
    background: url(../img/se_ico_tec09.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico10 {
    background: url(../img/se_ico_tec10.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico11 {
    background: url(../img/se_ico_tec11.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico12 {
    background: url(../img/se_ico_tec12.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}
#top_d #htab .servicelist li.sl_ico13 {
    background: url(../img/se_ico_tec13.png) 0 0 no-repeat;
    padding: 0 0 20px 41px;
}

#top_d #htab .servicelist li p.tit {
    font-size: 13px;
    line-height: 1.5;
    font-weight: normal;
    margin: 0;
}

#top_d #htab .servicelist li p.explain {
    font-size: 11px;
}


/* topics部分のスタイル設定
======================================================= */

#contents_tpc section {
    margin: 0;
    padding: 0;
}

.mceTopics {
    margin: 0;
    padding: 0;
}

#top .mceTopics ul,
.mceTopics ol {
    font-size: 100%;
    line-height: 1.5;
    margin: 0 0 0 0;
    padding: 0;
    list-style: none;
}

.mceTopics ul,
.mceTopics ol {
    margin: 0 20px 20px 20px;
    list-style: none;
}

#contents_tpc .mceTopics ul {
    margin: 0;
    padding: 0;
}

#top .mceTopics li {
    margin: 0px 0 20px 0;
    padding: 0 0 0px 0;
    line-height: 1.8;
}

#top .mceTopics li a {
    float: left;
    width: 218px;
}

#contents_tpc .mceTopics li {
    margin: 0px 0 10px 0;
    padding: 0 0 10px 0;
    line-height: 1.8;
    border-bottom: 1px dotted #d9d9d9;
}

.mceTopics li a:visited {
    color: #36f;
}

.topicsblock {
    padding: 0 0 30px 0;
}

.topicsblock_un {
    margin: 0 0 30px 0;
    padding: 0px;
    border-bottom: 3px solid #f2f3f4;
}

#main .topicsblock_un h1 {
    float: left;
    width: 50%;
    font-size: 29px;
    font-weight: normal;
    line-height: 1.5;
    margin: 0px 0 0 0;
    padding: 0px 0px 15px 0px;
    color: #555;
    border-bottom: none;
    text-align: left;
}

#top .topicsblock h3 {
    font-size: 116%;
    font-weight: normal;
    line-height: 1.5;
    float: left;
    width: 92px;
    margin: 0 0 0px 0;
    padding: 0 0px 0 30px;
    color: #555;
    border-bottom: none;
    background: none;
}

#top .topicsblock h3.topics {
    background: url(../img/ico_topics.gif) 0 0 no-repeat;
}

#top .topicsblock h3.blog {
    background: url(../img/ico_blog.gif) 0 0 no-repeat;
}

.topicsblock_un h2 {
    font-size: 153.9%;
    font-weight: normal;
    float: left;
    width: 620px;
    padding: 0 0 0 15px;
    border: 0 solid #ccc;
}

.topicsblockright {
    float: right;
    width: 118px;
}

#top .topicsblock .infolistset {
    float: left;
    width: 54px;
    padding: 0px 0 0px 0;
}

.inforss {
    float: right;
    width: 54px;
    padding: 0px 0 0px 0;
}

.topicsblock_un .inforss {
    padding: 10px 0 0 0;
}

span.date {
    display: block;
    float: left;
    width: 31px;
    padding: 7px;
    background: #0070b0;
    color: #fff;
    text-align: center;
    font-size: 85%;
    word-wrap: break-word;
    margin: 0 10px 0 0;
    line-height: 1.3;
}

span.date_blog {
    display: block;
    float: left;
    width: 31px;
    padding: 7px;
    background: #4bb074;
    color: #fff;
    text-align: center;
    font-size: 85%;
    word-wrap: break-word;
    margin: 0 10px 0 0;
    line-height: 1.3;
}
#top #feeds span.txt {
    display: block;
    float: left;
    width: 218px;
}

.scroll {
    width: 290px;
    height: 300px;
    overflow: auto;
}

.topics2 ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.topics2 li {
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom: 1px dotted #d9d9d9;
}

#top #feeds {
    margin: -15px 0 0 0;
    height: 310px;
    overflow: auto;
}


/* お知らせ一覧ページ送り部分のスタイル設定
======================================================= */

ul.pager {
    font-size: 93%;
    margin: 0;
    padding: 0;
    text-align: center;
}

ul.pager li {
    display: inline;
    margin: 0;
    padding: 0;
    list-style: none;
}

ul.pager li strong {
    display: -moz-inline-box;
    display: inline-block;
    padding: 0.25em 0.4em;
    color: #fff;
    border: 1px #999 solid;
    background-color: #999;
}

ul.pager li a {
    display: -moz-inline-box;
    display: inline-block;
    padding: 0.25em 0.4em;
    text-decoration: none;
    border: 1px #ccc solid;
}

ul.pager li a:link,
ul.pager li a:visited {
    color: #555;
    border-color: #ccc;
}

ul.pager li a:hover,
ul.pager li a:active {
    color: #fff;
    border-color: #999;
    background-color: #999;
}


/* sitemapページのスタイル設定
======================================================= */

#contents section.block_sm {
    clear: both;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    text-align: left;
    border-bottom: 1px dotted #d9d9d9;
}

#contents section.block_sm a:visited {
    color: #007dbb;
}

#contents section.block_sm h2.sitemap {
    font-size: 100%;
    margin: 0;
    padding: 0;
    color: #000;
    border: 0;
}

#contents .sitemap_ul {
    margin: 3px 0 0 23px;
    list-style: none;
    border: 0;
    font-size: 100%;
}

#contents .sitemap_ul li {
    font-size: 100%;
    margin: 0;
    padding: 2px 0 2px 17px;
    text-align: left;
    border: 0;
    background: url(../img/sitemap_arrow.gif) no-repeat 0 5px;
}

.sitemap_ul li ul {
    margin: 3px 0 0 13px;
    list-style: none;
    font-size: 100%;
}

.sitemap_ul li ul li {
    padding-left: 17px;
    text-align: left;
    background: url(../img/sitemap_arrow.gif) no-repeat 0 5px;
}


/* スマホPC切替スイッチ
======================================================= */

.dvc_switch {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.dvc_switch ul {
    margin: 0 auto;
    padding: 0;
}

.dvc_switch li {
    list-style-type: none;
}

.dvc_switch li.pc {
    display: none;
}

.dvc_switch li.sp {
    text-align: center;
}

.dvc_switch li.sp a {
    display: block;
    padding: 10px 0;
    text-decoration: none;
    color: #fff;
    background: #0e6ab9 url(../img/ico_sp.png) 0 50% no-repeat;
}

.dvc_switch li a {
    width: 100%;
    padding: 0;
    text-decoration: none;
    color: #fff;
    background: #ccc;
}

.dvc_switch li:first-child a {
    line-height: 1.6;
}

.dvc_switch p {
    width: 40%;
    margin: 0 auto;
    text-align: center;
}

.dvc_switch a {
    padding: 3px 10%;
    text-decoration: none;
    color: #fff;
    background: #ccc;
}


iframe[name="google_conversion_frame"],
img.cv_tag { position:absolute; }


.overimg {
    box-shadow: #fff 0 0 0;
}

a:hover .overimg {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
        background: #fff¥9;
}