@charset 'utf-8';

/* **********************************************************************
 *
 *       Title:   Site-Shokunin CMS sp.css
 *       Notes:   Hand-crafted by WebLab Corporation in Tokyo.
 *
 ********************************************************************** */

/* web fonts
==================================================== */

@import url(https://fonts.googleapis.com/css?family=Lato:300,400,400italic);


iframe[name="google_conversion_frame"] {
    position:absolute;
    top: 0;
    left: 0;
    border: 0;
}
img.cv_tag { position:absolute; }
 

/* RESET
==================================================== */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
    margin: 0;
    padding: 0;
}
table {
    border-spacing: 0;
    border-collapse: collapse;
}
fieldset,img {
    border: 0;
}
address,caption,cite,code,dfn,em,th,var {
    font-weight: normal;
    font-style: normal;
}
caption,th {
    text-align: left;
}
h1,h2,h3,h4,h5,h6 {
    font-size: 100%;
    font-weight: normal;
}
input,textarea,select {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
}


/* 基本設定
==================================================== */

body {
    font: 13px 'Lato','メイリオ', 'Meiryo', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'ＭＳ Ｐゴシック', 'Helvetica', 'Arial', 'Verdana', 'sans-serif';
    margin: 0;
    padding: 0;
    text-align: center;
    color: #555;
    background: #fff;
    -webkit-text-size-adjust: 100%;
    position: relative;
}

hr.hide {
    display: none;
}
.clear {
    clear: both;
    width: 100%;
}
.clear hr {
    display: none;
}
a:link {
    color: #007dbb;
}
a:hover,
a:active {
    text-decoration: none;
    color: #007dbb;
}
a:visited {
    color: #007dbb;
}

.sp_none {
    display: none;
}

p {
    line-height: 1.5;
    margin: 0;
    padding: 0;
}

ul {
    line-height: 1.5;
    margin: 5px 0 5px 10px;
    padding: 0 0 0 10px;
}

ol {
    line-height: 1.5;
    margin: 5px 0 5px 15px;
    padding: 0 0 0 20px;
}


/* 全体のレイアウト設定
==================================================== */

#wrapper {
    width: 94%;
    margin: 0 auto;
    background: #fff;
    padding: 65px 0 0 0;
}

body#cate #wrapper,
body#port #wrapper {
    width: 94%;
    margin: 0 auto;
    background: #fff;
    padding: 0 0 0 0;
}

body#blg #wrappre {
    width: 94%;
    margin: 0 auto;
    background: #fff;
    padding: 65px 0 0 0;
}

body#contact #wrapper {
    width: 94%;
    margin: 0 auto;
    background: #fff;
    padding: 92px 0 0 0;
}

#main {
    width: 100%;
    padding: 0px 0 20px 0;
    text-align: left;
}

#nav {
    display: none;
}


/* header部分のスタイル設定
==================================================== */

header {
    width: 100%;
    height: 62px;
    margin: 0 auto 15px;
    background: #fff;
    position: fixed;
    z-index: 1001;
}

#sp_menu a {
    float: left;
    display: block;
        width: 42px;
        height: 42px;
        background: #07539f url(../img/sp/menu_open.png) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
    margin: 10px 20px 10px 10px;
        text-indent: -9999px;
}

#sp_menu.open a {
    float: left;
    display: block;
        width: 42px;
        height: 42px;
        background: #07539f url(../img/sp/menu_close.png) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
    margin: 10px 20px 10px 10px;
        text-indent: -9999px;
}

.head_top #catch {
        float: left;
    width: 100px;
    padding: 17px 0 0 0;
}

.contact_head {
    border-bottom: 1px solid #d9d9d9;
}

.contact_head .logo {
    padding: 16px 0 16px 10px;
}

.head_top #catch a {
    display: block;
        width: 100px;
        height: 29px;
    background: url(../../file/logo_weblab.svg) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
        text-indent: -9999px;
}

.contact_head .logo a {
    display: block;
        width: 100px;
        height: 29px;
    background: url(../../file/logo_weblab.svg) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
        text-indent: -9999px;
}

.head_top ul {
    display: none;
}

header .head_btm .logo {
    display: none;
}

.sp_btn {
    float: right;
    width: 114px;
}

.telbox { display: none; }

.telbox {
    position: absolute;
    top: 52px;
    width: 65%;
    background: #07539f;
    padding: 10px;
    right: 0;
}

.h_tel a {
    display: block;
    padding: 10px 10px 10px 30px;
    border-bottom: 1px solid #07539f;
    text-decoration: none;
    background: #fff url(../img/h_tel.gif) 10px 50% no-repeat;
    text-align: left;
}

header .head_top .tel_trigger {
    float: left;
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/sp/btn_tel.png) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
    text-indent: -9999px;
    margin: 10px 0 10px 10px;
    border: 1px solid #d7d8d9;
}


header .head_top .tel_trigger.active {
    float: left;
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/sp/btn_tel_close.png) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
    text-indent: -9999px;
    margin: 10px 0 10px 10px;
    border: 1px solid #d7d8d9;
}

header .head_top p.h_contact a {
    float: left;
    display: block;
    width: 40px;
    height: 40px;
    background: url(../img/sp/btn_contact.png) 0 0 no-repeat;
        -moz-background-size:100% auto;
        background-size:100% auto;
        outline: none;
    overflow: hidden;
        text-indent: -9999px;
    margin: 10px;
    border: 1px solid #d7d8d9;
}

.head_fix {
    display: none !important;
}

nav {
    position: fixed;
    top: 62px;
    right: -240px;
    width: 240px;
    height: 100%;
    z-index: 1002;
}

.overlay {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99;
    background: #fff;
    opacity: 0.7;
    display: none;
}

#nav_wra_sp {
    position: static;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 94%;
    height: 100%;
    z-index: 1002;
    background: #07539f;
    padding: 3%;
}

#nav_sp_scroll {
    position: relative;
    overflow: hidden;
}

.portrait #nav_sp_scroll {
    height: 500px;
}

.landscape #nav_sp_scroll {
    height: 180px;
}


/* headnav部分設定
==================================================== */

#menu {
    margin: 0 0 10px;
    padding: 0;
    list-style-type: none;
}

#menu ul {
    margin: 0;
    padding: 0;
}

#menu li {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

/* nav button set */

#menu li a {
    font-size: 93%;
    display: block;
    zoom: 1;
    margin: 0;
    padding: 12px 27px 12px 15px;
    text-align: left;
    text-decoration: none;
    color: #07539f;
    border-bottom: 1px solid #07539f;
    background: #fff url(../img/sp/sp_arw.png) right 50% no-repeat;
    background-size: 24px 7px;
}

#menu li a:active {
    color: #9c9c9c;
    background: #366ac8 url(../img/sp/sp_arw_ov.png) right 50% no-repeat;
    background-size: 24px 7px;
}

#menu li a.selected {
    color: #fff;
    background: #366ac8 url(../img/sp/sp_arw_ov.png) right 50% no-repeat;
    background-size: 24px 7px;
}

.button a.selected:active {
    color: #fff;
    background: #366ac8 url(../img/sp/sp_arw_ov.png) right 50% no-repeat;
    background-size: 24px 7px;
}

