@charset "utf-8";
/*
Theme Name: 戸口無線
*/

/* リセット
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-style:normal;
    font-size: 100%;
    vertical-align: baseline;
}
:focus {outline: 0;}
ol, ul {list-style: none;}
table {border-collapse: separate; border-spacing: 0;}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}


body {
    color: #000;
    font: 16px/1.6  "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
    font-weight: 500;
    background: #fff;
    border-top: 4px solid #28866a;
    overflow-y: scroll;
}
h1, h2, h3, h4, h5, h6, pre, code, input, textarea, select, button {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
}

/* レイアウト
------------------------------------------------------------*/
#wrapper {
    margin: 0 auto;
    width: 100%;
    height: auto;
    position: relative;
    padding-bottom: 30px;
}
.inner{
    margin: 0 auto;
    width: 1100px;
    position: relative;
}
#header{
    width: 1100px;
    height: 110px;
    margin: 0 auto;
    position: relative;
}
#content{
    float: left;
    width: 800px;
    padding: 30px 0 30px;
    margin: 0;
    background: #fff;
}
#content_1col{
    width: 100%;
    padding: 30px 30px 50px;
    box-sizing: border-box;
}
#sidebar{
    float: right;
    width: 250px;
    padding: 30px 0 50px;
    margin: 0;
}
.post{
    font-size: 15px;
    line-height: 1.7;
    padding: 0 15px 20px;
    margin: 0;
    min-height: 300px;
}



/*--- Link&Element ----------------------------------------------------------- */
a:link {
    color: #27856a;
    text-decoration: underline;
    transition: color .3s;
}
a:visited {
    color: #27856a;
}
a:hover {
    color: #888;
    text-decoration: none;
}
.post a:link {
    text-decoration: underline;
}
p {
    margin: 0 0 15px;
    padding: 0;
}
p img {
    padding: 0;
    max-width: 100%;
}
strong {
    color: #185341;
}
blockquote {
    font-style: italic;
    margin: 1em 0 1em 20px;
    padding: 15px;
    background-color: #f7f7f7;
    color: #444;
}
pre {
    padding: 10px 20px;
    border-left: 6px solid #ddd;
    background-color: #f7f7f7;
    overflow: auto;
    width: 90%;
    _width: 95%; /* for IE6 */
}
ul, ol {
    margin: 1em 20px;
    padding: 0;
    list-style-position: outside;
}
ul ul, ul ol, ul ol, ol ol {
    margin: 0.3em 0 0.3em 15px
}
ul.designlist {
    margin: 5px 3px 15px;
    padding: 0;
}
ul.designlist li {
    margin: 0;
    padding: 8px 0 8px 17px;
    background: url(images/list3.png) left 14px no-repeat;
    list-style: none;
    line-height: 1.3;
    border-bottom: 1px dotted #ddd;
}
ul.designlist2 {
    margin: 5px 0 25px;
    padding: 0;
}
ul.designlist2 li {
    display: inline;
    margin: 0 15px 0 0;
    padding: 8px 0 8px 17px;
    background: url(images/list3.png) left center no-repeat;
    list-style: none;
    line-height: 1.3;
}

h2 {
    clear: both;
    font-size: 30px;
    color: #185442;
    padding: 15px 0 20px;
    margin: 30px 0 25px 0;
    background: url(images/h2_bg.png) left bottom no-repeat;
    font-weight: bold;
    line-height: 1.2;
}
h2.h2first {
    margin-top: 0;
}
h2 > span > a{
    display: inline-block;
    float: right;
    font-size: 14px;
    padding: 7px 25px 7px 37px;
    border-radius: 18px;
    background: #edf3f1 url(images/list3.png) 20px center no-repeat;
    color: #185442;
    text-decoration: none !important;
    margin-top: 5px;
}
h3 {
    clear: both;
    font-size: 20px;
    font-weight: bold;
    color: #000;
    margin: 10px 0 10px 0;
    padding: 10px 0 10px 0;
    border-bottom: 1px dotted #ddd;
    line-height: 1.4;
}
h3 span{
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background: #fdde02;
    font-size: 18px;
    font-weight: bold;
    font-style: italic;
    color: #000;
    margin: 0 10px 0 0;
    padding: 0;
    border-bottom: none;
    border-radius: 50%;
}
h4 {
    clear: both;
    font-weight: bold;
    font-size: 19px;
    color: #000;
    background: url(images/hlist.png) left center no-repeat;
    margin: 20px 0 15px 0;
    padding: 12px 15px 12px 23px;
    border-bottom: 1px dotted #ddd;
}
h5 {
    clear: both;
    font-weight: bold;
    font-size: 18px;
    color: #000;
    margin: 15px 0 15px 0;
    padding: 5px 0 5px 0;
}
h6 {
    font-weight: normal;
    border-bottom: 1px dotted #ddd;
    font-size: 17px;
    margin: 0;
    padding: 5px 0 15px 0;
}
.clear {
    clear: both;
    width: 100%;
    height: 0px;
    font-size: 0px;
}

