@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

/* ↓最大568px スマホ限定*/
@media screen and (max-width: 568px) {
    .mobileSkin iframe {
        -webkit-overflow-scrolling: touch;
        overflow-x: auto;
    }
    #jform_articletext_ifr {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        width: 100% !important;
    }
    #jform_articletext_tbl {
        max-height: 200px !important;
    }

    body{
        min-width: 100%; //ウインドウ縮小対策
    }

    /* ↑最大568px スマホ限定*/
}

@media screen and (min-width: 569px)  , print{
    body{
        min-width: 1200px; //ウインドウ縮小対策
    }
    /*モジュール編集オフセット*/
    .btn.jmodedit{ 
        right: -50px !important;
        width:15px !important;
    }
}
body.component {
    box-sizing: border-box;
    min-width: auto !important;
}
#editor-xtd-buttons a {
    float: left;
    margin-bottom: 6px;
}

/* ipad対策*/
@media screen and(max-width:980px) {
    #flexslider {
        overflow: hidden;
    }
    /* ipad対策ここまで*/
}


/* ↓PC・スマホ共通デザイン */

/* 見出し */

.kiji-midashi {
    border-left: 4px solid #3C8A96;
    color: #3C8A96;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.5em;
    margin: 20px 0 10px;
    padding: 5px 0 5px 10px;
}

.kiji-midashi-2 {
    background-color: #f7f7f7;
    border-color: #ccc #ccc #114f75;
    border-style: solid;
    border-width: 1px 1px 3px;
    font-size: 14px;
    font-weight: bold;
    margin: 20px 0 10px;
    padding: 7px 10px;
}

.kiji-midashi-3 {
    border-bottom: 1px dotted #444444;
    margin: 15px 0 10px;
    padding: 5px 0;
}

.text-highlight {
    background: none repeat scroll 0 0 #ffffaa;
    font-size: 14px;
    margin: 10px 0;
    padding: 7px;
}

.highlight-green {
    color: #fff;
    background: #48691b;
    font-size: 14px;
    margin: 10px 0;
    padding: 7px;
}

.highlight-light {
    color: #000;
    background: #e5e5e5;
    font-size: 14px;
    margin: 10px 0;
    padding: 7px;
}

.highlight-dark {
    color: #fff;
    background: #595959;
    font-size: 14px;
    margin: 10px 0;
    padding: 7px;
}

.news-title {
    background-color: #E5E2D3;
    color: #444444;
    font-size: 14px;
    margin: 15px 0 0;
    padding: 7px 10px;
}

.news-box {
    border: 1px solid #CCCCCC;
    max-height: 150px;
    overflow: auto;
    padding: 7px;
}

.news-box table {
    width: 100%;
}

.news-box table th {
    border-bottom: 1px dotted #ccc;
    font-weight: normal;
    padding: 5px;
    text-align: left;
    vertical-align: top;
    width: 80px;
    font-size: 13px;
}

.news-box table th:before,
.news-box ul li:before {
    color: #999;
    content: "\f0da";
    font-family: FontAwesome;
    margin-right: 5px;
}

.news-box table td {
    border-bottom: 1px dotted #ccc;
    padding: 5px;
    vertical-align: top;
}
.news-box ul {
    margin: 0;
    padding: 0;
}

.news-box ul li {
    border-bottom: 1px dotted #cccccc;
    color: #333333;
    font-size: 1em;
    list-style: none outside none;
    margin: 0 0 5px;
    padding: 0 0 5px 10px;
}

.news-box .mod-articles-category-date {
    margin-right: 10px;
}

.news-box .mod-articles-category-title {
    font-weight: bold;
}

.news-box a.catid-85:before {
    font-family: FontAwesome;
    content: "\f1ea";
    color: #3D9675;
}

.news-box a.catid-84:before {
    font-family: FontAwesome;
    content: "\f1ea";
    color: #fc6767;
}

body,
td,
p {
    font-family:'Noto Sans JP', sans-serif, 'meiryo', 'メイリオ', 'ms pgothic', 'ms pゴシック', sans-serif;
    font-size: 16px;
    line-height: 1.7;
color:#4a4a4a;
}

a {
    color:#4a4a4a;
    text-decoration: none;
}

a:hover {color:#37a824;
    text-decoration: underline
}

a:hover img {
    opacity: 0.8;
    -webkit-opacity: 0.8;
    -moz-opacity: 0.8;
    filter: alpha(opacity=80);
    /* IE lt 8 */
    -ms-filter: “alpha(opacity=80)”;
    /* IE 8 */
}

a img {
    -webkit-transition: opacity 0.2s ease-out;
    -moz-transition: opacity 0.2s ease-out;
    -ms-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block
}

ol,
ul {
    margin: 0 0 0 20px
}

ul.unstyled {
    list-style: none;
    margin: 0;
    padding: 0;
}

blockquote,
q {
    quotes: none
}

:focus {
    outline: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}
/*	Grid  */

.container {
    width: 100%;
    max-width: 100%;
    min-width: 220px;
    margin: 0 auto;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: border-box;
}

#post .container {
    width: auto;
    overflow: hidden;
}

.icon-remove:before {
    content: "\f00d";
    font-family: FontAwesome;
    font-style: normal;
}

.container .row,
.col {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.row {
    margin-bottom: 1.5em
}

.col {
    display: block;
    float: left;
    width: 100%;
}

.col:first-child {
    margin-left: 0
}

.row:after,
.col:after,
.clr:after,
.group:after {
    display: block;
    height: 0;
    clear: both;
    content: ".";
    visibility: hidden;
}


/* grid */

.col {
    margin-left: 2%
}

.span_1 {
    width: 6.5%
}

.span_2 {
    width: 15.0%
}

.span_3 {
    width: 23.5%
}

.span_4 {
    width: 32.0%
}

.span_5 {
    width: 40.5%
}

.span_6 {
    width: 49.0%
}

.span_7 {
    width: 57.5%
}

.span_8 {
    width: 66.0%
}

.span_9 {
    width: 74.5%
}

.span_10 {
    width: 83.0%
}

.span_11 {
    width: 91.5%
}

.span_12 {
    width: 100%
}

#wrapper {
    padding: 0;
}
.count-1 {
    clear: both;
    margin-left: 0;
}
#wrapper {
    width: 100%;
    margin: 0 auto;
    max-width: 100%;
    padding: 0;
    position: relative;
}
#comp-wrap {
    padding: 0;
    position: relative;
}
.full {
    padding: 0;
    margin: 0;
    clear: both
}
.contact a {
    text-decoration: none
}

/* Article Columns */
.column-1,
.column-2,
.column-3,
.column-4 {
    position: relative;
    margin: 0;
    padding: 0;
}

/* Content styles */
#archive {
    padding: 0;
    margin: 0;
}
.archive {
    padding: 0;
}
.archive .article-count {
    color: #999;
}
.items-leading {
    position: relative;
    clear: both;
    margin: 0 0 20px 0;
    padding: 0;
}
.leading {
    margin: 0 0 20px 0;
    position: relative;
}
.items-row,
.item-page,
.contact {
    position: relative;
}
.item-separator {
    margin-bottom: 0;
}
.item-page {
    position: relative
}
.item-page-title {
margin-bottom:1em; font-weight:500;
position: relative;
padding-bottom: .5em;
border-bottom: 3px solid #eee;
}
.item-page-title:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 2;
  content: '';
  width: 10%;
  height: 3px;
  background-color: #37a824;
}
.item-page-title,
.item-page-title a,
.contact-name {
    text-decoration: none;
    font-size: 22px;
}
.contact h2 {
    margin: 0 0 20px 0;
}
.contact .current {
    margin: 0;
    padding: 0;
}
dl.tabs {
    display: block;
    clear: both;
    border-bottom: 1px solid #ddd;
}
dl dt.tabs {
    display: inline-block;
    margin: 0 0 -1px 0
}
dt.tabs h3 {
    margin: 0 2px 5px 0;
}
dt.tabs h3 a {
    padding: 8px 8px 3px 8px;
    line-height: 20px;
    border: 1px solid transparent;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
    cursor: pointer;
    text-decoration: none
}
dt.tabs.closed h3 a {
    border-color: #eeeeee #eeeeee #dddddd;
}
dt.tabs h3 a,
dt.tabs h3.open a {
    color: #555555;
    background-color: #ffffff;
    border: 1px solid #ddd;
    border-bottom-color: transparent;
}
dd.tabs {
    padding: 10px 20px
}
.jicons-icons {
    float: left;
    margin: 0 10px 0 0;
    padding: 5px 0 0 0
}
h1.componentheading {
    margin: 0 0 10px 0;
    padding: 0;
    position: relative;
    color: #333;
}
.buttons {
    clear: both;
    display: block;
    overflow: hidden;
}
ul.button-icons {
    float: right;
    margin: 0;
    overflow: hidden;
    padding: 0;
}
ul.button-icons li {
    display: inline-block
}
ul.button-icons li.edit-icon,
ul.button-icons li.print-icon,
ul.button-icons li.email-icon {
    margin: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    float: left;
    overflow: hidden;
    line-height: 20px;
}
.iteminfo,
.content_rating {
    background-color: #f7f7f7;
    display: block;
    font-size: 11px;
    margin: 0 0 5px;
    padding: 3px 10px;
}
.content_rating p {
    margin: 0;
    padding: 0;
}
.iteminfo span {
    margin: 0 10px 0 0;
}
.iteminfo .category,
.iteminfo .sub-category,
.iteminfo .create,
.iteminfo .modified,
.iteminfo .published,
.iteminfo .createdby,
.iteminfo .hits {
    display: inline-block;
    line-height: 20px!important;
}
.iteminfo .createdby {
    font-weight: bold;
}
.items-more {
    clear: both;
}
h3.items-more {
    font-size: 14px;
    padding: 0;
    margin: 0;
}
.items-more ol {
    margin: 0 0 0 30px;
    padding: 0
}
th.item-title,
th.list-title {
    font-size: 15px;
    font-weight: bold;
    text-align: left;
}

