@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
body {
    font-size:14px;
    color:#382400;
    font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    line-height:1.6;
    background:#333;
}
#contents {
    overflow:hidden;
    width:980px;
    margin:0 auto;
}

#main {
    box-sizing: border-box;
    overflow:hidden;
    float:right;
    width:680px;
    padding:10px;
    background:#fbfbfb;
    margin-bottom:-32768px;
    padding-bottom:32768px;
}

#sub {
    box-sizing: border-box;
    overflow:hidden;
    float:left;
    width:300px;
    background:#1f2124;
    margin-bottom:-32768px;
    padding-bottom:32768px;
}

footer {
    box-sizing: border-box;
    width:980px;
    margin:0 auto;
}

section {
    margin-bottom:50px;
}

a {
    color:#13895f;
}
a:hover {
    color:#2fa279;
}

h1 {
    color:#fbfbfb;
    font-size:28px;
    line-height:1.2;
}
h1 a {
    color:#fbfbfb;
    text-decoration:none;
}
h1 a:hover {
	color:#000;
}

h2 {
    margin-bottom:0.5em;
    font-size:21px;
    color:#333;
    border-bottom:3px solid #999;
}

h3 {
    margin-bottom:0.25em;
    padding:2px 5px;
    color:#fbfbfb;
    font-size:16px;
    background:#333;
}

h4 {
    margin-bottom:0.25em;
    font-size:16px;
    color:#15adb3;
}

h5 {
    margin-bottom:0.25em;
    padding:2px;
    font-size:16px;
    border-left:5px solid #15adb3;
    background:#eee;
}

h6 {
    margin-bottom:0.25em;
    color:#382400;
    font-size:14px;
    font-weight:bold;
}

p {
    margin:0 0 1em 0;
}

img {
    vertical-align:bottom;
}

em {
    font-weight:bold;
}

strong {
    font-weight:bold;
    color:#d45451;
}

pre {
    margin:1em 0;
    padding:1em;
}

blockquote {
    margin-bottom:1em;
    padding:1em;
    border:1px dotted #ddd;
    border-left:5px solid #ddd;
}

ul,ol,dl {
    margin:0 0 1em 0;
}
ul li {
    list-style:disc;
}
ol li {
    list-style:decimal;
}
li {
    margin-left:2em;
}

dt {
    margin-bottom:0.5em;
    border-bottom:1px dotted #ddd;
}
dt:before {
    content:"\0025a0";
}
dd {
    margin-bottom:1em;
}

table {
    width:100%;
    margin-bottom:1em;
    border-collapse:collapse;
    border:1px solid #ddd;
    background:#fff;
}
th {
    padding:10px;
    text-align:center;
    vertical-align:middle;
    border:1px solid #ddd;
    background:#eee;
}
td {
    padding:10px;
    text-align:left;
    border:1px solid #ddd;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
	position:relative;
	background-color: #000;
}

header h1 {
    padding:10px;
}

.summary {
    margin:0;
    padding:10px;
    color:#ddd;
    background:#23292f;
}

/*================================================
 *  グローバルナビゲーション
 ================================================*/
nav {
    overflow:hidden;
}
nav ul {
    margin:0;
    padding:0;
}
nav li {
    list-style:none;
    margin:0;
    padding:0;
}
nav li a {
    display:block;
    padding:30px;
    color:#fbfbfb;
    text-decoration:none;
    background:#1f2124;
}
nav li a:hover {
    color:#fbfbfb;
    border-left: 8px solid #139095;
    background:#18191b;
    transition:all 0.2s ease 0s;
}

/*================================================
 *  フッター
 ================================================*/
footer {
    clear:both;
}

.footmenu {
    width:100%;
    padding:20px 0;
    overflow:hidden;
    background:#23292f;
}
.footmenu ul {
    position:relative;
    float:left;
    left:50%;
    margin:0;
    padding:0;
}
.footmenu li {
    position:relative;
    left:-50%;
    float:left;
    list-style:none;
    margin:0;
    padding:0 20px;
    font-size:12px;
    text-align:center;
}
.footmenu a {
    color:#13895f;
    text-decoration:none;
}
.footmenu a:hover {
    color:#fbfbfb;
}