.button a.nolink {
    color: #555;
}

p.sp_close {
    display: block;
    width: 50%;
    padding: 10px 0;
    background: #fff;
    color: #07539f;
    margin: 0 auto;
}

p.sp_close span {
    background: url(../img/sp/sp_close.png) right 50% no-repeat;
    background-size: 9px 9px;
    padding: 0 15px 0 0;
}


/* main部分設定
==================================================== */

#catetit_nav02 {
    padding: 62px 0 0 0;
    background: #16a8cd;
    margin: 0 0 10px;
}
#catetit_nav03 {
    padding: 62px 0 0 0;
    background: #16a8cd;
    margin: 0 0 10px;
}
#catetit_nav04 {
    padding: 62px 0 0 0;
    background: #e7683d;
    margin: 0 0 10px;
}
#catetit_nav05 {
    padding: 62px 0 0 0;
    background: #4184c2;
    margin: 0 0 10px;
}

#catetit_nav02 a {
    display: block;
    height: 0;
    padding-top: 39.5%;
    background: url(../img/sp/catetit_nav02.jpg) 50% 0 no-repeat;
    background-size: 100% auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
#catetit_nav03 a {
    display: block;
    height: 0;
    padding-top: 39.5%;
    background: url(../img/sp/catetit_nav03.jpg) 50% 0 no-repeat;
    background-size: 100% auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
#catetit_nav04 a {
    display: block;
    height: 0;
    padding-top: 39.5%;
    background: url(../img/sp/catetit_nav04.jpg) 50% 0 no-repeat;
    background-size: 100% auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
#catetit_nav05 a {
    display: block;
    height: 0;
    padding-top: 39.5%;
    background: url(../img/sp/catetit_nav05.gif) 50% 0 no-repeat;
    background-size: 100% auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#directry {
    font-size: 77%;
    width: 100%;
    padding: 0 0 20px 0px;
    text-align: left;
    color: #666;
}

#main h1,
#main_clm_un h1 {
    font-size: 174%;
    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,
#main_clm_un h1 span {
    font-size: 14px;
}

#info_contents_title {
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
}

#contents {
    width: 100%;
    margin: 0;
    padding: 0px 0 0 0;
    text-align: left;
}

#contents_tpc {
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
}

#contents section {
    clear: both;
    margin-bottom: 40px;
}

#contents section h2 {
    font-size: 116%;
    font-weight: bold;
    margin: 0 0 15px 0;
    padding: 0;
    text-align: left;
    color: #555;
}

#contents section h3 {
    font-size: 116%;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 20px 0;
    padding: 0 0 0 0;
    text-align: left;
    color: #333;
}

div.gotop {
    bottom: 50px !important;
    position: fixed;
    right: 10px;
    z-index: 1000;
}


/* nav部分設定
==================================================== */

#submenu {
    width: 100%;
    margin: 0 0 50px;
    padding: 0;
    list-style: none;
    border-top: 1px solid #cfcfcf;
}

#submenu ul {
    margin: 0;
    padding: 0;
}

/* subbutton set */

.subbutton {
    font-size: 108%;
    line-height: 130%;
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
    border-bottom: 1px solid #d6d6d6;
}

.subbutton a {
    display: block;
    margin: 0;
    padding: 12px 0 12px 15px;
    text-decoration: none;
    color: #555;
    background: #fff;
}

.subbutton a:active {
    background-color: #ededed;
}
.subbutton a.subselected {
    color: #555;
    background-color: #ededed;
}
.subbutton a.subselected:active {
    color: #555;
    background-color: #ededed;
}
#submenu a.subnolink {
    color: #666;
    background-color: #ededed;
}

/* localbutton set */

.localmenu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.localbutton {
    font-size: 100%;
    line-height: 130%;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: left;
    border-top: 1px solid #cfcfcf;
}

.localbutton a {
    display: block;
    margin: 0;
    padding: 12px 0 12px 30px;
    text-decoration: none;
    color: #555;
    background: #ededed;
}

.localbutton a:active {
    color: #666;
    background: #d6d6d6;
}
.localbutton a.localselected {
    font-weight: bold;
    color: #555;
    background-color: #d6d6d6;
}

.localbutton a.localselected:active {
    font-weight: bold;
    color: #555;
    background-color: #d6d6d6;
}
#submenu a.localnolink {
    color: #666;
    background-color: #f1f1f1;
}

.button a span {
    display: none;
}

.subbutton a span,
.localmenu .localbutton a span {
    font-size: 77%;
    display: inline;
    color: #999;
}


/* footer conversion
==================================================== */

#foot_cv {
    background: #07539f url(../img/bg_footer.gif) 50% 0 repeat-x;
    background-size: 200% auto;
    padding: 65px 0 50px;
    text-align: left;
    color: #fff;
}

#foot_cv .inner {
    width: 94%;
    margin: 0 auto;
}

.fcv_l p:last-child {
    font-size: 85%;
}

.fcv_r {
    padding: 20px 0 0 0;
}

#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 0.3em no-repeat;
    padding: 0 0 0 30px;
    font-size: 25px;
    margin: 0 0 15px;
}

.f_tel em {
    font-size: 11px;
    vertical-align: middle;
    padding: 0 0 0 10px;
}

.f_tel a,
.f_tel a:visited {
    color: #fff;
    text-decoration: none;
}

.f_cv_btn a {
    display: block;
    background: #dd4b39;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 123.1%;
    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;
}

.sp_fcv {
    border: 1px solid #fff;
    padding: 10px;
}

.sp_fcv .txt {
    float: left;
    width: 50%;
    font-size: 138.5%;
    padding: 7px 0 0 0;
}

.sp_fcv .spf_btn {
    float: right;
    width: 94px;
}

.sp_fcv .spf_btn p.spf_tel a {
    float: left;
    display: block;
    width: 42px;
    height: 42px;
    background: #dd4b39 url(../img/sp/btn_f_tel.png) 0 0 no-repeat;
    background-size: 42px 42px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    margin: 0px;
}

.sp_fcv .spf_btn p.spf_contact a {
    float: left;
    display: block;
    width: 42px;
    height: 42px;
    background: #dd4b39 url(../img/sp/btn_f_contact.png) 0 0 no-repeat;
    background-size: 42px 42px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    margin: 0 0 0 10px;
    padding: 0;
}


/* footer sitemap
==================================================== */

#foot_sm {
    display: none;
}


/* footer部分設定
==================================================== */

footer {
    clear: both;
    width: 100%;
    padding: 0;
    text-align: left;
    background: #07539f;
}

#contact footer {
    background: #07539f url(../img/bg_footer.gif) 50% 0 repeat-x;
    background-size: 200% auto;
    padding: 65px 0 0px;
}

ul#footer_menu {
    padding: 0 0 0 0;
    margin: 0 0 15px;
    list-style: none;
    border-top: 1px solid #06498b;
}

ul#footer_menu li {
    margin: 0 0 0 0;
    padding: 0 0 0 20px;
    white-space: nowrap;
    border-bottom: 1px solid #06498b;
}

ul#footer_menu a {
    line-height: 1.5;
    display: block;
    padding: 10px 0 10px 0;
    text-decoration: none;
    color: #fff;
}