/* Commons */
.clear {
    clear: both
}
blockquote {
    position: relative;
    margin: 30px 0;
    padding: 20px;
    background-color: #e9e9e9;
    color: #505050;
    border-left: 5px solid #ddd;
    font-size: 16px;
    font-style: italic;
    font-family: 'Georgia', sans-serif;
    line-height: 1.8em;
}
pre {
    margin: 30px 0;
    padding: 20px;
    background-color: #e9e9e9;
    color: #505050;
    border-left: 5px solid #ddd;
    font-size: 15px;
    font-family: 'Georgia', sans-serif;
    line-height: 1.8em;
    white-space: pre-wrap;
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    word-wrap: break-word;
}
address {
    margin: 20px 0;
    letter-spacing: 1px;
}

/* Typography */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    margin: 0 0 10px;
}
h1 {
    font-size: 11px;
    font-weight: normal;
    margin: 0;
}
h2 {
    font-size: 22px
}


h3 {
    font-size: 18px
}
h4 {
    font-size: 16px
}
h5 {
    font-size: 14px
}
h6 {
    font-size: 12px
}
.entry p:last-child {
    margin: 0
}
.entry ul {
    margin: 30px 0 30px 20px
}
.entry ul li,
.entry ol li {
    margin: 0 0 5px
}
.entry ol {
    margin: 30px 0 30px 25px
}
.entry ol {
    list-style: decimal
}
.entry ul {
    list-style: disc
}
.entry h2,
.entry h3,
.entry h4,
.entry h5,
.entry h6 {
    margin: 40px 0 20px
}
p {
    margin: 0;
}
p.lead {
    font-size: 21px;
    line-height: 27px;
}
em {
    font-style: italic
}
strong {
    font-weight: bold
}
small {
    font-size: 80%
}
hr {
    height: 0;
    margin: 10px 0;
    border: solid #eee;
    border-width: 1px 0 0;
    clear: both;
}
hr#system-readmore {
    background-color: #f473ab;
    border: medium none;
    height: 22px;
    text-align: center;
}
hr#system-readmore::before {
    color: #fff;
    content: "▼続きを読む▼";
}

a {
    outline: 0;
    -webkit-transition: all 0.15s ease;
    -moz-transition: all 0.15s ease;
    -o-transition: all 0.15s ease;
    transition: all 0.15s ease
}
a:hover {
    text-decoration: underline;
}

a[href$=".pdf"]::before {   
    content:"\f1c1";
    font-family: FontAwesome;
    color: #ee0822; margin-right:.5em;
}  

/* Header  */
#header-wrap {
}
#social {
    display: block;
    float: right
}
#social a.social-icon {
    display: inline-block;
    margin-left: 2px;
    padding: 0;
    width: 32px;
    height: 32px;
}
#social a.social_1 {
    background: url(../images/social/facebook.png) 0 0 no-repeat;
}
#social a.social_2 {
    background: url(../images/social/twitter.png) 0 0 no-repeat;
}
#social a.social_3 {
    background: url(../images/social/google.png) 0 0 no-repeat;
}
#social a.social_4 {
    background: url(../images/social/youtube.png) 0 0 no-repeat;
}
#social a.social_5 {
    background: url(../images/social/dribbble.png) 0 0 no-repeat;
}
#social a.social_6 {
    background: url(../images/social/flickr.png) 0 0 no-repeat;
}
#social a.social_7 {
    background: url(../images/social/pinterest.png) 0 0 no-repeat;
}
#social a.social_8 {
    background: url(../images/social/picasa.png) 0 0 no-repeat;
}
#social a.social_9 {
    background: url(../images/social/linkedin.png) 0 0 no-repeat;
}
#social a.social_10 {
    background: url(../images/social/reddit.png) 0 0 no-repeat;
}
ul.tags {
    border-top: 1px dotted #ddd;
    margin: 10px 0;
    padding: 10px 0;
}
ul.tags li {
    display: inline-block;
    list-style: outside none none;
}
ul.tags li a {
    padding: 4px 7px;
}
.tag-category form > ul {
    margin: 0;
    padding: 0;
}
.tag-category form > ul li {
    list-style: outside none none;
}

/* Navigation */
#navbar-wrap {position:absolute; top:80px; left:0; width:100%; height:50px; z-index:100; min-width:1200px;}
#navbar {
    position: relative;
}
#navbar.row {
    margin-bottom: 0
}
#navigation .menu {
    clear: both;
    list-style: none outside none;
    margin: 0;
    padding: 0;
width:1100px; margin:0 auto;
}
#navigation .menu .icon-angle-right {
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -6px;
    color: #aaa;
    font-size: 12px;
}
#navigation .menu > li {
    display: block;
    float: left;
border-right:1px solid rgba(0,0,0,.3);
}
#navigation .menu > li:first-child {border-left:1px solid rgba(0,0,0,.3);}
#navigation .menu > li ul {
    padding: 0;
}
#navigation .menu ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin: 10px 0 0 0;
    /*IE6 only*/
    
    _margin: 0;
    nowhitespace: afterproperty;
    opacity: 0;
    transition: all .2s ease-in-out;
    visibility: hidden;
    z-index: 99;
}
#navigation .menu ul ul {
    left: 100%;
    top: 0;
}
#navigation .menu ul ul li {
    width: 100%
}
#navigation .menu li {
    position: relative;
    list-style: none
}
#navigation .menu li:hover > ul {
    margin: 0;
    opacity: 1;
    visibility: visible;
}
#navigation .menu a {
    display: block;
    position: relative;
}
span.image-title {
    display: none;
}


/* current item */
#navigation .menu > li > a:hover,
#navigation .menu > li.sfHover > a,
#navigation .menu > .active > a,
#navigation .active > a:hover,
#navigation .active > a:hover {
    color: #aeea00;
}
#navigation .menu > .active > a,
#navigation li.active > a {
    /*font-weight: bold;*/
    color: #aeea00
}

#navigation .menu a {
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    padding: 0; /*line-height:50px;*/
    font-size: 16px;
}
#navigation .menu a:hover,
#navigation .menu a:focus {
    background-color: inherit;
}
#navigation .menu li > span.separator {
    cursor: default;
}
#navigation .menu li > span {
    display: block;
    padding: 0; /*line-height:50px;*/ text-align:center;
    font-size: 16px;
}

/* 画像メニューのスタイル */
#navigation ul#img-menu > li > a {
    padding: 0;
}
#navigation ul#img-menu li > span {
    padding: 0;
}

/* drop-down styles */
#navigation .menu ul {
    border-top: none;
    background: rgba(0,0,0,.7);
    border: 1px solid #222;
    min-width: 230px;
}
#navigation .menu li:hover ul {
    margin-top: 0;
}
#navigation .menu ul ul.sub-menu {
    margin-top: -1px;
    margin-left: 1px;
}
#navigation .menu ul li {
    border-bottom: 1px solid #222
}
#navigation .menu ul li:first-child {}
#navigation .menu ul li:last-child {
    border: 0
}
#navigation .menu ul li > a:hover {
    color: #aeea00
}
#navigation .menu ul a {
    display: block;
    height: auto;
    margin: 0px;
    padding: .8em 15px;
    border: 0px;
    line-height: 20px; color:#fff; text-align:left;
}