.box {
    background: #edf3f1 url(images/box_bg.png) left top no-repeat;
    border: #b1cfc7 solid 3px;
    padding: 25px 25px 10px;
    margin: 0px 0 20px 0;
    box-shadow: 0 3px 0 rgba(0,0,0,0.04);
}
@media only screen and (max-width: 979px){
    h2, h3, h4 {
        margin-top: 15px;
        font-size: 18px;
    }
    h2 > span > a{
    display: none;
    }   
}



/*--- Images ----------------------------------------------------------- */
img {
    max-width: 100%;
    border: none;
    margin: 0;
    vertical-align: bottom;
}
img.centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
img.alignright {
    float: right;
    padding: 0;
    margin: 0 0 10px 30px;
    display: inline;
}
img.alignleft {
    float: left;
    padding: 0;
    margin: 0 30px 10px 0;
    display: inline;
}
img.shadow {
    border-right: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    box-shadow: 3px 3px 2px 0 rgba(0, 0, 0, 0.05);
}
@media only screen and (max-width: 980px){
    img.alignright, img.alignleft {
        float: none;
        display: block;
        padding: 0px;
        margin: 20px auto;
    }
}


/*--- form ----------------------------------------------------------- */
form {
    margin: 0;
    padding: 0;
    font-size: 13px;
}
fieldset {
    padding: 3px;
    border: none;
}
legend {
    padding: 0 10px;
    background-color: #fff;
}
input, textarea {
    padding: 5px 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #ccc;
    background-color: #fff;
    max-width: 360px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
    font-size: 13px;
    box-sizing: border-box;
}
input:hover, textarea:hover {
    border-color: #999
}
a:focus, textarea:focus, input:focus {
    outline: none
}
textarea {
    padding: 3px 10px
}
input.submit {
    padding: 3px 5px;
    font-size: 100%;
    border: none;

}
input.submit:hover {
    border: none
}
input.radio {
    border: none;
    background-color: transparent;
    background-image: none;
}
@media only screen and (max-width: 979px){
    input, textarea {
        width: 95%;
        padding: 5px 3px;
    }
    .mwform-tel-field input {
        width: 50px;
    }
    .mwform-checkbox-field input, input[type="radio"] {
        display: inline-block;
        width: 18px;
    }
    
}


/*--- Table ----------------------------------------------------------- */
table {
    font: 14px/1.4 "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , sans-serif;
    width: 99.9%;
    border-collapse: collapse;
    border-spacing: 0;
    empty-cells: show;
    font-size: 13px;
    margin: 10px auto;
}
th {
    padding: 10px 5px;
    text-align: left;
    font-weight: bold;
}
td {
    padding: 10px 5px;
    text-align: left;
}

/*--- Design Table ----------------------------------------------------------- */
table.design_tbl {
    border-top: 1px dotted #ddd;
    border-bottom: 1px dotted #ddd;
    font-size: 14px;
    margin: 0 auto 10px;
}
.design_tbl th {
    border-bottom: 1px dotted #ddd;
    color: #222;
    background: #fff;
    padding: 13px 15px;
    vertical-align: top;
    font-weight: bold;
    box-sizing: border-box;
}
.design_tbl td {
    border-bottom: 1px dotted #ddd;
    padding: 13px 15px;
    background: #fff;
    color: #333;
    box-sizing: border-box;
}