ul#footer_menu a:active,
ul#footer_menu a:hover {
    text-decoration: underline;
    color: #fff;
}

ul#footer_menu a.footnolink {
    text-decoration: none;
    color: #fff;
}

#footer_top .sns_btn {
    float: right;
    width: 95px;
    margin: 0 10px 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 dl {
    width: 94%;
    padding: 0 0 20px;
    margin: 0 auto;
    color: #6d9ac7;
    font-size: 85%;
}

#footer_btm dt {
    width: 125px;
    margin: 0 0 10px;
}

#footer_btm dt a {
    display: block;
    width: 127px;
    height: 37px;
    background: url(../img/f_logo_weblab.svg) 0 0 no-repeat;
    background-size: 127px auto;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

#footer_btm dd {
    width: 100%;
}

.copyright {
    color: #6d9ac7;
    font-size: 77%;
    font-style: normal;
    line-height: 1;
    width: 94%;
    margin: 0 auto;
    padding: 0 0 10px;
    text-align: center;
}

#powered {
    display: none;
}


/* topics部分のスタイル設定
==================================================== */

.mceTopics {
    margin: 0 0 40px 0;
    padding: 0;
}

#top .mceTopics ul,
.mceTopics ol {
    font-size: 100%;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mceTopics ul,
.mceTopics ol {
    font-size: 100%;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    list-style: none;
}

.mceTopics li {
    margin: 0 0 20px 0;
    padding: 0 0 0 0;
}

.topicsblock {
    margin: 0 0 20px 0;
}

.topicsblock_un {
    font-weight: bold;
    margin: 10px 0 10px 0;
    padding: 8px 0 0 5px;
}

#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: 123.1%;
    font-weight: bold;
    float: left;
    width: 80%;
    padding: 0;
    color: #555;
    border: 0 solid #ccc;
    background: none;
}

.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;
}

span.date {
    display: block;
    float: left;
    width: 30px;
    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;
}


/* お知らせ一覧ページ送り部分のスタイル設定
==================================================== */

ul.pager {
    margin: 0 0 20px 0;
    text-align: center;
}

ul.pager li {
    display: inline;
    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;
    border-bottom: 1px dotted #999;
}

#contents section.block_sm a:visited {
    color: #007dbb;
}

#contents .sitemap {
    margin: 0;
    padding: 0;
    color: #000;
    border: 0;
}

#contents .sitemap_ul {
    margin: 3px 0 0 23px;
    list-style: none;
    border: 0;
}

#contents .sitemap_ul li {
    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;
}

.sitemap_ul li ul li {
    padding-left: 17px;
    text-align: left;
    background: url(../img/sitemap_arrow.gif) no-repeat 0 5px;
}


/* BLOCK内スタイル設定
==================================================== */

span.texts {
    font-size: 77%;
    line-height: 1.3;
}
span.textn {
    font-size: 93%;
    line-height: 1.5;
}
span.textl {
    font-size: 108%;
    line-height: 1.5;
}
span.textll {
    font-size: 200%;
    line-height: 1.5;
}
span.textxl {
    font-size: 350%;
    line-height: 1.5;
}
span.textxxl {
    font-size: 500%;
    line-height: 1.5;
}

.tac {
    text-align: center;
}

table.nbr,
table.tbr table.nbr {
    border-collapse: collapse;
    border-top: none;
    border-left: none;
}

table.nbr th,
table.tbr table.nbr th {
    line-height: 1.5;
    padding: 0;
    color: #555;
    border-right: none;
    border-bottom: none;
}

table.nbr td,
table.tbr table.nbr td {
    line-height: 1.5;
    padding: 0;
    color: #555;
    border-right: none;
    border-bottom: none;
}

table.tbr,
table.nbr table.tbr {
    border-collapse: collapse;
    border-top: 1px solid #d9d9d9;
}

table.tbr th,
table.nbr table.tbr th {
    font-weight: bold;
    line-height: 1.5;
    padding: 10px;
    color: #555;
    border-bottom: 1px solid #d9d9d9;
    background: #f4f4f4;
}

table.tbr td,
table.nbr table.tbr td {
    line-height: 1.5;
    padding: 10px;
    border-bottom: 1px solid #d9d9d9;
}

blockquote {
    line-height: 1.4;
    clear: both;
    margin: 0;
    padding: 10px;
    text-align: left;
    border: 1px solid #cfcfcf;
    background: #f3f3f3;
}

form {
    margin: 0;
    padding: 0;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

iframe {
    overflow: hidden;
    max-width: 99%;
    height: auto;
    border: 1px solid #ccc;
}

.photo_r,
.photo_l,
.photo_c,
.photo-r,
.photo-l,
.photo-c {
    font-size: 77%;
    line-height: 1.3;
    margin: 0 auto 10px auto;
    text-align: center;
    color: #555;
}

.photo_r img,
.photo_l img,
.photo_c img,
.photo-r img,
.photo-l img,
.photo-c img {
    margin-bottom: 3px;
}

a.arw {
    padding: 0 0 0 8px;
    background: url(../img/arw.gif) 0 .5em no-repeat;
}

a.exlink {
    padding: 2px 0 2px 20px;
    background: url(../img/ico_exlink.gif) 0 .5em no-repeat;
}

a.pdf {
    padding: 5px 0 5px 20px;
    background: url(../img/ico_pdf.gif) 0 0.4em no-repeat;
}


/* TOPページ用のレイアウト設定
==================================================== */

#main_area {
    padding: 62px 0 0 0;
    margin: 0 0 40px;
}

#main_area_osaka {
    padding: 62px 0 0 0;
    margin: 0 0 40px;
}

.bx-wrapper {
    margin: 0 0 10px 0 !important;
}

#top_a {
    width: 100%;
    margin: 0px auto 40px;
    padding: 0 0 0 0;
    text-align: left;
}

#top_b {
    width: 100%;
    margin: 0px auto;
    padding: 40px 0 25px;
    text-align: left;
    background: #f4f4f4;
}

#top_c {
    width: 100%;
    margin: 0 auto 40px;
    padding: 40px 0 10px;
    text-align: left;
    background: #f4f4f4;
}

#top_d {
    width: 100%;
    margin: 0 auto 0px;
    padding: 40px 0 25px;
    text-align: left;
}

#top_a section,
#top_b section,
#top_c section {
    width: 94%;
    clear: both;
    margin: 0 auto 15px;
}

#top_a section h2,
#top_b section h2,
#top_c section h2,
#top_d section h2 {
    font-size: 25px;
    font-weight: 300;
    line-height: 1;
    margin: 0 0 20px;
    padding: 0;
    color: #07539f;
}

#top_d section h2 {
    margin: 0 0 0 3%;
}

#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 p,
#top_b section p,
#top_c section p,
#top_d section p {
    font-size: 85%;
    line-height: 1.8;
}

#top_b section {
    clear: both;
    margin-bottom: 20px;
}

#top_c section {
    clear: both;
    margin-bottom: 20px;
}

#top_d section {
    width: 100%;
    clear: both;
    margin: 0 0 20px;
}

#top_d section.sp_pad {
    width: 94%;
    clear: both;
    margin: 0 auto 20px;
}

#top_d h3.svctit {
    width: 94%;
    font-size: 116%;
    font-weight: normal;
    text-align: left;
    margin: 0 auto 25px;
}