#navigation .menu > .active > a,
#navigation li.active > a {
    /*font-weight: bold;*/
    color: #aeea00
}

#navigation .selector {
    display: none
}
#navigation ul.sub-menu .icon-angle-down:before {
    content: "\f105"!important;
}
#navigation ul.sub-menu a {
    font-size: 12px;
}
#navigation i {
    text-align: right
}
#menu-icon {
    display: none;
}

/* slide　*/
#slide-wrap{
    min-height: 290px;
}
.slide-show {
    margin: 0 auto;
    width: 980px;
    min-height: 290px;
}


/* Module Classes */
ul.categories-module {
    margin: 0;
    padding:0;
}
#sidebar .categories-module li {
    list-style: outside none none;
    margin: 0;
}
#sidebar .categories-module li::before{
    content:"\f101";
    font-family: FontAwesome;
    color: #777;
}

ul.categories-module h4 {
    font-size: 13px;
    font-weight: normal;
    margin: 0;
}
#sidebar .tagspopular {}
#sidebar .tagspopular ul {
    margin: 0;
    padding-left: 15px;
}
#sidebar .tagspopular ul li {
    margin: 0 0 10px;
}
#sidebar .tagspopular ul li a {}

/* light */
.light {
    border: 1px solid #cfcfcf !important;
    background: #F6F6F6 !important;
    color: #555 !important;
}
.light .module-title {
    color: #555 !important;
    background: none!important;
    border-bottom: none!important;
}
.light .module-body {
    border-top: none !important;
}
.light a {
    text-decoration: underline !important;
}
.light a:hover {
    color: #333!important
}

/* normal */
.normal {
    border: 1px solid #46acd1 !important;
    background: #58C0E6!important;
    color: #fff!important;
}
.normal .module-title {
    color: #fff !important;
    background: none!important;
    border-bottom: none!important;
}
.normal .module-body {
    border-top: none !important;
}
.normal a {
    text-decoration: underline !important;
    color: #fff!important
}
.normal a:hover {
    color: #303030!important
}

/* dark */
.dark {
    border: 1px solid #333 !important;
    background: #363636!important;
    color: #fff !important;
}
.dark .module-title {
    color: #fff !important;
    background: none !important;
    border-bottom: none!important;
}
.dark .module-body {
    border-top: none !important;
}
.dark a {
    text-decoration: underline !important;
    color: #58C0E6!important
}
.dark a:hover {
    color: #fff!important
}

/* blank */
.blank {
    border: none!important;
    background: none!important;
    padding: 5px!important;
    -webkit-border-radius: 0!important;
    -moz-border-radius: 0!important;
    -o-border-radius: 0!important;
    border-radius: 0!important;
    box-shadow: none!important;
    -webkit-box-shadow: none!important;
    -moz-box-shadow: none!important;
    -o-box-shadow: none!important
}
.blank .module-title {
    border: none!important;
    padding: 0 0 0 5px!important
}
.light,
.normal,
.dark {
    padding: 10px!important;
}
.light ul.menu li a,
.normal ul.menu li a,
.dark ul.menu li a {
    text-decoration: none!important
}
.light .module-title,
.normal .module-title,
.dark .module-title {
    padding: 0 0 0 5px!important;
    border: none!important;
    line-height: 30px!important;
}
.light .module-body,
.normal .module-body,
.dark .module-body {
    padding: 0 5px !important;
}

/* Page Navigation */
ul.pagenav {
    clear: both;
    display: block;
    padding: 0;
}
ul.pagenav li {
    list-style: none;
}
ul.pagenav li a {
    display: block
}
.pagenav-prev {
    float: left;
}
.pagenav-next {
    float: right
}
#pagination {
    clear: both;
    text-align: center;
    padding: 0;
}

/* Breadcrumbs */
.breadcrumbs {
width:1100px; margin:0 auto 30px;
    padding: 0;
}
.breadcrumbs .icon-angle-right {
    padding: 0 5px
}

/* Sidebar */
#leftbar-w {
    float: left
}
#rightbar-w {
    float: right;
    display: block;
}
#sidebar {
    padding: 30px 0 0;
    position: relative;
}
#sidebar .module {
    margin-bottom: 20px;
    padding: 0px; background:#f7fde5;
}
#sidebar .module-title {
    background:#37a824;
    color: #fff; text-align:center;
    font-size: 16px;
    letter-spacing: 1px;
    padding: .5em;
}
#sidebar h3 {
    margin: 0;
    padding: 0;
}
#rightbar-w .module-title {}
#sidebar .module-body {
    margin: 0;
    padding: 0;
}
#sidebar .module-body p {
    padding: 0;
    margin: 0;
}
#sidebar ul li {
    margin: 0;
    padding: 1em; border-bottom:2px solid #fff;
}

/* Sidebar Menu*/
#sidebar .module ul.menu {
    margin: 0;
    padding: 0;
    list-style: none;
}
#sidebar .module ul.menu li {
    list-style: none;
    margin: 0;
    padding: 0;
    border-bottom: 1px dotted #ced8df
}
#sidebar .module ul.menu li:last-child {
    border-bottom: none
}
#sidebar .module ul.menu li span.separator {
    display: inline-block;
    padding: 7px;
}
#sidebar .module ul.menu li::before{
    content:"\f105";
    font-family: FontAwesome;
    color: #777;
}
#sidebar .module ul.menu li.divider::before{
    content: none;
}

#sidebar .module ul.menu li a{
    display: inline-block;
    margin: 0;
    padding: 7px;
    text-decoration: none;
}
#sidebar .module ul.menu li a:hover{
    text-decoration: underline;
}

/* Sidebar SubMenu*/
#sidebar .module ul.menu li ul {
    margin: 0;
    border-top: 1px dotted #ced8df;
    padding-left: 0;
}
#sidebar .module ul.menu li ul li {
    background: none;
    margin: 0;
    padding: 0 0 0 10px
}
#sidebar .module ul.menu li:last-child,
#sidebar .module ul.menu li ul li:last-child,
#sidebar .module ul.menu li.active ul li:last-child {
    background: none
}
#sidebar .module ul.menu li ul li a:hover {
    border: 0;
}
.module .menu .icon-angle-down:before {
    content: ""!important
}

/* promo and fotter */
#promo-wrap {
    position: relative;
}
#promo {
    padding: 0;
    margin: 0 auto;
    clear: both;
}
#home #promo {
    width: 100%;
    max-width: inherit;
}
#promo .module {
    color: #555;
    margin-bottom: 10px
}
#promo .inner {
    padding: 0 10px;
}
#promo .module-title {
    display: block;
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 1px;
}
#promo h3.module-title {
    margin-bottom: 0;
    padding-bottom: 0;
}
#promo ul {
    margin: 0;
    padding: 0;
}
#promo ul li {
    list-style: none;
}

#promo-page-title {
    background: url(../../../images/top/mainimg.jpg) no-repeat center top/cover;
    margin:0 0 20px;
    padding: 170px 0 20px;
}
#promo-page-title .container{}
#promo-page-title h2 {
    font-size: 26px;
    font-weight: normal;
    margin: 0;
    text-align: center;
}


body#home #promo-page-title{display: none;}

/* User 2 */
#content-bottom {
    clear: both;
}
#footer {
    clear: both;
    margin: 0 auto;
    overflow: hidden;
}
#footer .module {
    margin: 0px
}
#footer .inner {
    padding: 0 10px;
}
#footer .module-title {
    display: block;
    font-size: 16px;
    line-height: 32px;
    letter-spacing: 1px;
}
#footer h3.module-title {
    margin-bottom: 0;
    padding-bottom: 0;
}
#footer .module-body {}
#footer a {}
#footer a:hover {}
/*#footer ul {
    margin: 0;
    padding: 0;
}
#footer ul li {
    list-style: none;
    border-bottom: 1px dotted #ced8df
}
#footer ul li:hover {}
#footer ul li a {
    display: block;
    margin: 0;
    padding: 5px 0 5px 25px;
    background: url(../images/sidebar-li1.png) 5px 50% no-repeat;
    text-decoration: none;
    color: #999;
    font-size: 12px;
    line-height: 15px;
}
#footer ul li a:hover {
    background: url(../images/sidebar-li2.png) 5px 50% no-repeat;
    text-decoration: none;
    color: #58C0E6;
}*/
#footer-content {
    width: 100%;
}
#footer-content td {
    vertical-align: top;
}