/* ヘッダー
------------------------------------------------------------*/
#header .site_title{
    position: absolute;
    top: 25px;
    left: 10px;
    padding: 0;
}
#header h1{
    line-height: 1;
    font-size: 10px;
}
#header .h_tel{
    position: absolute;
    top: 18px;
    right: 10px;
    padding: 0;
}
#header .h_btn{
    position: absolute;
    top: 22px;
    right: 340px;
    padding: 0;
}
@media only screen and (max-width: 980px){
#header .site_title {
    position: static;
    float: left;
    margin: 0 17px 0 0;
    padding: 17px 0;
    width: 120px;
}
#header .h_desc{
    position: static;
    float: left;
    padding: 20px 0 0 0;
    font-size: 11px;
}
#header .h_btn, #header .h_tel{
    display: none;
}
}



/* メインフォト
------------------------------------------------------------*/
.mainimg_wrapper {
    width: 100%;
    height: 430px;
    background: url(images/mainphoto.jpg) center center no-repeat;
    margin: 0 auto;
    position: relative;
}
.mainimg_wrapper_inner {
    width: 1100px;
    height: 430px;
    margin: 0 auto;
    position: relative;
}
@media only screen and (max-width: 979px){
    .mainimg_wrapper {
        width: 100%;
        height: 330px;
        background: url(images/mainphoto_s.jpg) center center no-repeat;
        background-size: cover;
        margin-bottom: 20px;
    }
    .mainimg_wrapper_inner {
        width: 100%;
        height: auto;
        position: relative;
    }
}



/* グローバルメニュー
------------------------------------------------------------*/
#mainNav_wrapper {
    clear:both;
    position: absolute;
    width: 1100px;
    height: 48px;
    bottom: 0;
    right: 0;
    margin: 0;
}
#mainNav {
    width: 1100px;
    height: 48px;
    margin: 0;
    padding: 0;
}
#mainNav ul{
    margin:0;
    padding: 0;
}
#mainNav ul li{
    float: right;
    margin:0;
    padding: 0;
}
#mainNav ul li a{
    display: block;
    background: #185442 url(images/hlist.png) 25px center no-repeat;
    color: #fff;
    font-weight: bold;
    height: 48px;
    line-height: 48px;
    text-align: center;
    margin: 0 5px;
    padding: 0 35px 0 50px;
    text-decoration: none;
}
#mainNav ul li a:hover, #mainNav ul li.current a{
    background: #1f6752 url(images/hlist.png) 28px center no-repeat;
    color: #fff;
}

/*--- mobile menu --- */
.uk-parent {
    background: #191919;
}
.uk-offcanvas-bar {
    background: #222;
}
.uk-nav-offcanvas > li > a {
    color: #ccc;
    border-top: 1px solid #292929;
    border-bottom: 1px solid #191919;
    padding: 7px 15px 7px 15px;
    font-size: 92%;
}



/* パンくずリスト
----------------------------------*/
#pankuzu {
    width: 1100px;
    padding: 10px 0 0;
    color: #666;
}
#pankuzu a{
    color: #666;
    text-decoration: none;
}
.pankuzu_inner {
    margin: 0 auto;
}
#pankuzu ul {
    list-style: none;
    padding: 0 15px;
    margin: 0 10px 0 10px;
    font-size:11px;
    text-align: right;
}
#pankuzu ul li {
    display: inline;
    margin: 0;
    padding: 0 5px;
    font-size: 11px;
}
#pankuzu ul li:first-child {
    background:none;
}


/* ページヘッダー
------------------------------------------------------------*/
.page-header {
    width: 100%;
    height: auto;
    background: #f5f5f5 url(images/pagephoto.jpg) center top no-repeat;
    padding: 0;
    margin: 0 auto;
    border: none;
    position: relative;
}
.page-header_inner {
    width: 1100px;
    height: auto;
    margin: 0 auto;
    position: relative;
}
h1.h1page {
    display: block;
    text-align: left;
    background: url(images/hh_bg.png) 15px center no-repeat;
    padding: 70px 20px 70px 55px;
    margin: 0;
    border: none;
    color: #fff;
    font-weight: normal;
    font-size: 30px;
    line-height: 1.2;
    box-sizing: border-box;
}
@media only screen and (max-width: 980px){
    .page-header {
        padding: 10px 0 10px 0;
        margin: 0 auto;
        border: none;
    }
    .page-header_inner {
        width: 100%;
    }
    h1.h1page {
        display: block;
        background: none;
        text-align: left;
        color: #fff;
        font-size: 18px;
        margin: 0 0 0 0;
        padding: 25px 20px;
    }
}