/* WORKS */
.works_list {
    width: 100%;
    overflow: hidden;
}

.works_list ul {
    width: 100%;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.works_list li {
    float: left;
    width: 25%;
    margin-right: 0;
    padding-bottom: 0px;
    *zoom: 1;
}

.works_list .catch {
    display: none;
}

.works_list .name {
    display: none;
}

.works_list .txt {
    display: none;
}

.works_list .ico,
.works_list .ico_wide {
    display: none;
}

section .btn a {
    display: block;
    width: 285px;
    padding: 10px 0;
    background: #366ac8;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    font-size: 116%;
    margin: 0 auto;
}

section .btn a span {
    background: url(../img/arw_btn.png) right 50% no-repeat;
    padding: 0 20px 0 0;
}

/* INTERVIEW */

.interview_list {
    width: 100%;
    overflow: hidden;
}

.interview_list ul {
    width: 100%;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.interview_list li {
    width: 100%;
    padding-bottom: 0px;
}

.interview_list li:nth-child(2),
.interview_list li:nth-child(3) {
    display: none;
}

#top_b section .interview_list .name {
    font-size: 116%;
    background: url(../img/arw.gif) 0 0.6em no-repeat;
    padding: 0 0 0 10px;
    margin: 0 0 10px 10px;
}

.interview_list .img {
    text-align: center;
}

.baloon01 {
    padding: 10px 0 0;
    font-size: 85%;
    line-height: 1.8;
}

/* SERVICE */

.challenge_svc {
    margin: 0 0 40px;
}

.challenge_svc ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid #d9d9d9;
}

.challenge_svc li {
    border-bottom: 1px solid #d9d9d9;
}

.challenge_svc li .inner {
    padding: 10px 0 10px 15px;
}

.challenge_svc li .inner.mb30 {
    margin: 0;
}

#top_d section .challenge_svc .csvc01,
#top_d section .challenge_svc .csvc02,
#top_d section .challenge_svc .csvc03,
#top_d section .challenge_svc .csvc04 {
    font-size: 116%;
    margin: 0 0 0 0;
    padding: 5px 35px 5px 45px;
    color: #007dbb;
    line-height: 1.5;
}

.challenge_svc .csvc01 span,
.challenge_svc .csvc02 span,
.challenge_svc .csvc03 span,
.challenge_svc .csvc04 span {
    padding: 0 0 0 0px;
    text-decoration: underline;
}

.challenge_svc a:hover .csvc01 span,
.challenge_svc a:hover .csvc02 span,
.challenge_svc a:hover .csvc03 span,
.challenge_svc a:hover .csvc04 span {
    text-decoration: none;
}

.challenge_svc .csvc01 {
    background: url(../img/sp/sp_arw.png) right 50% no-repeat,
                url(../img/ico_kadai01.gif) 0 50% no-repeat;
    background-size: 24px 7px,
                     31px 31px;
}

.challenge_svc .csvc02 {
    background: url(../img/sp/sp_arw.png) right 50% no-repeat,
                url(../img/ico_kadai02.gif) 0 50% no-repeat;
    background-size: 24px 7px,
                     31px 31px;
}

.challenge_svc .csvc03 {
    background: url(../img/sp/sp_arw.png) right 50% no-repeat,
                url(../img/ico_kadai03.gif) 0 50% no-repeat;
    background-size: 24px 7px,
                     31px 31px;
}

.challenge_svc .csvc04 {
    background: url(../img/sp/sp_arw.png) right 50% no-repeat,
                url(../img/ico_kadai04.gif) 0 50% no-repeat;
    background-size: 24px 7px,
                     31px 31px;
}

.challenge_svc a .txt {
    display: none;
}

#top_d section #htab p.img {
    display: none;
    float: left;
    width: 15%;
    margin: 0 15px 5px 0;
}
#top_d section #htab p.tit {
    font-size: 116%;
    color: #07539f;
    margin: 0 0 5px;
    padding: 3px 0 3px 55px;
}

#top_d section #htab p.tit.ico01 {
    background: url(../../img/ico_recommend01.gif) 0 0 no-repeat;
    background-size: 45px auto;
}

#top_d section #htab p.tit.ico02 {
    background: url(../../img/ico_recommend02.gif) 0 0 no-repeat;
    background-size: 45px auto;
}

#top_d section #htab p.tit.ico03 {
    background: url(../../img/ico_recommend03.gif) 0 0 no-repeat;
    background-size: 45px auto;
}

#top_d section #htab .subtit {
    display: none;
}
#top_d section #htab .txt {
    display: none;
}

#top_d section #htab li {
    background: url(../img/sp/sp_arw.png) right 50% no-repeat;
    background-size: 24px 7px,
}

.resp-tabs-container {
    border-top: 1px solid #d9d9d9;
}

.rt_cnt01,
.rt_cnt02,
.rt_cnt03 {
    border-bottom: 1px solid #d9d9d9;
}

#top_d section #htab .info p {
    margin: 0 0 15px;
}

#top_d section #htab .info p.tit {
    color: #555;
    margin: 0 0 5px;
    background: none;
    padding: 0;
}

#top_d #htab .servicelist ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

#top_d #htab .servicelist li {
    width: 92%;
    margin-right: 0px;
    *zoom: 1;
    margin: 0 0 0px;
}

#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: 100%;
    line-height: 1.5;
    margin: 0;
    background: none;
    padding: 0;
}

#top_d #htab .servicelist li p.explain {
    font-size: 77%;
}



#partner_list,
#o_svc {
    display: none;
}

#top_c section #feeds p {
    margin: 0 0 20px;
    font-size: 100%;
}

#feeds p img {
    vertical-align: middle;
}

span.date_blog {
    display: block;
    float: left;
    width: 30px;
    padding: 7px;
    background: #4bb074;
    color: #fff;
    text-align: center;
    font-size: 11px;
    word-wrap: break-word;
    margin: 0 10px 0 0;
    line-height: 1.3;
}

.info_fbarea {
    width: 290px;
    margin: 0 auto;   
}


/* 制作実績ページ　2015新レイアウト
==================================================== */

#main .case_main {
    text-align: center;
    margin: 0 0 30px;
}

.case_data {
    background: #f4f4f4;
    padding: 15px;
}

.case_data ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.case_data ul li {
    margin: 0 0 10px;
}

#main .case_data ul li .tit {
    font-size: 85%;
    font-weight: bold;
    margin: 0 0 5px;
}

#main .case_data ul li .cnt {
    line-height: 1.5;
}

#main .case_data .ico {
    display: inline;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    font-size: 77%;
    padding: 5px 10px;
    line-height: 1;
    color: #fff;
    margin: 0 0 10px;
    text-align: center;
}

#main .case_data .ico_wide {
    display: block;
    width: 110px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    font-size: 77%;
    padding: 5px;
    line-height: 1;
    color: #fff;
    margin: 0 0 10px;
    text-align: center;
}