/* Search */
input[type="search"] {
    display: block;
    width: 100%;
    padding: 10px 32px 10px 11px;
    color: #202020;
    font-size: 11px;
    -moz-box-sizing: border-box;
    -webkit-appearance: none !important;
    -webkit-box-sizing: border-box;
    background: #fff;
    border: 1px solid #ddd;
    box-sizing: border-box;
}
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none
}
input[type="search"]::-webkit-search-decoration {
    display: none
}
input[type="search"]:focus {
    color: #000;
    outline: none;
}

/* Forms / Inputs / Buttons */
#modlgn-remember {
    float: left;
    width: 20px;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="tel"],
textarea {
    vertical-align: middle;
    display: inline-block;
    max-width: 100%;
    margin-left: 0;
    padding: 8px;
    font-weight: 400;
    background-color: #f7f7f7;
    border: 1px solid #ddd;
    border-radius: 4px 4px 4px 4px;
    box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.030) inset;
}
fieldset.phrases {}
fieldset.phrases .phrases-box {
    margin-bottom: 10px;
}
fieldset.phrases .ordering-box,
fieldset.phrases .form-limit {
    display: inline-block;
}
form input[type="text"]:focus,
form input[type="password"]:focus,
form input[type="email"]:focus,
form input[type="url"]:focus,
form input[type="tel"]:focus,
form textarea:focus {
    border-color: #A0ECFF;
    outline: none;
}
form input[type="button"],
form input[type="submit"],
form button[type="submit"],
form button[type="button"] {}
form .mceLayout button[type="button"] {
    min-height: auto;
}
select {
    background-color: #f7f7f7;
    border-radius: 5px;
    display: inline;
    line-height: 100%;
    margin: 0;
    padding: 3px;
    vertical-align: middle;
    width: auto;
    border: 1px solid #ccc;
}
select[disabled="disabled"],
select.disabled {
    color: #999;
    background: #f5f5f5;
    -moz-box-shadow: inset 0px 0px 2px #ddd;
    -webkit-box-shadow: inset 0px 1px 2px #ddd;
    box-shadow: inset 0px 1px 2px #ddd;
}
.input-medium,
.input-large {
    width: auto !important;
}
.readmore {
    margin: 5px;
    text-align: right;
}

.btn {
    background-color: #f7f7f7;
    border: 1px solid #ccc;
    border-radius: 3px;
    color: #444;
    padding: 4px 7px;
}
.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled] {
    background-color: #e6e6e6;
    *background-color: #d9d9d9;
}
.btn:active,.btn.active {background-color: #cccccc \9;}
.btn:hover,.btn:focus {color: #333;	text-decoration: none;background-position: 0 -15px;	-webkit-transition: background-position .1s linear;	-moz-transition: background-position .1s linear;-o-transition: background-position .1s linear;transition: background-position .1s linear;}
.btn:focus {outline: thin dotted #333;outline: 5px auto -webkit-focus-ring-color;outline-offset: -2px;}
.btn.active,.btn:active {background-image: none;outline: 0;-webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);-moz-box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);}

a.btn-readmore {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    padding: 4px 12px;
    margin-bottom: 0;
    font-size: 13px;
    line-height: 18px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    color: #333;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
    background-color: #f5f5f5;
    background-image: -moz-linear-gradient(top, #fff, #e6e6e6);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e6e6e6));
    background-image: -webkit-linear-gradient(top, #fff, #e6e6e6);
    background-image: -o-linear-gradient(top, #fff, #e6e6e6);
    background-image: linear-gradient(to bottom, #fff, #e6e6e6);
    background-repeat: repeat-x;
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe5e5e5', GradientType=0);
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    *background-color: #e6e6e6;
    filter: progid: DXImageTransform.Microsoft.gradient(enabled=false);
    border: 1px solid #bbb;
    *border: 0;
    border-bottom-color: #a2a2a2;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    *margin-left: .3em;
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05);
}
a.btn-readmore:hover,
a.btn-readmore:focus,
a.btn-readmore:active,
a.btn-readmore.active,
a.btn-readmore.disabled,
a.btn-readmore[disabled] {
    color: #333;
    background-color: #e6e6e6;
    *background-color: #d9d9d9;
}
.system-unpublished {
    background-color: #efefef;
    padding: 5px;
}

/* Mailto */
.mailto {
    background: #fff;
    color: #222;
    padding: 10px;
}

/* Tooltips */
.tip-wrap {
    float: left;
    padding: 8px 35px 8px 14px;
    margin-bottom: 20px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    background-color: #535353;
    border: 1px solid #222;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    color: #fff;
    max-width: 200px;
    text-shadow: 1px 1px #000
}
.tip-title {
    padding: 0;
    margin: 0;
    display: none
}
.tip-text {
    font-size: 100%;
    margin: 0;
}
#topcontrol {
    background: url(../images/arrow_up.png) 50% 50% no-repeat;
    width: 60px;
    height: 60px;
    white-space: nowrap;
    cursor: pointer;
    opacity: 0.7;
    filter: progid: DXImageTransform.Microsoft.Alpha(opacity=70);
    bottom: 20px;
    right: 20px;
    z-index: 999;
}

/* Error */
#error {
    padding: 20px;
    text-align: center
}
#error .error {
    color: #FF0000;
    display: block;
    padding: 0;
    font-size: 140px;
    font-weight: bold;
    line-height: 200px;
}
#error .center {
    width: 400px;
    margin-left: -200px;
    left: 50%;
    position: absolute;
    text-align: center;
    top: 20%
}
#error .error {
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.9), 0 1px 0 rgba(255, 255, 255, 0.7);
}
#error .error > span {
    display: inline-block;
    position: relative;
}
#error .error > span:before {
    content: "";
    position: absolute;
    top: 70%;
    left: -30px;
    right: -30px;
    height: 80px;
    background: url(../images/error.png) no-repeat;
    background-size: 100% 100%;
}
#error ol li {
    text-align: left;
}

/* Offline */
.error-offline .error > span:before {
    top: 65%;
}
.error-offline .message {
    width: 350px;
}

/* Thumbs */
.width-10 {
    width: 10px;
}
.width-20 {
    width: 20px;
}
.width-30 {
    width: 30px;
}
.width-40 {
    width: 40px;
}
.width-50 {
    width: 50px;
}
.width-60 {
    width: 60px;
}
.width-70 {
    width: 70px;
}
.width-80 {
    width: 80px;
}
.width-90 {
    width: 90px;
}
.width-100 {
    width: 100px;
}
.height-10 {
    height: 10px;
}
.height-20 {
    height: 20px;
}
.height-30 {
    height: 30px;
}
.height-40 {
    height: 40px;
}
.height-50 {
    height: 50px;
}
.height-60 {
    height: 60px;
}
.height-70 {
    height: 70px;
}
.height-80 {
    height: 80px;
}
.height-90 {
    height: 90px;
}
.height-100 {
    height: 100px;
}
.thumbnail {
    border: 1px solid #ccc!important;
    max-width: 100%!important;
}
.thumbnail img {
    -moz-opacity: 0.8;
    -webkit-opacity: 0.8;
    opacity: 0.8;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.thumbnail img:hover {
    opacity: 1;
}
.thumbnail.pull-left {
    margin-right: 10px!important
}
.thumbnail.pull-right {
    margin-left: 10px!important
}
.thumbnails {
    margin-left: -20px;
    list-style: none;
    *zoom: 1;
}
.thumbnails:before,
.thumbnails:after {
    display: table;
    content: "";
    line-height: 0;
}
.thumbnails:after {
    clear: both;
}
.thumbnails > li {
    float: left;
    margin-bottom: 18px;
    margin-left: 20px;
}
.thumbnail {
    display: block;
    padding: 4px;
    line-height: 18px;
    border: 1px solid #ddd;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
    -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
a.thumbnail:hover {
    border-color: #08c;
    -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
    -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
    box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
}
.thumbnail > img {
    display: block;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.thumbnail .caption {
    padding: 9px;
    color: #555;
}

/* Footer */
#footer-wrap {
    margin: 80px auto 0;
    position: relative;
}
#message #footer-wrap {margin:0 auto;}

/*#footer-wrap p {
    margin: 0;
    padding: 0;
}*/
#footer-wrap .login {
    margin: 5px;
    text-align: center;
}
#footer-wrap .login a {
    color: #444;
    font-size: 10px;
    line-height: 1;
}
.copyright {
    margin: 0 auto;
    padding: 0 0 5px 0;
}
.copyright a {}
.copy a:hover {}
.business {
    margin: 0 -480px 0 0;
    padding: 0;
    font-size: 10px;
    color: #ccc;
    text-align: right;
    text-shadow: none;
    bottom: 0;
    right: 50%;
    line-height: 10px;
    height: 10px;
    position: absolute;
}