/* TOPページ
------------------------------------------------------------*/
.tp2_title {
    font-size: 20px;
    color: #144335;
    font-weight: bold;
    padding: 5px 0;
}
.tp2_text {
    clear: both;
    font-size: 14px;
}

h3.tp3h3 {
    background: url(images/tp3list.png) left center no-repeat;
    font-size: 20px;
    color: #144335;
    font-weight: bold;
    padding: 15px 0 15px 50px;
    border-bottom: 1px dotted #ddd;
    margin: 10px 0 15px;
}
.box2 {
    background: #fcf7cc;
    padding: 15px 30px 25px;
    margin: 0 0 15px;
    border-radius: 5px;
    font-size: 15px;
}
.box2 h4{
    margin: 0 0 15px;
}
.box3 {
    background: #f5f5f5;
    padding: 15px 30px 25px;
    margin: 30px 0 15px;
    border-radius: 5px;
    font-size: 15px;
}
.box3 h4{
    margin: 0 0 15px;
}
.text-overflow {
    overflow: hidden;
}

.c_title_top {
    font-size: 16px;
    line-height: 1.4;
    padding: 10px 0;
    overflow: hidden;
    border-bottom: 1px dotted #ddd;
}
.c_title_top span{
    display: block;
    font-size: 13px;
    text-decoration: none;
    padding-bottom: 5px;
}
.c_text_top{
    overflow: hidden;
}
.clm_img_top {
    border: 1px solid #eee;
    padding: 4px;
    width: 100px;
    float: left;
    margin-right: 15px;
}
.p_strong {
    font-weight: bold;
    color: #185341;
    font-size: 17px;
}

.text {
    overflow: hidden;
}



/* Page
------------------------------------------------------------*/
.page h2{
    margin: 0 0 20px;
}
h4.h4p {
    clear: both;
    font-weight: bold;
    font-size: 17px;
    color: #28866b;
    background: none;
    margin: 10px 0 15px 0;
    padding: 12px 15px 12px 0;
    border-bottom: 1px dotted #ddd;
}
h4.h4p span{
    display: inline-block;
    font-weight: bold;
    font-size: 15px;
    color: #fff;
    background: #28866b;
    margin: 0 15px 0 0;
    padding: 4px 15px;
}

.qa dl  {
    margin: 0;
    padding: 0;
}
.qa dl dt {
    color: #111;
    padding: 17px 0 10px 55px;
    background:url(images/qaq.png) no-repeat left 14px;
}
.qa dl dd {
    padding: 10px 0 15px 55px;
    border-bottom: 1px dotted #ddd;
    background:url(images/qaa.png) no-repeat left 7px;
}

.con_foot {
    text-align: right;
    padding: 10px 0 10px;
}
.atenabox {
    background: #f7f7f7;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 12px 25px 5px 25px;
    margin-bottom: 20px;
    box-shadow: 0 3px 0 rgba(0,0,0,0.07);
}



/* Single
------------------------------------------------------------*/
.single h2 {
    border-top: 1px dotted #ccc;
    border-bottom: 1px dotted #ccc;
    padding: 15px 5px 15px;
    margin: 25px 0 20px;
    color: #000;
    font-size: 18px;
}
h2.h2single {
    padding: 10px 10px 30px 5px;
    font-size: 28px;
    margin: 0 5px;
    font-weight: 500;
    color: #000;
    border: none;
    border-bottom: 1px solid #ddd;
    border-top: none;
}
h2.h2single a{
    color: #185341;
    text-decoration: none;
}
.sin_desc {
    background: #f5f5f5;
    border-bottom: 1px solid #eee;
    text-align: right;
    padding: 5px 15px;
    margin: 0 5px 25px;
    color: #666;
    font-size: 13px;
}
.s_date {
    padding: 0;
    margin: 0 0 0 0;
    font-size: 12px;
}
.addtoany_content {
    clear: both;
    margin: 30px 0 10px !important;
}
@media only screen and (max-width: 979px){
h2.h2single {
    padding: 25px 10px;
    font-size: 22px;
}
}


/* Archive
------------------------------------------------------------*/
.a_date {
    margin-right: 25px;
    font-size: 13px;
    color: #555;
}
.cat_name {
    display: inline-block;
    background: #49937f;
    color: #fff;
    margin: 0 5px 0 25px;
    width: 80px;
    text-align: center;
    padding: 2px 0;
    font-size: 11px;
}
@media only screen and (max-width: 979px){
.a_date {
    display: block;
    margin: 0;
}
}