.case_data .ico.realestate {
    background: #4c834d;
}
.case_data .ico.sightseeing {
    background: #c8200f;
}
.case_data .ico.wedding,
.case_data .ico_wide.wedding {
    background: #e874b3;
}
.case_data .ico.manufacture {
    background: #848484;
}
.case_data .ico.education {
    background: #98ba60;
}
.case_data .ico.hospital {
    background: #9a460d;
}
.case_data .ico.publish {
    background: #e67d00
}
.case_data .ico.finance {
    background: #2b5bb5;
}
.case_data .ico.entertainment {
    background: #cd9c3f;
}
.case_data .ico.talent {
    background: #8f38b7;
}
.case_data .ico.npo {
    background: #6138b5;
}
.case_data .ico.event {
    background: #e6448c;
}

.case_data .ico.brand {
    background: #009999;
}

.case_data .ico.financial {
    background: #3366cc;
}

.case_data .ico.service {
    background: #0ba4da;
}

.case_data .ico.process{
        background: #edb388;
}

.case_cap {
    width: 100%;
    overflow: hidden;
}

.case_cap ul {
    width: 100%;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0 0 20px;
}

.case_cap li {
    width: 280px;
    margin: 0 auto 20px;
    *zoom: 1;
}
.case_cap li.end {
    width: 140px;
    margin: 0 auto;
    *zoom: 1;
}

#main .case_cap li p {
    font-size: 85%;
    color: #555;
    margin: 0 0 5px;
}

#main .case_cap li p.pc {
    background: url(../img/ico_pc.jpg) 0 50% no-repeat;
    padding: 0 0 0 18px;
}

#main .case_cap li p.smp {
    background: url(../img/ico_smp.jpg) 0 50% no-repeat;
    padding: 0 0 0 16px;
}


/* Web制作サービス
==================================================== */

.servicelist {
}

.servicelist ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.servicelist li {
    margin: 0 0 10px;
}

.servicelist li.sl_ico01 {
    background: url(../img/se_ico_tec01.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico02 {
    background: url(../img/se_ico_tec02.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico03 {
    background: url(../img/se_ico_tec03.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico04 {
    background: url(../img/se_ico_tec04.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico05 {
    background: url(../img/se_ico_tec05.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico06 {
    background: url(../img/se_ico_tec06.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico07 {
    background: url(../img/se_ico_tec07.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico08 {
    background: url(../img/se_ico_tec08.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico09 {
    background: url(../img/se_ico_tec09.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico10 {
    background: url(../img/se_ico_tec10.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico11 {
    background: url(../img/se_ico_tec11.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico12 {
    background: url(../img/se_ico_tec12.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}
.servicelist li.sl_ico13 {
    background: url(../img/se_ico_tec13.png) 0 50% no-repeat;
    padding: 10px 0 10px 41px;
}

#main section .servicelist li p.tit {
    font-size: 100%;
    line-height: 1.5;
}

#main section .servicelist li p.explain {
    font-size: 77%;
}


/* お問い合わせ
-------------------------------------*/

/* お問い合わせトップ */

.cntct_form {
    background: #f4f4f4 url(../img/ico_cntct_tit01.gif) 10px 50% no-repeat;
    padding: 10px 10px 10px 50px;
    font-weight: bold;
    margin: 0 0 20px;
}

.cntct_tel {
    background: #f4f4f4 url(../img/ico_cntct_tit02.gif) 10px 50% no-repeat;
    padding: 10px 10px 10px 50px;
    font-weight: bold;
    margin: 0 0 20px;
}

.cntct_list {
    width: 100%;
    overflow: hidden;
}

.cntct_list ul {
    width: 100%;
    overflow: hidden;
    *zoom: 1;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.cntct_list li {
    float: left;
    width: 48%;
    margin-right: 4%;
    padding-bottom: 20px;
    *zoom: 1;
}

.cntct_list li:last-child {
    margin-right: 0;
}

.cntct_list li a {
    display: block;
    border: 1px solid #d9d9d9;
    padding: 80px 15px 20px;
}

.cntct_list li a:visited {
    color: #007dbb;
}

.cntct_list li a.consulting {
    background: url(../img/ico_cntct01.gif) 50% 20px no-repeat;
    background-size: 62px auto;
}

.cntct_list li a.partner {
    background: url(../img/ico_cntct02.gif) 50% 30px no-repeat;
    background-size: 62px auto;
}

.cntct_list li a span {
    display: block;
    background: url(../img/arw.gif) 0 0.5em no-repeat;
    padding: 0 0 0 12px;
}

.cntct_telnum span {
    font-size: 138.5%;
}

.cntct_telnum span.pc_none a,
.cntct_telnum span.pc_none a:link,
.cntct_telnum span.pc_none a:hover,
.cntct_telnum span.pc_none a:visited,
.cntct_telnum span.pc_none a:active {
    color: #232733;
    text-decoration: none;
}


/* スマホPC切替スイッチ
==================================================== */

.dvc_switch {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    background: #07539f;
}

.dvc_switch ul {
    width: 90%;
    margin: 0 auto;
    padding: 10px 0;
}

.dvc_switch li {
    float: left;
    width: 100%;
    list-style-type: none;
}

.dvc_switch li.pc a {
    display: inline-block;
    text-decoration: none;
    color: #6d9ac7;
    background: url(../img/sp/ico_pc.png) 10px 50% no-repeat;
    background-size: 18px 18px;
    border: 1px solid #06498b;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    padding: 10px 10px 10px 35px;
}

.dvc_switch li.sp {
    display: none;
}

.dvc_switch p {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    font-size: 77%;
    color: #fff;
    padding: 0 0 10px;
}


/* margin
==================================================== */

.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }


/* clearfix
==================================================== */

.clearfix {
    zoom: 1;
}
.clearfix:after {
    display: block;
    clear: both;
    content: '';
}

*:after {
    display: block;
    clear: both;
} /* この記述は固定です */











/* =======================================================
  旧デザイン用スタイル
==================================================== */


/* お客様事例トップページ
==================================================== */
#main_itv {
        width: 94%;
        padding: 20px 3% 20px 3%;
        }

#contents_title_itv {
        width: 100%;
        text-align: left;
        }

#contents_title_itv h2 {
        margin: 0px 0 0 0;
        padding: 8px 0 6px 5px;
        font-weight: bold;
        font-size: 123.1%;
        color: #555;
        background: #f0f0f0;
        }
* html #contents_title_itv h2 { width: 79%;padding: 10px 10px 6px 20px; }
:first-child+html #contents_title_itv h2 { padding: 8px 10px 2px 20px; }

#contents_itv {
        width: 100%;
        padding: 17px 0px;
        min-height:300px;
        height:auto !important;
        }
* html #contents_itv { text-align: center; }

#contents_itv section {
        clear:both;
        width: 100%;
        margin-bottom: 25px;
        }

#contents_itv section a:visited { color: #232733; }

#contents_itv section h3 {
        text-align: left;
        margin: 0px 0px 15px 0px;
        padding: 0px 0px 0px 18px;
        font-size: 123.1%;
        font-weight: bold;
        color: #555;
        background: url(../img/h3_bullet.gif) 0 0.5em no-repeat;
        }

:first-child+html #contents_itv section h3 { padding: 7px 0px 2px 12px; }

#contents_itv section p {
        text-align: left;
        font-size: 100%;
        line-height: 1.5;
        }

#contents_itv section ul {
        text-align: left;
        margin: 5px 0px 5px 10px;
        padding: 0px 0px 0px 10px;
        font-size: 100%;
        line-height: 1.5;
        }

#contents_itv section ol {
        text-align: left;
        margin: 5px 0px 5px 15px;
        padding: 0px 0px 0px 20px;
        font-size: 100%;
        line-height: 1.5;
        }

#itv_top {
        width: 100%;
        margin: 20px auto 0px auto;
        text-align: center;
        }

#itv_top p,
.itv_article p,
.itv_article_end p {
        font-size: 77%;
        }

h4.tit_itv {
        text-align: left;
        background: url(../img/arw_subnav.gif) left 50% no-repeat;
        padding: 5px 0 5px 15px;
        line-height: 1.5em;
        font-weight: normal;
        }

p.right_itv {
        font-size: 85%;
        }

.itv_mid {
        width: 100%;
        min-height: 430px;
        margin: 0px auto;
        clear: both;
        }

.itv_article, .itv_article_end,
.itv_article_l, .itv_article_r {
        width: 100%;
        margin: 30px auto;
        text-align: center;
        }

.itv_article img, .itv_article_end img {
        margin: 0 auto;
        text-align: center;
}

.openpdf{
        background: url(/img/icon_pdf.gif) right top no-repeat;
}

/* お客様インタビュー下層################ */

#contents .styletex_3col{
    margin: 20px auto;
    text-align: center;
}


/* 制作実績トップページ ###################### */
#contents h2.port_tit {
        padding: 0 0 0 15px;
        margin: 20px 0 15px 0;
        font-size: 100%;
}

.port_txt , .port_txt_itv {
        width: 100%;
        padding-bottom: 20px;
}

.portfolio_l_box {
}

.portfolio_l,
.portfolio{
        float: none;
        clear: both;
        margin: 0 auto;
        text-align: center;
}

.portfolio_l:after,
.portfolio:after { content: ""; } /* clearfix */

img.port_img {
        width: 146px;
        margin: 0 auto;
        text-align: center;
}

.port_txt {
        width: 100%;
}

.port_txt_itv {
        width: 100%;
}

.port_itv {
        width: 100%;
        margin: 0 auto;
        text-align: center;
}

#contents section .port_itv p {
        width: 60%;
        margin: 0 auto;
        text-align: center;
}

#contents section .port_txt p,
#contents section .port_txt_itv p {
        font-size: 77%;
        margin: 0 0 10px;
}

#contents section p.port_point {
        background: #f0f0f0;
        color: #272a33;
        padding: 5px 3px 3px 6px;
        margin: 0 0 10px;
        display: block;
        width: auto;
        text-align: left;
        font-size: 77%;
}


/*制作実績下層ページ*/


#contents section ul.ico_lis {
        margin: 0 0 10px;
        padding: 0 0 10px;
        list-style: none;
        float: right;
        border-bottom: 1px dotted #ccc;
        }

#contents section ul.ico_lis:after { content: ""; } /* clearfix */

#contents section ul.ico_lis li{
        float: left;
        width: 45%;
        padding: 0 5% 0 0;
        margin: 0;
        }

ul.ico_lis li img {
        margin: 0 5px;
}

#contents section ul.ico_lis2 {
        margin: 0 0 10px;
        padding: 0 0 10px;
        list-style: none;
        float: right;
        border-bottom: 1px dotted #ccc;
        }

#contents section ul.ico_lis2:after { content: ""; } /* clearfix */

#contents section ul.ico_lis2 li{
        float: left;
        width: 45%;
        padding: 0 5% 0 0;
        margin: 0;
        }

ul.ico_lis2 li img {
        margin: 0 5px;
}

#contents section ul.list_n{
        width: 95%;
        float: left;
        list-style: none;
        background: url(../img/arw_subnav.gif) 0px 0.7em no-repeat;
        padding: 0 0 0 10px;
        margin: 0;
        }

ul.list_n li{
        width: 95%;
        padding: 3px 0 0 0;
        margin: 0;
        }

#contents p.port_point {
        background: #f0f0f0;
        padding: 5px;
        margin: 10px 0px;
        text-align: left;
}
#contents section ul.ico_bot{
        clear: both;
        list-style: none;
        margin: 0 0 0 10px;
        padding: 0;

        }