#bottom {
    padding: 7px 0;
background:#f2f2f2;
}
#bottom p {font-size:12px;}

.business a,
.business a:hover {
    text-decoration: none;
    font-size: 10px;
    color: #ccc
}
.dl-horizontal dt {
    clear: left;
    float: left;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 40px;
}
.dl-horizontal dd {
    margin-left: 50px;
}
.items-more h3 {
    margin-bottom: 10px;
}
p.errorcontainer {
    margin-bottom: 0;
    margin-top: 0;
    padding-top: 0;
}
fieldset {
    border: medium none;
    margin: 0;
    padding: 0;
}
.hidden {
    display: none !important;
}
.nav-tabs {
    padding: 0;
}
.btn-toolbar {
    margin: 15px 0;
}
.btn-group {
    display: inline;
}
#gaiyo-table {
    border-collapse: separate;
    width: 100%;
}
#gaiyo-table tbody {}
#gaiyo-table td {
    border-bottom: 1px dotted #696969;
    padding: 5px;
}
#gaiyo-table th {
    border-bottom: 1px dotted #696969;
    font-weight: normal;
    width: 15%;
    padding: 5px;
}
h2.componentheading,
.page-header h2 {
    background-color: #f7f7f7;
    border-bottom: 1px solid #cccccc;
    border-top: 1px solid #cccccc;
    font-size: 22px;
    font-weight: normal;
    margin: 0px 0 20px;
    padding: 20px 15px;
    line-height: 1em;
}
iframe {
    border: medium none;
}
.btnmenu {
    background-color: #f7f7f7;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin: 0;
    padding: 10px;
}
ul#usermenu {
    margin: 0;
    padding: 0;
}
ul#usermenu li {
    list-style: outside none none;
    margin-bottom: 10px;
}
ul#usermenu li:last-child {
    margin-bottom: 0;
}
#usermenu a.btn {
    display: inline-block;
    padding: 7px 15px;
    text-align: left;
    
}

#login-form{margin: 20px 0;}

#header-table {
    width: 100%;
}
#header-table td:last-child {
    text-align: right;
}
.control-group {
    margin-bottom: 10px;
}
.chzn-container {
    width: 250px !important;
}
.input-append input {
    display: inline;
}
.input-append button {
    display: inline;
    margin-left: 5px;
    padding: 9px 12px;
}

/*shadowbox*/
#sb-nav {
    height: auto;
    line-height: 1;
}
#sb-info,
#sb-info-inner {
    height: auto;
}
#sb-info-inner {
    font-size: 14px;
    height: auto;
}
#sb-nav a {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    color: #fff;
    font-family: FontAwesome;
    font-size: 18px;
    height: 20px;
    width: 20px;
}
#sb-nav a:hover {
    text-decoration: none;
}
#sb-nav-next:before {
    content: "\f0a9";
}
#sb-nav-close:before {
    content: "\f05c";
}
#sb-nav-previous:before {
    content: "\f0a8"
}
.accordeonck .toggler:before {
    content: "\f0fe";
    font-family: FontAwesome;
    color: #999;
    margin-right: 10px;
}
.accordeonck ul li ul {
    margin: 0;
}
.accordeonck ul li ul li {
    list-style: none outside none !important;
    margin: 0 !important;
}
.accordeonck ul li a {}
.pchidden {
    display: none;
}
#footer .switchBtn {
    margin: 20px 0;
    text-align: center;
}
#footer .switchBtn a {
    border: 1px solid #b5b3b3;
    border-radius: 4px;
    color: #494949;
    display: inline-block;
    padding: 8px 30px;
    background-color: #fff;
}
#footer .switchBtn a.btnAcv {
    display: none;
    background-color: #C4C4C4;
    background-image: none;
}
.switchBtn a:first-child {
    margin-right: 10px;
}
.component_container {
    padding: 0;
}

/* ↓tab & Slides */
ul.jwts_tabbernav li a {
    border-radius: 4px 4px 0 0;
}
div.jwts_toggleControlContainer a.jwts_toggleOff span.jwts_toggleControlTitle {
    background-position: 0 3px;
}
div.jwts_toggleControlContainer a.jwts_toggleOn span.jwts_toggleControlTitle {
    background-position: 0 -142px;
}
#responsive-tabs {
    margin-bottom: 15px;
}
#responsive-tabs label {
    margin: 0;
    padding: 7px 20px;
}
#responsive-tabs input[type="radio"]:checked + label,
#responsive-tabs input.checked[type="radio"] + label {
    border-top-color: #494949;
}
#responsive-tabs label:first-child {}
#responsive-tabs label span {
    font-size: 14px;
}
.edit .tab-content,
.tab-content {
    border: 1px solid #ccc;
    border-radius: 0 0 5px 5px;
    overflow: hidden;
    padding: 10px;
}
.tab-content .tab-content-item {}
.star {
    color: #ff002a;
}

/* ↑tab & Slides */

/*↓ showplus サムネイルスライド*/
.showplus-thumbnails > ul > li > a {
    margin-left: 1px !important;
    margin-right: 1px !important;
    padding: 0 !important;
    box-sizing: border-box;
}
.showplus-thumbnails > ul > li > a:hover {}
.showplus-horizontal .showplus-thumbnails > ul > li:last-child > a {
    margin-left: 2px !important;
}
.showplus-horizontal .showplus-thumbnails > ul > li:first-child > a {}
.showplus-thumbnails > ul {
    height: auto !important;
    overflow: hidden;
}

/*↑ showplus サムネイルスライド*/
ul.rsstableList {
    margin: 0;
    padding: 0;
}
ul.rsstableList li {
    border-bottom: 1px dotted #ddd;
    list-style: none outside none;
    overflow: hidden;
    padding: 10px 0;
}
ul.rsstableList li.odd {}
ul.rsstableList li.even {}
ul.newsflash-horiz {
    margin: 0;
    padding: 0;
    overflow: hidden;
}
ul.newsflash-horiz li {
    box-sizing: border-box;
    float: left;
    list-style: outside none none;
    padding-right: 10px;
    margin-bottom: 15px;
    width: 50%;
    position: relative;
}
ul.newsflash-horiz li:last-child {
    padding-right: 0;
}
ul.newsflash-horiz .article-separator {
    display: none;
}
.news-flash-readmore {
    float: right;
}

h4.newsflash-title{
    background-color: #f7f7f7;
    font-size: 15px;
    padding: 8px;
}
h4.newsflash-title a{}

ul.newsflash-vert {
    margin: 0;
    padding: 0;
}
ul.newsflash-vert li {
    list-style: outside none none;
    margin-bottom: 15px;
    overflow: hidden;
    position: relative;
}

.whole-link{
        display: block;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%;
}
.whole-link:hover{
background-color: #fff;
opacity: 0.4;
}




/* module editor */
legend {
    display: block;
    width: 100%;
    padding: 0;
    margin-bottom: 18px;
    font-size: 19.5px;
    line-height: 36px;
    color: #333;
    border: 0;
    border-bottom: 1px solid #e5e5e5;
}
.label {
    border-radius: 3px;
}
.label,
.badge {
    background-color: #999;
    color: #fff;
    display: inline-block;
    font-size: 10.998px;
    font-weight: bold;
    line-height: 14px;
    padding: 2px 4px;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
    vertical-align: baseline;
    white-space: nowrap;
}
.row-fluid:before,
.row-fluid:after {
    content: "";
    display: table;
    line-height: 0;
}
.row-fluid:after {
    clear: both;
}
.row-fluid .form-horizontal .control-group:before,
.row-fluid .form-horizontal .control-group:after {
    content: "";
    display: table;
    line-height: 0;
}
.row-fluid .form-horizontal .control-group:after {
    clear: both;
}
.row-fluid .form-horizontal .control-group {
    margin-bottom: 18px;
}
.row-fluid .form-horizontal .control-label {
    float: left;
    padding-top: 5px;
    text-align: right;
    width: 20%;
}
.row-fluid .form-horizontal .controls {
    margin-left: 25%;
}
.row-fluid .control-label .hasTooltip {
    display: inline-block;
}
.row-fluid .controls > .radio:first-child,
.row-fluid .controls > .checkbox:first-child {
    padding-top: 5px;
}
.row-fluid fieldset.radio.btn-group {
    padding-left: 0;
}
.row-fluid .radio,
.row-fluid .checkbox {
    min-height: 18px;
    padding-left: 20px;
}
#jform_articletext_tbl {
    width: 100%;
}
iframe#jform_articletext_ifr {
    width: 100% !important;
}
.ckdatetimepicker {
    float: left;
}
.datepickerbtn {
    float: left;
    margin-left: 5px;
    padding: 8px 10px !important;
}
.input-append.date {
    overflow: hidden;
}
.dtp-calendar {
    border: 1px solid #ccc;
    margin-left: 5px;
    padding: 1px;
}
.dtp-calendar:first-child {
    margin: 0;
}
.table-striped td,
.table-striped th {
    //  font-size: 18px;
    padding: 7px 10px !important;
}
.close {
    position: absolute;
    right: 0;
    z-index: 1;
}
#system-message .alert {
    margin: 0;
}
.alert-message a.close {
    display: none;
}
#jf_mm_menu,
.jf_mm_trigger {
    display: none;
}