/* contact
--------------------------------------------------------------------*/
table.con_tbl {
    border-top: 1px dotted #bbb;
    border-bottom: 1px dotted #bbb;
    font-size: 13px;
    margin: 5px auto 10px;
}
.con_tbl th {
    border-right: 1px dotted #bbb;
    border-bottom: 1px dotted #bbb;
    color: #000;
    background: #f7f7f7;
    padding: 13px 7px 13px 12px;
    vertical-align: middle;
    font-size: 15px;
    width: 33%;
    box-sizing: border-box;
}
.con_tbl td {
    border-bottom: 1px dotted #bbb;
    padding: 13px 12px 13px 12px;
    background: #fff;
    color: #000;
    font-size: 15px;
    box-sizing: border-box;
}
.con_tbl td.tbltitle {
    background: #333;
    padding: 13px 12px;
    color: #fff;
    font-weight: bold;
    font-size: 15px;
}
.hissu {
    display: inline-block;
    font-size: 10px;
    background: #c40026;
    color: #fff;
    padding: 2px 3px;
    margin: 0 3px;
    line-height: 1;
}
.horizontal-item {
    margin-right: 10px;
}
.mwform-file-delete {
    display: inline-block;
    background: #aaa;
    color: #fff;
    font-weight: bold;
    border-radius: 18px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    text-align: center;
    margin-left: 7px;
}
.soushinbtn {
    text-align: center;
    margin: 25px 0 10px;
}
.soushinbtn input{
    display: inline-block;
    margin: 5px 10px 5px;
    padding: 13px 35px;
    background: #28866b;
    color: #fff;
    font-size: 16px;
    border: none;
    cursor: pointer;
    border-radius: 3px;
    font-weight: bold;
}
.soushinbtn input:hover{
    background: #185442;
    border: none;
}
.descr{
    display: block;
    margin-top: 5px;
    font-size: 13px;
    color: #666;
}
.mw_wp_form_confirm .descr, .mw_wp_form_confirm a.con_priv{
    display: none;
}
.mw_wp_form_confirm .descr2{
    display: none;
}
.mw_wp_form_confirm .honyaku_tbl, .mw_wp_form_confirm .tsuuyaku_tbl, .mw_wp_form_confirm .other_tbl {
    display: table;
}
span.error {
    display: block;
    color: #ce4c60;
    padding: 0;
    border-radius: 5px;
    margin-top: 7px;
    font-size: 14px;
    font-weight: bold;
}
.mwform_example {
    display: block;
    margin-top: 5px;
}
.mw_wp_form_preview .mwform_example {
    display: none;
}
@media only screen and (max-width: 980px){
    table.con_tbl {
        width: 100%;
        border-bottom: none;
    } 
    .con_tbl th {
        display: block;
        width: auto;
        border-right: none;
        padding: 10px 7px;
    }
    .con_tbl td {
        display: block;
        width: auto;
        padding: 10px 7px;
    }
}


/* WP-pagenavi カスタム
------------------------------------------------------------*/
.wp-pagenavi {
    display: block;
    padding: 20px 0;
    clear: both;
    color: #666;
    font-size: 14px;
}
.wp-pagenavi a, .wp-pagenavi span {
    display: inline-block;
    float: left;
    text-align: center;
    min-width: 22px;
    height: 22px;
    line-height: 22px;
    text-decoration: none !important;;
    border: 1px solid #ddd !important;
    padding: 3px 5px !important;
    margin: 3px !important;
    border-radius: 0;
    color: #999;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current {
    border: 1px solid #185442 !important;
    background: #185442 !important;
    color: #fff !important;
}


/* サイドバー
------------------------------------------------------------*/
.sidenav h6 {
    display: block;
    background: #fff;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 18px;
    padding: 10px 2px 17px;
    color: #000;
    font-weight: bold;
    border: none;
    border-bottom: 3px solid #185442;
}