#contents section ul.ico_bot li{
        float: left;
        padding: 10px 5px 10px 0;
        }

#contents section ul.ico_bot2{
        clear: both;
        list-style: none;
        margin: 0 0 0 10px;
        padding: 0;

        }

#contents section ul.ico_bot2 li{
        float: left;
        padding: 10px 5px 10px 0;
        }

.each_b{
        width: 100%;
        border-bottom: 1px dotted #ccc;
        margin: 0 0 10px;
        padding: 0 0 0px;
        }


#contents_port {
        width: 100%;
        padding: 0px;
        margin-top: 43px;
        margin-right: 60px;
        min-height:400px;
        height:auto !important;
        height: 400px;
        }

#contents_port section {
        width: 100%;
        margin-bottom: 25px;
        }
#contents_port section a:visited { color: #232733; }

img#port_mainimg {
        margin: 0 0 35px 0;
}

img.port_titleimg {
        width: 114px;
        float: left:
        }

#contents_port p {
        text-align: left;
        }

ul.article_port {
        list-style-type: square;
        text-align: left;
        padding: 0;
        margin: 0 0 30px;
        }

ul.article_port li {
        padding: 5px 0 0 0;
        margin: 0;
        }

#port_arrow {
        margin: 35px 0;
        width: 100%
        }

#port_arrow img {
        display: block;
        margin: 0 auto;
        }

#contents_portside {
        width: 100%;
        padding: 0px;
        margin: 40px 0 0 0;
        }

#contents_portside h3.portside {
        text-align: left;
        margin: 0 0 0 5px;
        padding: 0px 0px 0px 18px;
        font-size: 100%;
        font-weight: normal;
        color: #555;
        background: url(../img/h3_bullet.gif) 0 0.5em no-repeat;
        }
#contents_portside h2.portside {
        text-align: left;
        margin: 0 0 0 5px;
        padding: 0px 0px 0px 18px;
        font-size: 100%;
        font-weight: normal;
        color: #555;
        background: url(../img/h3_bullet.gif) 0 0.5em no-repeat;
        }

#contents_portside h2.portside {
        text-align: left;
        margin: 0 0 0 5px;
        padding: 0px 0px 0px 18px;
        font-size: 100%;
        font-weight: normal;
        color: #555;
        background: url(../img/h3_bullet.gif) 0 0.5em no-repeat;
        }
#contents_portside img {
        display: block;
        margin: 0 auto 10px auto;
}

#port_urlbox {
        width: 100%;
        word-wrap: break-word;
}

#main p.r_txt {
        text-align: right;
}


/* サービス トップページ
==================================================== */

.r_type > div,
.l_type > div,
.m_type > div {
        margin: 0 0 10px;
        zoom:1;
}

.r_type > div:after,
.l_type > div:after,
.m_type > div:after {
        content: "";
        display: block;
        clear: both;
}

.s_type_l {
        float: left;
        width: 60px;
        margin: 0px 0 0 0 ;
        padding: 0px;
}