/* simple image gallery pro*/
ul.sigProContainer span.sigProPseudoCaption {
    padding-bottom: 0;
    padding-top: 0;
    line-height: 2;
}
.cat-items table {
    border-top: 1px solid #ddd;
    width: 100%;
}

/* スマートサーチ */
.finder label {
    display: none;
}
.finder input {
    margin: 0;
}
.finder button {
    box-shadow: none;
    margin: 0;
    padding: 7px 12px 8px;
}
.finder .fa-search::before {
    font-size: 15px;
    line-height: 1.2;
    margin-right: 5px;
}
#search-results {}
#search-query-explained {}
ul.search-results {
    list-style: outside none none;
    margin: 15px 0;
    padding: 0;
}
ul.search-results li {
    border-bottom: 1px dotted #ccc;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
ul.search-results li:first-child {
    border-top: 1px dotted #ccc;
    padding-top: 10px;
}
.result-title {
    background-color: #f7f7f7;
    border: 1px solid #ccc;
    padding: 5px 10px;
}

/* スマートサーチ ここまで*/

/* rsforms pro*/
.yui-calcontainer .yui-cal-nav-mc {
    box-sizing: border-box;
}
#userForm .rsform-block {
    display: table;
    margin: 8px 0 0;
    width: 100%;
}
#userForm .rsform-block > label {
    border-top: 1px dotted #ccc;
    display: table-cell;
    padding: 8px 10px 3px 8px;
    vertical-align: top;
    width: 30%;
}
#userForm .rsform-block .formControls {
    display: table-cell;
    border-top: 1px dotted #ccc;
    vertical-align: top;
    padding: 8px 8px 3px;
}
#userForm .rsform-block-submit {
    display: block;
}
#userForm .rsform-block-submit > label {
    border: medium none;
    display: inline-block;
    padding: 0;
}
#userForm .rsform-block-submit .formControls {
    display: block;
    text-align: center;
}
#submit {
    font-size: 22px;
    line-height: 1;
    padding: 10px 20px;
}

strong.formRequired {
    color: #ff002a;
    font-weight: normal !important;
    font-size: 11px;
}
#userForm .checkbox {
    display: block;
    margin-right: 10px;
}
#userForm .radio {
    margin-right: 10px;
    display: block;
}

#userForm .inline {
    display: inline;
}

.formValidation {
    display: block;
}
.formValidation .formError {
    font-size: 14px;
}
.formControls input.btn {
    margin-left: 10px;
    padding: 6px 5px 8px;
}

.rsform-calendar-button::before{
    content:"\f073";
    font-family: FontAwesome;
}

/* rsforms pro　ここまで*/

/*Youtubeの埋め込み*/
.yt iframe {
    display: block;
    margin: auto;
}

/*プロファイルの編集非表示*/
#post .profile {display: none;}

/* ↑PC・スマホ共通デザイン */

/****green****/
html, body, h1, h2, h3, h4, h5, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  vertical-align:baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
ol, ul {
  list-style: none;
  list-style-type: none;
}
.clearfix:after {
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: " ";
  font-size: 0;
}
img {vertical-align: bottom;}