.side_b_box {
    border: 1px solid #eae8d6;
    border-top: none;
    padding: 5px 10px 10px 10px;
    background: #fff;
}
.c_title {
    font-size: 14px;
    line-height: 1.3;
    padding: 10px 0;
    overflow: hidden;
    border-bottom: 1px dotted #ddd;
}
.c_title span{
    display: block;
    font-size: 12px;
    text-decoration: none;
    padding-bottom: 5px;
}
.c_text{
    overflow: hidden;
}
img.clm_img {
    width: 75px;
    float: left;
    margin-right: 15px;
}


/**** blog ****/
.sideblog {
    margin: 0 0 40px 0;
}
.sideblog h6{
    margin-top: 0;
}
.sideblog ul{
    margin: 5px;
    padding: 0;
}
h6.blogh6 {
    display: block;
    margin-top: 10px;
    margin-bottom: 0;
    background: none;
    font-size: 14px;
    text-align: left;
    padding: 10px 2px 6px;
    color: #292929;
    border: none;
    border-bottom: 2px solid #ddd;
    font-weight: bold;
}
li.cat-item {
    font-size: 13px;
}
.side_arc {
    margin: 10px 5px;
}
.side_box {
    font-size: 13px;
    padding: 15px 20px;
    background: #f2efea;
    border-radius: 5px;
    margin-bottom: 30px;
}



/* フッター
------------------------------------------------------------*/
#footer_contact{
    clear:both;
    width: 100%;
    margin: 40px auto 0;
    background: #edf3f1;
    padding: 0;
    box-sizing: border-box;
    text-align: center;
    position: relative;
}
.footer_contact_inner{
    width: 1100px;
    margin: 0 auto;
    display: table;
    padding: 0;
    text-align: center;
}
.footer_contact_l{
    display: table-cell;
    width: 30%;
    margin: 0;
    padding: 25px 0;
    box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
}
.footer_contact_c{
    display: table-cell;
    width: 35%;
    margin: 0;
    padding: 25px 0;
    box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
}
.footer_contact_r{
    display: table-cell;
    width: 35%;
    margin: 0;
    padding: 25px 0;
    box-sizing: border-box;
    text-align: center;
    vertical-align: middle;
}

#footer{
    clear:both;
    width: 100%;
    margin: 0 auto;
    padding: 15px 0 0;
}
#footer ul{
    margin: 0;
    padding: 5px 20px;
    text-align: center;
}
#footer ul li{
    list-style: none;
    display: inline;
    padding: 2px 0;
    margin: 0 10px;
}
#footer ul li a{
    font-size: 13px;
}

#sp_footer {
    width: 100%;
    background: rgba(10,10,10,0.9);
    position: fixed;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    z-index: 2;
}
a.sp_footer_inner {
    display: block;
    color: #fff;
    padding: 7px 10px 5px;
    margin: 0;
    font-size: 24px;
    line-height: 1.4;
    text-align: center;
}
#pageTop {
    display: none;
    position: fixed;
    margin: 0;
    bottom: 0;
    right: 10px;
    width:45px;
    height:45px;
    line-height: 40px;
    text-align: center;
    z-index: 1;
}
#pageTop a {
    display: block;
    font-size: 20px;
    background: #288e70;
    color: #fff;
    width:45px;
    height:45px;
}
#pageTop a:hover{
    background: #30aa84;
}

#copyright_wrapper{
    width: 100%;
    background: #185442;
    margin-top: 20px;
}
#copyright{
    display: block;
    text-decoration: none;
    color: #fff;
    padding: 12px 0;
    text-align:center;
    font-size:12px;
    margin: 0;
}
@media only screen and (max-width: 980px){
#footer_contact{
    clear:both;
    width: 100%;
    height: auto;
    padding: 20px 0;
    box-sizing: border-box;
    text-align: center;
    position: relative;
}
.footer_contact_inner{
    width: 100%;
    margin: 0 auto;
    display: block;
    padding: 0;
    text-align: center;
}
.footer_contact_l{
    display: none;
}
.footer_contact_c ,.footer_contact_r{
    position: static;
    display: block;
    width: 100%;
    margin: 0;
    padding: 20px 30px;
}
    
#footer ul{
    text-align: left;
    padding: 0;
    margin: 0;
}
#footer ul li{
    list-style: none;
    display: block;
    padding: 2px 0 2px 8px;
    margin-right: 0;
}
#footer ul li a{
    display: block;
    padding:3px 10px;
}
}