.s_type_r {
        float: left;
        margin: 0px 0 0 0;
        padding: 10px 0 0 0;
}
.service_site_single {
        clear: both;
        margin-top: 20px;
}


/* サービス内 制作ワークフロー
==================================================== */

#flow_image {
        width: 242px;
        height: auto;
        margin: 0 auto;
        float: none;
        }

#flow_txt {
        display: none;
        }

/* サービス内 チーム編成
==================================================== */

.team_l , .team_r , .team_b {
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0;
        float: none;
}

.team_l img , .team_r img , .team_b img {
        display: block;
        margin: 5px auto;
}

.team_arrows {
        display: none;
}
/* サービス内 その他設定
==================================================== */
#se_cmsinfo {
        border: 1px solid #d2d2d2;
        padding: 10px;
        margin: 20px 0 0 20px;
}
.service_articletit {
        display: none;
}

h5 {
        text-align: left;
        font-size: 110%;
        padding: 10px 0 5px 0;
        font-weight: bold;
}
.photo-r2,
.photo-r,
.photo-l {
        text-align: center;
        margin: 3px auto 15px auto;
        font-size: 77%;
        line-height: 1.3;
        color: #555;
}
span.ita {
        font-style: italic !important;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "Helvetica", "Arial", "sans-serif";
}

/* 代表挨拶
==================================================== */

#com_pro_r {
        margin: 50px 0 0 0;
}

#contents section #com_pro_c p {
        text-align: center;
}

#contents section #com_pro_r p {
        font-size: 77%;
}

/* 社長コラム
==================================================== */
#main_clm {
        width: 94%;
        padding: 20px 3% 20px 3%;
        text-align: left;
        float: none;
}

#main_clm section {
        clear:both;
        margin: 0 0 20px 0;
}

#contents_clm {
        margin: 0px;
        padding: 0px 0px 50px 0px;
        text-align: left;
        }
#contents_clm h4 {
        margin-top: 50px;
        margin-bottom: 15px;
        padding: 0px 0px 0px 18px;
        font-size: 123.1%;
        font-weight: bold;
        background: url(../img/h3_bullet.gif) 0 0.5em no-repeat;
}
#clm_nav {
           float: none;
           width: 235px;
           margin: 0px auto;
           padding: 0px;
           text-align: left;
           }
table.qa_tbr {
           width: 100%;
           }

table.qa_tbr th {
           background: #fff;
           width: 85px;
           padding-top: 25px;
           vertical-align: top;
           }

table.qa_tbr td {
        padding: 0 0 0 15px;
        }

table.tbr_cm {
        border-bottom: 1px solid #d9d9d9;
        border-right: 1px solid #d9d9d9;
        border-collapse: collapse;
        }

table.tbr_cm th {
        padding: 5px 10px 5px 10px;
        border-top: 1px solid #d9d9d9;
        border-left: 1px solid #d9d9d9;
        background: #fafafa;
        font-size: 100%;
        line-height: 1.5;
        text-align:center;
        }

table.tbr_cm td {
        padding: 4px 10px 4px 10px;
        border-top: 1px solid #d9d9d9;
        border-left: 1px solid #d9d9d9;
        font-size: 100%;
        line-height: 1.5;
        color: #000;
        text-align: left;
        }
.clm_photo-c {
        margin: 3px 0px 15px 0px;
        font-size: 77%;
        line-height: 1.3;
        color: #555;
}

.clm_photo-c img {
        margin: 0 0 5px 0;
}
/* コラムその他設定 */

#contents_clm ul {
        padding: 0 0 0 18px;
}

#contents_clm ul li ul {
        padding: 0px;
}

#contents_clm ul li ul li {
        list-style: none;
}

p.cap {
        font-size: 77%;
        line-height: 1.3;
        color: #555;
        word-wrap: break-word;
}

/* コラム 2016年6月 ###################### */

.seo_data {
    background: #f4f4f4;
    padding: 15px;
}

.seo_data ul.sd_r {
    word-break: break-word;
}

.seo_data ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}


/* 採用情報 ###################### */

.sai_l{
   float: left;
}

.sai_b {
   width: 328px;
   border: 1px solid #d1d1d1;
   padding: 10px 10px 10px 10px;
}
.sai_b_l {
   float: left;
}

.sai_b p {
   width: 236px;
   float: right;
}

.sai_r{
    float: right;
}

a.sai_lin{
   background: url(../../img/ico_url) 0px 2px no-repeat;
   margin-top: 17px;
   float: right;
}

/* 採用情報130501 ###################### */

#main_saiyou {
        float: none;
        width: 94%;
        padding: 0px;
        margin: 0px auto;
        text-align: left;
}

/* 採用情報top */
        nav#subnav_saiyou {
        float: none;
        width: 230px;
        margin: 20px auto 50px auto !important;
        padding: 0;
        text-align: left;
        }
        nav#subnav_saiyou ul {
        margin: 7px 0 0 0;
        padding: 0px;
        font-size: 100%;
        line-height: 1.5;
        }

#main_saiyou #contents {
        width: 100%;
        padding: 0px 0px 50px 0px;
        min-height:400px;
        height:auto !important;
        height:400px;
        text-align: left;
}

#saiyou {
        margin: 0 0 20px;
}

#main_saiyou h2 img {
        margin: 20px 0;
        padding: 0;
}

.block_saiyou {
        float: none;
        clear:both;
        padding: 0;
        margin: 0 auto;
}

.block_saiyou a:link, .block_saiyou a:visited {
        color: #148bb7;
        text-decoration:none;
}
.block_saiyou a:hover, .block_saiyou a:active {
        color: #148bb7;
        text-decoration:underline;
}

.block_saiyou h3 {
        margin: 20px 0px 18px 0px;
        font-size: 123.1%;
        padding-bottom: 3px;
        border-bottom:1px dotted #d2d2d2;
        font-weight: bold;
}

.block_saiyou p {
        margin: 0;
        padding: 0;
        font-size: 100%;
        line-height: 1.5;
        color: #555;
}

.block_saiyou ul {
        margin: 5px 0px 5px 10px;
        padding: 0px 0px 0px 10px;
        font-size: 100%;
        line-height: 1.5;
        color: #555;
}

.block_saiyou ol {
        margin: 5px 0px 5px 15px;
        padding: 0px 0px 0px 20px;
        font-size: 100%;
        line-height: 1.5;
        color: #555;
}
.top-b-block h4 {
        margin: 0 0px 10px 0;
         padding: 0 0 0px 0;
         font-size: 108%;
          color: #555;
          border-bottom: 1px solid #d2d2d2;
}

h2#saiyou {
        padding: 0;
        margin: 0;
        height: auto;
        width: 100%;
        vertical-align: top;
}

.saiyou_side p {
        color: #666;
}
.saiyou_side ul {
        margin-left: 0;
        padding-left: 0;
        list-style: none;
}
.saiyou_side ul.small {
        margin: 0 0 10px 0;
        color: #666;
        font-size: 85%;
        padding-left: 0;
        list-style: none;
}

#tit_saiyou_spase{
        display: none;
}

#tit_saiyou {
        display: none;
}

.saiyou_wrapper {
        width: 228px;
        margin: 0 auto;
        padding: 0;
}