.midori1 {color:#aeea00;}/*黄緑*/
.midori2 {color:#37a824;}/*濃い緑*/
.mbg {background:#f7fde5; padding:80px 0;}
.gbg {background:#f2f2f2; padding:80px 0;}

.maha {
  font-family: mahalia, sans-serif;
  font-weight: 400;
  font-style: normal;
}

#wrapper {
  width:100%; min-width:1200px;
  height:80px;
  position:absolute;
  z-index:99;
  top:0;
}
#header-wrap {width:1100px; height:80px; margin:0 auto; position:relative;}
h1 {display:none;}
.logo {padding-top:20px; text-align:center;}
.logo img:hover {opacity: .4;}

p.infolink {position:absolute; top:0; right:0;}
p.infolink a {background:#aeea00; width:200px; text-align:center; line-height:40px; color:#000; display:inline-block; font-size:14px;}
p.infolink a:hover {text-decoration:none; background:#4a4a4a; color:#fff;}

#navigation {}
#navigation .menu > li {width:16%; text-align:center;}
/*#navigation .menu > li:nth-child(1),
#navigation .menu > li:nth-child(5),
#navigation .menu > li:nth-child(7) {width:17%;}
#navigation .menu > li:nth-child(2) {width:13%;}*/

.menu > li a:before, .menu > li span:before {display:block; display:block;}
.menu > li a:hover:before {color:#aeea00;}
.menu > li.item-1667 a:before {content:"CONCEPT";}
.menu > li.item-1668 span:before {content:"PRODUCTS";}
.menu > li.item-1669 span:before {content:"RECRUIT";}
.menu > li.item-1676 span:before {content:"ABOUT US";}
.menu > li.item-1679 a:before {content:"TOPICS";}
.menu > li.item-1680 a:before {content:"CONTACT";}

#navigation .menu li > span.separator:hover {color: #aeea00;}


.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}
.scrolling {background:rgba(0,0,0,.9)!important; transition: 2.0s ; width:100%;}
.scrolling ul li a, .scrolling ul li span {color:#fff; line-height:50px;}
.scrolling .menu > li a:before, .scrolling .menu > li span:before {display:none;}


.inr {width:1000px; margin:0 auto;}
.inr1200 {width:1200px; margin:0 auto;}

#box-wrap {width:1100px; margin:0 auto;}
#home #box-wrap, #gather #box-wrap, #message #box-wrap {width:100%;}

.fbox {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: space-between;
}
.fs {justify-content: flex-start;}
.jcc {justify-content: center;}

/**見出し**/
.mds {margin-bottom:1.5em!important; padding-bottom:.5em; text-align:center; color:#4a4a4a;}
/*.mds span.jp{font-size:21px; font-weight:500; text-decoration:underline wavy #aeea00; color:#37a824; text-underline-offset: .5em;}*/
.mds span.jp{font-size:21px; font-weight:500; color:#37a824; background:url(../../../images/common/nami.png) repeat-x center bottom; padding:0 .2em .6em;}
.mds span.en {display:block; font-family: mahalia, sans-serif; font-weight: 400; font-style: normal; font-size:38px;}
.mds span.en br {display:none;}

.mds1 {font-size:22px; margin-bottom:1em; font-weight:500;
position: relative;
padding-bottom: .5em;
border-bottom: 3px solid #eee;
}
.mds1:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 2;
  content: '';
  width: 10%;
  height: 3px;
  background-color: #37a824;
}

.mdsMsg {font-size:30px; color:#37a824; text-align:center; margin-bottom:1em;}
.mdsMsg2 {font-size:40px; color:#37a824; text-align:center; margin-bottom:1em;}

.mdsLine {text-align:center;}
.mdsLine span {font-size:21px; font-weight:500; position: relative; text-align: center; margin-bottom:1em; display:inline-block;}
.mdsLine span.f25 {font-size:25px;}
.mdsLine span:before {
    content: "";
    position: absolute;
    border-top: 1px solid #4a4a4a;
    width: 50px;
    top: 50%;
    left: -70px;
}
.mdsLine span:after {
    content: "";
    position: absolute;
    border-top: 1px solid #4a4a4a;
    width: 50px;
    top: 50%;
    right: -70px;
}

.mdsKakko {text-align:center; margin:80px 0 40px;}
.mdsKakko span { font-size:40px;
  position: relative;
  line-height: 1.4;
  padding:0.25em 1em;
  display: inline-block;
  top:0;
}
.mdsKakko span:before, .mdsKakko span:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.mdsKakko span:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
.mdsKakko span:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}

/*トップページ*/
#mainimg {margin:0 0 80px; position:relative;}
#mainimg p.mainImg img {width:100%; height:auto;}
#mainimg p.mainTxt {
    font-size: 35px;
    font-weight: 700;
    color: #fff;
    text-shadow: 2px 2px 0px #333;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../../../images/top/mainami.png)repeat left top;
    width: 100%;
    padding: 50px 5% 50px;
    text-align: center;
}
#mainimg p.mainTxt:after {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: -30px;
    /* content: url(../../../images/top/mainicon.png); */
}

.newsbox ul li {border-bottom:1px solid #ccc; padding:1.5em 0;}

.kijiwaku {position:relative; margin:150px 0 80px;}
.kijiTxt {background:url(../../../images/top/kodawaribg.png)repeat-y left top; padding:4rem; width:70%; margin:0 0 0 5%;}
.kijiTxt p {color:#fff; line-height:2.5; padding-right:40%;}
.kijiImg {width:50%; position:absolute; top:-100px; right:0;}
.kijiImg img {width:100%; height:auto;}


/**TOP取扱い商品****/
.products li {width:390px; background:#fff;}
.products li img {width:100%; height:auto;}
.products li h4 {font-weight:700; font-size:50px; position:relative; padding:1.5rem; line-height:1.2;}
.products li h4:after {
position:absolute; right:1em; top:50%; transform: translateY(-50%);
  content: "\f054"; color:#aeea00; font-size:30px;
  font-family: FontAwesome; transition: all 0.3s ease;
}
.products li p {padding:0 1.5rem 1.5rem;}

.products li a {display:block; width:100%; height:100%;}
.products li a:hover {text-decoration:none;}
.products li a:hover h4:after {right:.5em;}
.products li a:hover p {color:#4a4a4a;}


/**TOPリクルート****/
.recruit .fltTxt {width:40%; padding:2rem 0 0;}
.recruit .fltImg {width:57%; position:relative;}
.rec1 p {position:absolute; left:0; top:1em; font-size:35px; color:#fff; font-weight:700; background:rgba(0,0,0,.5); padding:.3em 2em; display:inline-block;}
.rec2 p {position:absolute; right:0; bottom:1em; font-size:35px; color:#fff; font-weight:700; background:rgba(0,0,0,.5); padding:.3em 2em; display:inline-block;}
.rec3 p {position:absolute; left:0; bottom:3em; right:0; text-align:center; font-size:30px; color:#fff; font-weight:700; display:inline-block; letter-spacing:.2em;}

.recWaku {border:1px solid #37a824;}
.recMds {width:25%; background:#37a824; text-align:center; position:relative;}
.recMds h4 {font-size:30px; color:#fff; font-weight:700; line-height:1.5; padding:3rem 0; position:absolute; top:50%; transform: translateY(-50%); left:0; right:0;}
.recTxt {width:75%; padding:2rem;}

/**TOP当社について****/
.aboutmenu li {width:50%; position:relative; overflow:hidden;}
.aboutmenu li img {width:100%; height:auto; transition: transform 0.2s linear;}
.aboutmenu li:hover img {transform: scale(1.05);}
.aboutmenu li h4 {font-size:30px; color:#fff; position:absolute; top:50%; transform: translateY(-50%); left:0; right:0; text-align:center;}
.aboutmenu li p a {font-size:16px; 
  position:absolute; bottom:20%; left:0; right:0; 
  text-align:center; color:#aeea00; border:1px solid #aeea00; width:220px; line-height:60px; margin:auto;
}
.aboutmenu li p a:hover {text-decoration:none; background:#aeea00; color:#4a4a4a;}

.aboutList > div {background:#fff;}
.aboutList > div.gcalendar {width:300px; margin:50px 0; text-align:center; padding:1em;}
.aboutLIst > div.gcalendar p {margin-bottom:.8em;}
.aboutList > div.area {width:650px; margin:50px 0; padding:2rem;}
.aboutList > div.area .mds {margin-bottom:1em; padding-bottom:.5rem; border-bottom:1px solid #ccc; text-align:left;}
.aboutList > div.area .mds span {display:inline-block; padding-bottom:.5rem; padding-right:1rem;}
.arealist li {display:inline-block; background:#aeea00; padding:.3em 1em; font-size:21px; margin:5px;}

.aboutList > div.place {width:300px;}
.aboutList > div.place img {width:100%; height:auto;}
.aboutList > div.place h4 {font-size:18px; border-bottom:2px solid #4a4a4a; text-align:center; padding:.8em 0; margin:0 1.5rem;}
.aboutList > div.place p {padding:1rem 1.5rem .5rem;}
.aboutList > div.place p.call {padding:0 1.5rem 1.5rem;}
.aboutList > div.place p.call a {font-size:24px; font-weight:700; color:#37a824;}
.aboutList > div.place p.call a:hover {text-decoration:none; color:#4a4a4a;}

/*******リンク********/
.linklogo {width:900px; margin:0 auto;}
.linklogo li {width:205px; margin:10px;}

.linklogo2 {width:662px; margin:0 auto;}
.linklogo2 li {width:202px; margin:10px; display:inline-block; float:left;}
.linklogo2 li:first-child {width:420px;}

/***フッター****/
#footer-wrap {background:#f2f2f2; padding-top:30px;}
.fnav > ul {padding:1em 2em;}
.fnav ul li {font-size:15px; text-align:left; margin:.3em 0;}
.fnav ul li ul.fnav2 li:before {content: "\f105"; font-family: FontAwesome; margin:0 .3em 0 .5em;}

.flogo {padding:2em 0;}

/**ボタン**/
.morebtn a {
  display:inline-block; text-align:center; background:#aeea00;
  width:300px; line-height:70px; color:#4a4a4a; letter-spacing:.1em;
  font-size:16px; font-weight:700; position:relative;
}
.morebtn a:after {
  position:absolute; right:1em; top:50%; transform: translateY(-50%);
  content: "\f054";
  font-family: FontAwesome;

}
.morebtn a:hover {background:rgba(0,0,0,.8); text-decoration:none; color:#fff;}

.mbtn a {
  display:inline-block; text-align:center; background:#aeea00;
  width:400px; line-height:90px; color:#4a4a4a; letter-spacing:.1em;
  font-size:21px; font-weight:700; position:relative;
}
.mbtn a:after {
  position:absolute; right:1em; top:50%; transform: translateY(-50%);
  content: "\f054";
  font-family: FontAwesome;

}
.mbtn a:hover {background:rgba(0,0,0,.8); text-decoration:none; color:#fff;}

/**レイアウト**/
.fltImg {width:50%;}
.fltImg img {width:100%; height:auto;}
.fltTxt {width:50%; padding:2rem;}

.fltImg2 {width:30%;}
.fltImg2 img {width:100%; height:auto;}
.fltTxt2 {width:67%;}


ul.dot {
padding-left: 1.5em;
list-style-type: disc;
}
ol.num {
padding-left: 1.5em;
list-style-type: decimal;
}
ol.num > li {padding:.5em 0;}

.plead p {margin-bottom:1em;}
.plead p:last-child {margin-bottom:0;}

.f20 {font-size:20px;}
.f24 {font-size:24px;}
.f30 {font-size:30px;}
.f40 {font-size:40px;}
.f20center {text-align:center;}
.f20center p {font-size:20px;}

/***お問い合わせ***/
.contactTxt {text-align:center; margin-bottom:2rem;}
.privacy {background:#f2f2f2; padding:1.5rem; font-size:14px;}

#submit {background:#aeea00; border:none; padding:1em 4em .8em;}
#submit:hover {background:#4a4a4a; color:#fff;}

/***サイトのご利用にあたって***/
.notice li {color:#37a824;}
.notice li h4 {}
.notice li p, .notice ul li {color:#4a4a4a;}
.notice li ul {
padding-left: 1.5em;
list-style-type: disc;
}

/****会社概要*****/
.tstyle {width:100%; border-collapse:collapse;}
.tstyle th { width:20%; padding:20px; vertical-align:middle; border:1px solid #ccc; background:#f7fde5;}
.tstyle td { width:80%; padding:20px; border:1px solid #ccc;}

.outline {width:100%; border-collapse:collapse;}
.outline tr {}
.outline tr:nth-child(even) {background:#f7fde5;}
.outline th { width:30%; padding:20px; vertical-align:middle; border-right:5px solid #aeea00;}
.outline td { width:70%; padding:20px;}

/***職人募集****/
#craftsman .aboutList > div.place {width:32%; background:#f7fde5; padding:1em 1.5em 1.5em;}
#craftsman .aboutList > div.place h4 {margin:0 0 1.5rem;}
#craftsman .aboutList > div.place p {padding:0;}

/***こだわり****/
.flt_Img {width:40%;}
.flt_Img img {width:100%; height:100%; object-fit:cover;}
.flt_Txt {width:60%; padding:2rem; background:url(../../../images/top/kodawaribg.png)repeat left top;}
.flt_Txt h3 {color:#aeea00; font-size:30px; padding-bottom:.5em; margin-bottom:1em; border-bottom:1px solid rgba(255,255,255.5);}
.flt_Txt p {color:#fff;}

#service .products li {width:350px; background:#f2f2f2;}
#service .products li h4 {font-size:40px; position:relative; padding:1.5rem; line-height:1.2;}

/****取扱い商品****/
.lineup li {width:340px; margin:10px; background:#f2f2f2; position:relative;}

.lineup li.new:before { position:absolute; top:0px; left:0px; display:inline-block; background:#ff0000; padding:.5em .5em 0; border-radius:0 0 10px 0;
content:"New!"; font-family: mahalia, sans-serif; font-size:18px;
color: #fff;
}
.lineup li > img {width:340px; height:220px; object-fit: cover;}
.lineup li p {padding:.5em; display:flex;} 
.lineup li p span {display:block; padding:.5em; vertical-align:middle;}
.lineup li p span:nth-child(2) {text-align:left;}


/******採用情報*****/
.gwaku {background:#f7fde5; padding:2rem;}
.fukidashi {
    position:relative;
    background:#aeea00;
    padding:1rem;
    text-align:center;
    font-size:20px; margin-bottom:1.5em;
}
.fukidashi:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(174, 234, 0, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color:#aeea00;
    top:100%;
    left:50%;
}

.flt3 li {width:31%; margin:1%; background:#f7fde5; padding:1.5rem; text-align:center;}
.flt3 li h4 {color:#37a824; font-size:21px; font-weight:700; margin:1rem 0 .5rem;}
.flt3 li p {text-align:left;}

.recruitWaku {position:relative; margin-bottom:30px;}
.recruitWaku img {width:90%; height:auto;}
.recruitWaku h3 {position:absolute; right:0; top:50%; transform: translateY(-50%); font-size:60px; font-weight:700; color:#aeea00; background:rgba(0,0,0,.5);
display:inline-block; padding:.5em 1em;}
.recruitWaku h3 span {display:block; font-size:30px; font-weight:700; color:#fff; text-align:right;}


ul.faq li {}
ul.faq li h4 {background:#aeea00; padding:.5em 1em;}
ul.faq li p {padding:.5em 0 1em;}

ul.flow {background:url(../../../images/recruit/flowbg.png)no-repeat center center;}
ul.flow li {width:13%; margin:.5%; background:#ff9900; text-align:center; border-radius:10px; padding:1rem;}
ul.flow li p {font-size:18px; color:#fff; line-height:1.5;}

/***お知らせ***/
.blogDetail {}
.blogDetail h3 {color:#37a824; border-bottom:1px solid #37a824; padding-bottom:.5em; margin:1em 0 .5em; font-size:25px;}
.blogDetail h4 {background:#f7fde5; padding:.4em 1em; font-size:18px; margin:1em 0 .5em; font-weight:500;}

.cat-children {display:none;}
#blognews .item {margin-bottom:50px;}
#blognews a.btn {
    background-color: #aeea00;
    border: none;
    border-radius: 0;
    color: #4a4a4a; font-weight:700;
    padding: .5em 2em .5em 2.5em;
}
#blognews a.btn:hover {background:#4a4a4a; color:#fff;}

.blogImg {width:30%; margin:0 1rem 1rem 0;}
.blogImg img {width:100%; height:auto;}

/****************************************
          margin
*****************************************/
.mb1em{margin-bottom:1em!important;}
.mb2em{margin-bottom:2em!important;}
.mb3em{margin-bottom:3em!important;}
.mb10{margin-bottom:10px!important;}
.mb15{margin-bottom:15px!important;}
.mb20{margin-bottom:20px!important;}
.mb25{margin-bottom:25px!important;}
.mb30{margin-bottom:30px!important;}
.mb40{margin-bottom:40px!important;}
.mb50{margin-bottom:50px!important;}
.mb60{margin-bottom:60px!important;}
.mb70{margin-bottom:70px!important;}
.mb80{margin-bottom:80px!important;}
.mb90{margin-bottom:90px!important;}
.alignC {text-align:center;}
.alignR {text-align:right;}
.txtR {text-align:right; display:inline-block;}
.fltLeft {float:left;}


/******210903追加******/
.mds2 {font-weight:700; color:#37a824; font-size:20px; margin-bottom:.5em; border-bottom:1px solid #37a824; padding-bottom:.5em;}
.recruitFlow {}
.recruitFlow li {width:210px; background:#eef4d2; padding:1.5em; position:relative; text-align: center;}
.recruitFlow li:after  {
position:absolute; right:-20px; top:50%; font-size:33px; color:#aeea00;
transform: translateY(-50%);
content: "\f054";
font-family: FontAwesome; z-index: 5;
}
.recruitFlow li:last-child:after {content:none;}
.recruitFlow li span {font-size:20px; font-weight:700; display:block; margin:0 auto; color:#37a824;}
.recruitFlow li p {font-size:14px; text-align: center;}
.recruitFlow li img {margin: 1em 0;}

ul.workCheck li {display:inline-block; margin:.5em;}
ul.workCheck li:before {
color:#37a824;
content: "\f054"; margin-right:.3em;
font-family: FontAwesome;
}

/*****gather******/
.gcap {font-size:30px; padding:1em 0; font-weight:500;}
.gpink {color:#C5007F;}

.flt2 li {width:48%;}
.flt2 li img {width:100%; height:auto;}

.simulation li img {width:50%; height:auto; margin:1em 0;}
.waku {width:1100px; margin:0 auto; border:5px solid #f2f2f2; border-radius:10px; padding:2em;}
.waku h4 {font-size:25px; padding-bottom:.5em; margin-bottom:.8em; border-bottom:1px solid #999; font-weight:500;}

ul.simulationList > li {width:1100px; margin:0 auto 50px; background:#f7fde5; padding:3rem; position:relative; text-align:center; border-radius:10px;}
ul.simulationList > li:after  {
position:absolute; left:0; right:0; bottom:-80px; font-size:80px; color:#aeea00; text-align:center;
content: "\f078";
font-family: FontAwesome; z-index: 5;
}
ul.simulationList > li:last-child:after {content:none;}

ul.simulationList > li .listNum {
    display: inline-block;
    width: 150px;
    height: 150px;
    background: #aeea00; color:#fff;
    border-radius: 100%;
    text-align: center;
    line-height: 150px;
    font-size: 30px;
    font-weight: 700;
}
ul.simulationList > li h4 {font-size:30px; font-weight:700; margin:1em 0;}
ul.simulationList > li p.flowImg {width:70%; margin:2em auto 0;}
ul.simulationList > li p.flowImg img {width:100%; height:auto;}

ul.kome {width:70%; margin:1em auto 0;}
ul.kome li {text-align:left; text-indent: -1em; font-size:14px;}
ul.kome li:before {
  display: inline;
  content: "※";
}

/******メッセージ*****/
.msg1 {background:url(../../../images/aboutus/msg1.png) no-repeat center top/cover; padding-bottom:80px;}
.msg2 {background:url(../../../images/aboutus/msg2.png) no-repeat center center/cover; padding:80px 0;}


/**gatherボタン**/
.aboutGahter {}
.aboutGather a {display:block; background:url(../../../images/top/aboutgatherbg.png) no-repeat center center/cover; position:relative; border:1px solid #37a824;}
.aboutGather img {width:35%; height:auto;}
.aboutGather p {position:absolute; width:65%; right:0; top:50%; color:#fff; transform: translateY(-50%); text-align:center; font-size:20px;}
.aboutGather p img {width:initial;}
.aboutGather a:hover {border:1px solid #aeea00;}
.aboutGather a:hover img {opacity:1;}