/* 980px以下
------------------------------------------------------------*/
@media only screen and (max-width: 980px){
    body {
        background: #fff;
    }
    #wrapper, #header, #content_1col {
        width:100%; 
        background: #fff;
        padding: 0;
    }
    .inner {
        width:92%; 
        margin: 0 auto; 
        padding: 0;
    }
    
    #header {
        width: 100%; 
        height: auto;
    }
    .navbox {
        display: inline-block;
        position: absolute;
        right: 12px;
        top: 12px;
    }
    .navbox a{
        font-size: 36px;
        color: #1b5a47;
    }

    #pankuzu {display: none;}
    #content{
        clear:both;
        width:100%;
        float:none;
        margin:0 auto;
        padding:0;
        border: none;
    }
    .post{
        clear:both;
        margin: 0 auto 0;
        padding: 30px 10px 10px;
        box-shadow: none;
    }
    .single .post {
        padding: 0 10px 10px;
    }
    #sidebar{
        float: none;
        clear:both;
        width:90%;
        margin: 30px auto;
        padding:0;
    }
    #footer {
        width:100%;
        margin-top: 10px;
    }
    #footer_contact {
        width:100%;
        margin-top: 10px;
    }
    .sp_none {
        display: none;
    }
}




/* ユーティリティー
------------------------------------------------------------*/
/**** clearfix ****/
.clearfix:after {content: "."; display: block; height: 0; line-height: 0; clear: both; visibility: hidden;}
.clearfix { display: inline-block; }
*+html .clearfix { height: 1%; }
* html .clearfix { height: 1%; }
.clearfix {display: block;}

/**** font size ****/
.font10 {font-size: 10px}
.font11 {font-size: 11px}
.font12 {font-size: 12px}
.font13 {font-size: 13px}
.font14 {font-size: 14px}
.font15 {font-size: 15px}
.font16 {font-size: 16px}
.font17 {font-size: 17px}
.font18 {font-size: 18px}
.font20 {font-size: 20px}
.font24 {font-size: 24px}
.font28 {font-size: 28px}
.font36 {font-size: 36px}
.font40 {font-size: 40px}
.font50 {font-size: 50px}
.font60 {font-size: 60px}
.font80 {font-size: 80px}
.font100 {font-size: 100px}

/**** font weight ****/
.bold {font-weight: bold}
.normal {font-weight: normal}