.menu_saiyou02_wrapper {
        width: 228px;
        float: none;
}

.menu_saiyou01 {
        float: none;
        width: 228px;
        border: 1px solid #ddd;
        padding: 0;
        margin: 0 auto 20px auto;
        clear: both;
}

.menu_saiyou02 {
        width: 228px;
        border: 1px solid #ddd;
        padding: 0;
        margin: 0 auto 20px auto;
        clear: both;
}

.saiyou_wrapper .last { margin-right: 0px; }
* html .saiyou_wrapper .last { float: right; margin-right: 0px; }

.menu_saiyou_l {
        float: left;
        width: 70px;
        padding: 0;
        margin: 0;
}
.menu_saiyou_l img {
        vertical-align: top;
}
.menu_saiyou_r {
        float: left;
        width: 118px;
}
* html .menu_saiyou_r { width: 123px; }

.menu_saiyou01 .line1, .menu_saiyou02 .line1 {
        padding: 26px 20px 0;
}
* html .menu_saiyou01 .line1, * html .menu_saiyou02 .line1 {
        padding: 26px 0px 0 20px;
}
.menu_saiyou01 .line2, * html .menu_saiyou02 .line2 {
        padding: 17px 20px 0;
}
* html .menu_saiyou01 .line2, * html .menu_saiyou02 .line2 {
        padding: 17px 0 0 20px;
}
.menu_saiyou02 .line3 {
        padding: 12px 20px 0;
}
* html .menu_saiyou02 .line3 {
        padding: 12px 0 0 20px;
}
.menu_saiyou02 .line3 p img {
        margin-bottom: 15px;
}
.menu_saiyou_r ul {
        margin: 0; padding: 0; list-style: none; top: 50%;
}
.saiyou_low_c ul {
        margin: 0; padding: 0 0 7px 2px; list-style: none; top: 50%;
}
.menu_saiyou_r ul li, .saiyou_low_c ul li {
        padding: 0 0 0 9px; background: url(../img/nav_arw.gif) no-repeat 0 0.5em;
}
.menu_saiyou02 .line3 ul li {
        padding: 0 0 0 9px; background: url(../img/nav_arw.gif) no-repeat 0 0.3em;
}
* html .menu_saiyou02 .line3 ul li {
        padding: 0 0 0 9px; background: url(../img/nav_arw.gif) no-repeat 0 0.3em;
}
.menu_saiyou_r ul li img {
        top: 50%;
}
.menu_saiyou03 {
        float: none;
        width: 228px;
        border: 1px solid #ddd;
        padding: 19px 0 4px 0;
        color: #666;
        clear: both;
}
.menu_saiyou03 p  { color: #666; font-size: 93%; }
.menu_senpai_l {
        float: none;
        width: 140px;
        margin: 0 auto 26px auto;
        text-align: left;
}
* html .menu_senpai_l { width: 154px; margin: 0; }
.menu_saiyou03 p.font85 { font-size: 85%; }
.menu_saiyou03 img, .menu_saiyou03 p { margin: 0 0 10px; }
.menu_senpai_l p a:link, .menu_senpai_l p a:visited { color: #666; text-decoration: none;}
.menu_senpai_l p a:active, .menu_senpai_l p a:hover { color: #666; text-decoration: underline;}

#ttl_senpai {
        width: 100%;
        padding-left: 19px;
}
* html .ttl_senpai {
        width: 100%;
        padding-left: 19px;
}

#saiyou_lower_wrapper {
        width: 228px;
        border: 1px solid #ddd;
        margin: 20px auto 0 auto;
        padding: 0;
        float: none;
        clear: both;
}

#saiyou_low_l {
        float: none;
        width: 228px;
        padding: 19px 0 0 0;
}
* html #saiyou_low_l { width: 70px; margin: 6px 9.5px 0 9.5px; }

#ttl_youkou {
        width: 66px;
        margin-bottom: 19px;
        margin: 0 0 11px 19px;
}

#saiyou_low_l img {
        width: 70px;
        margin: 0 auto;
        display: block;
}

#saiyou_low_middle {
        float: none;
        width: 190px;
        padding: 34px 0 0 0;
        margin: 0 auto;
}
* html #saiyou_low_middle { padding: 34px 5px 0 0; }

.saiyou_low_c {
        width: 190px;
        float: none;
        padding: 0 0 16px 0;
        margin: 0 auto;
}
* html .saiyou_low_c { padding: 0 10px 16px 0; }

.saiyou_low_c p {
        color: #666;
        font-size: 93%;
}

#saiyou_low_r {
        float: none;
        width: 150px;
        padding: 15px 20px 16px 0;
}
* html #saiyou_low_l { padding: 15px 10px 16px 0; }

/* 150216 追加 */
#recruit h1 {
        margin: 0;
        margin: 0 0 30px;
        text-align: center;
}

#recruit .rec_tbl {
        width: 100% !important;
}

.w20 { width: 20%; }

.block_saiyou {
        clear: both;
        padding: 0 0 20px 0;
}

.block_saiyou h2 {
        margin: 10px 0px 18px 0px;
        font-size: 123.1%;
        font-weight: bold;
        padding-bottom: 3px;
        border-bottom: 1px dotted #d2d2d2;
}

/* ご利用について
==================================================== */
.user {
        float: none !important;
        padding-top: 20px;
}



/* 黒背景タイトル部分設定
==================================================== */
.un_box {
        width: 210px;
        margin: 0 auto 40px auto;
        }

.un_box_end {
        width: 210px;
        margin: 0 auto 40px auto;
        }

#contents h3.black , #contents_company h3.black {
        text-align: center;
        margin: 0px;
        padding: 10px 0px;
        font-size: 100%;
        font-weight: normal;
        color: #fff;
        background: #07539f;
        width: 100%;
        }
#contents h2.black , #contents_company h2.black {
        text-align: center;
        margin: 0px;
        padding: 10px 0px;
        font-size: 100%;
        font-weight: normal;
        color: #fff;
        background: #07539f;
        width: 100%;
        }
#contents h3.black a , #contents_company h3.black a {
        color: #fff;
        text-decoration: none;
        }

#contents h3.black a:visited , #contents_company h3.black a:visited{
        color: #fff;
        text-decoration: none;
        }

#contents h3.black a:hover , #contents_company h3.black a:visited{
        color: #fff;
        text-decoration: none;
        }
#contents h2.black a , #contents_company h2.black a {
        color: #fff;
        text-decoration: none;
        }

#contents h2.black a:visited , #contents_company h2.black a:visited{
        color: #fff;
        text-decoration: none;
        }

#contents h2.black a:hover , #contents_company h2.black a:visited{
        color: #fff;
        text-decoration: none;
        }
#btm_contact ul {
        list-style: none;
}
#btm_contact {
        width: 100%;
        text-align: center;
}
#btm_contact img#btm_contact_pc {
        display: none;
}


/* 会社情報
==================================================== */

#contents_company {
        padding: 17px 0 0 0;
}

#contents_company section {
        clear: both;
        margin: 0 0 30px;
}


/* 用語集 2013/11/21 append
==================================================== */
#contents section .btn {
        background: none;
        text-align: center;
        border: none;
        padding-top: 10px;
}

#contents section .yougo_index {
        list-sty