.copyright {
    clear:both;
    padding:20px 0;
    font-size:11px;
    text-align:center;
    color:#333e48;
    background:#181d21;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
    position:fixed;
    bottom:15px;
    right:15px;
}
.totop a {
    display:block;
    text-decoration:none;
}
.totop img {
    background:#15adb3;
}
.totop img:hover {
    background:#14c0c5;
}

/*================================================
 *  クラス
 ================================================*/
.textL {
    text-align:left;
}

.textR {
    text-align:right;
}

.list {
    padding:0 0 0 0.5em;
}
.list li {
    margin:0;
    padding:0 0 0 15px;
    list-style:none;
    background:url(../images/check.png) 0 5px no-repeat;
}

.info dt {
    border-bottom:none;
}
.info dd {
    padding-bottom:1em;
    border-bottom:1px solid #ddd;
}

.service {
    overflow:hidden;
    margin:10px -2% 0 0;
}
.service li {
    list-style:none;
    float:left;
    width:18%;
    margin:0 2% 10px 0;
}
.service li img {
    width:100%;
}

.staff {
    margin:10px -3% 0 0;
}
.staff div {
    float:left;
    width:31%;
    margin-right:2%;
}
.staff div img {
    width:100%;
    margin-bottom:5px;
}

/*================================================
 *  スライドショー
 ================================================*/
.slide {
    position:relative;
    width:100%;
    overflow:hidden;
    position:relative;
    margin-bottom:20px;
}

.slideInner {
    list-style:none;
    margin:0 0 5px 0;
    padding:0;
}
.slideInner li {
    position:absolute;
    background:#fbfbfb;
    margin:0;
    padding:0;
}
.slideInner li img {
    width:100%;
}

.slidePrev {
    position:absolute;
    display:block;
    width:50px;
    height:60px;
    left:0;
    cursor:pointer;
    z-index:100;
}

.slideNext {
    position:absolute;
    display:block;
    width:50px;
    height:60px;
    right:0;
    cursor:pointer;
    z-index:100;
}

.controlNav {
    position:relative;
    float:left;
    left:50%;
}
.controlNav span {
    position:relative;
    left:-50%;
    float:left;
    margin:5px;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
    border-radius:5px;
    width:10px;
    height:10px;
    overflow:hidden;
    background:#ddd;
    text-indent:-9999px;
    vertical-align:middle;
}
.controlNav span:hover {
    background:#ccc;
    cursor:pointer;
}
.controlNav span.current {
    background:#85d1c6;
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:779px) {
    #contents {
      box-sizing: border-box;
      width:100%;
    }

    #main {
      float:none;
      width:100%;
    }

    #sub {
      float:none;
      width:100%;
    }

    footer {
      width:100%;
    }

    nav {
        display:block;
        position:relative;
        width:100%;
    }
    nav h3 {
        cursor:pointer;
        margin-bottom:0;
        padding:10px;
        color:#ddd;
        background:#181d21;
        border:none;
    }
    nav li a {
        padding:10px 30px;
    }

    #navBtn {
        display:inline-block;
        position:absolute;
        top:10px;
        right:10px;
        width:30px;
        height:30px;
        border-radius:5%;
        background:#2a2a2a;
    }
    #navBtnIcon {
        display:block;
        position:absolute;
        top:50%;
        left:50%;
        width:14px;
        height:2px;
        margin:-1px 0 0 -7px;
        background:#15adb3;
        transition:.2s;
    }
    #navBtnIcon:before,
    #navBtnIcon:after {
        display:block;
        content:'';
        position:absolute;
        top:50%;
        left:0;
        width:14px;
        height:2px;
        background:#15adb3;
        transition:0.3s;
    }
    #navBtnIcon:before {
        margin-top:-6px;
    }
    #navBtnIcon:after {
        margin-top:4px;
    }
    #navBtn .close {
        background:transparent;
    }
    #navBtn .close:before,
    #navBtn .close:after {
        margin-top:0;
    }
    #navBtn .close:before {
        transform:rotate(-45deg);
        -webkit-transform:rotate(-45deg);
    }
    #navBtn .close:after {
        transform:rotate(-135deg);
        -webkit-transform:rotate(-135deg);
    }

   .totop {
        display:none !important;
    }

}