/**** font color****/
.font-red {color: #ce300f}
.font-pink {color: #d16775}
.font-orange {color: #ffc114}
.font-sky {color: #b0e0e1}
.font-green {color: #2ea341}
.font-mosgreen {color: #00a84c}
.font-green2 {color: #75ba36}
.font-green3 {color: #3d744c}
.font-gray {color: #999}
.font-black {color: #444}
.font-white {color: #fff}

/**** align ****/
.a_center {text-align: center; margin-left: auto; margin-right: auto;}
.a_left {text-align: left;}
.a_right {text-align: right;}

/**** float ****/
.fl_l {float: left}
.fl_r {float: right}
.fl_clear {clear: both}

/**** margin ****/
/* 全体 */
.mg5 {margin: 5px}
.mg10 {margin: 10px}
.mg15 {margin: 15px}
.mg20 {margin: 20px}
.mg30 {margin: 30px}
/* 上下 */
.mgtb5 {margin-top: 5px; margin-bottom: 5px;}
.mgtb10 {margin-top: 10px; margin-bottom: 10px;}
.mgtb15 {margin-top: 15px; margin-bottom: 15px;}
.mgtb20 {margin-top: 20px; margin-bottom: 20px;}
.mgtb30 {margin-top: 30px; margin-bottom: 30px;}
.mgtb40 {margin-top: 40px; margin-bottom: 40px;}
.mgtb50 {margin-top: 50px; margin-bottom: 50px;}
/* 上 */
.mgt5 {margin-top: 5px}
.mgt10 {margin-top: 10px}
.mgt15 {margin-top: 15px}
.mgt20 {margin-top: 20px}
.mgt30 {margin-top: 30px}
.mgt40 {margin-top: 40px}
.mgt50 {margin-top: 50px}
/* 下 */
.mgb5 {margin-bottom: 5px}
.mgb10 {margin-bottom: 10px}
.mgb15 {margin-bottom: 15px}
.mgb20 {margin-bottom: 20px}
.mgb30 {margin-bottom: 30px}
.mgb40 {margin-bottom: 40px}
.mgb50 {margin-bottom: 50px}
.mgb60 {margin-bottom: 60px}
.mgb70 {margin-bottom: 70px}
/* 左 */
.mgl5 {margin-left: 5px}
.mgl10 {margin-left: 10px}
.mgl15 {margin-left: 15px}
.mgl20 {margin-left: 20px}
.mgl30 {margin-left: 30px}
.mgl40 {margin-left: 40px}
.mgl50 {margin-left: 50px}
.mgl70 {margin-left: 70px}
/* 右 */
.mgr5 {margin-right: 5px}
.mgr8 {margin-right: 8px}
.mgr10 {margin-right: 10px}
.mgr15 {margin-right: 15px}
.mgr20 {margin-right: 20px}
.mgr30 {margin-right: 30px}
.mgr40 {margin-right: 40px}
.mgr50 {margin-right: 50px}
.mgr70 {margin-right: 70px}
/* 左右 */
.mglr5 {margin-left: 5px; margin-right: 5px}
.mglr10 {margin-left: 10px; margin-right: 10px}
.mglr15 {margin-left: 15px; margin-right: 15px}
.mglr20 {margin-left: 20px; margin-right: 20px}
.mglr30 {margin-left: 30px; margin-right: 30px}

/**** padding ****/
/* 全体 */
.pd3 {padding: 3px;}
.pd5 {padding: 5px;}
.pd10 {padding: 10px;}
.pd15 {padding: 15px;}
.pd20 {padding: 20px;}
.pd30 {padding: 30px;}
.pd40 {padding: 40px;}
/* 上下 */
.pdtb5 {padding-top: 5px; padding-bottom: 5px;}
.pdtb10 {padding-top: 10px; padding-bottom: 10px;}
.pdtb15 {padding-top: 15px; padding-bottom: 15px;}
.pdtb20 {padding-top: 20px; padding-bottom: 20px;}
.pdtb30 {padding-top: 30px; padding-bottom: 30px;}
.pdtb40 {padding-top: 40px; padding-bottom: 40px;}
.pdtb60 {padding-top: 60px; padding-bottom: 60px;}
.pdtb100 {padding-top: 100px; padding-bottom: 100px;}
/* 上 */
.pdt3 {padding-top: 3px;}
.pdt5 {padding-top: 5px;}
.pdt10 {padding-top: 10px;}
.pdt15 {padding-top: 15px;}
.pdt20 {padding-top: 20px;}
.pdt30 {padding-top: 30px;}
.pdt40 {padding-top: 40px;}
/* 下 */
.pdb5 {padding-bottom: 5px;}
.pdb10 {padding-bottom: 10px;}
.pdb15 {padding-bottom: 15px;}
.pdb20 {padding-bottom: 20px;}
.pdb30 {padding-bottom: 30px;}
.pdb40 {padding-bottom: 40px;}
.pdb50 {padding-bottom: 50px;}
.pdb60 {padding-bottom: 60px;}
.pdb70 {padding-bottom: 70px;}
/* 左右 */
.pdlr5 {padding-left: 5px; padding-right: 5px;}
.pdlr10 {padding-left: 10px; padding-right: 10px;}
.pdlr15 {padding-left: 15px; padding-right: 15px;}
.pdlr20 {padding-left: 20px; padding-right: 20px;}
.pdlr25 {padding-left: 25px; padding-right: 25px;}
.pdlr30 {padding-left: 30px; padding-right: 30px;}
.pdlr40 {padding-left: 40px; padding-right: 40px;}
/* 左 */
.pdl5 {padding-left: 5px;}
.pdl10 {padding-left: 10px;}
.pdl15 {padding-left: 15px;}
.pdl20 {padding-left: 20px;}
.pdl30 {padding-left: 30px;}
/* 右 */
.pdr5 {padding-right: 5px;}
.pdr10 {padding-right: 10px;}
.pdr15 {padding-right: 15px;}
.pdr20 {padding-right: 20px;}
.pdr30 {padding-right: 30px;}
/* 左右 */
.pdlr5 {padding-left: 5px; padding-right: 5px}
.pdlr10 {padding-left: 10px; padding-right: 10px}
.pdlr15 {padding-left: 15px; padding-right: 15px}
.pdlr20 {padding-left: 20px; padding-right: 20px}
.pdlr30 {padding-left: 30px; padding-right: 30px}