body {
    /*margin-top: 10px;*/
}

.home > .site { /* トップページのみ */
    background-color: #eeeeee;
}

.debug {
    background-color: #f0f0f0;
    color: #808080;
    padding: .2rem 1rem;
}

#content {
    /* margin-top: 20px; */
    margin-top: 80px;
    max-width: 1024px;
    width :100%;
    margin-left: auto;
    margin-right: auto;
}

#content h1 { /* 2016-09-21: #efforts h3 と同じ */
    border-color: #404040;
    border-style: solid;
    border-width: 0 0 1px;
    color: #404040;
    font-size: 1rem;
    font-weight: normal;
    margin-bottom: 2rem !important;
    text-align: center;
}

header {
    width: 100%;
    text-align: center;
    background-color: #ffffff;
    z-index: 9999;
    position: fixed;
    top: 0;
    min-height: 80px;

    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: inline-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: center;
}

#header-info {
    text-align: left;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
    width: 155px;
    color: #404040;
}

.header-info-tel {
    text-align: left;
    font-weight: bold;
}

.header-info-sub {
    font-size: .7em;
    text-align: left;
}

.post-type-archive-movies #primary {
    float: right;
    width: 824px;
}

.entry-header {
    margin-top: 20px;
}

.site-header-main {
    max-width: 1024px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.site-branding {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    top: 20px;
}

#header-nav-wrap {
    /*height: 60px;*/
    margin-left: auto;
    margin-right: auto;
}

#header-nav {
    font-size: .8em;
    height: 40px;
    line-height: 40px;
    margin-left: 20px;
    margin-top: 0;
    padding-top: 10px;
}

#header-nav2 {
    font-size: .8em;
    /*height: 40px;*/
    line-height: 40px;
    margin-left: 20px;
    /*padding-top: 10px;*/
}

#header-nav ul,
#header-nav2 ul {
    margin: 0;
    padding: 0;
}

#header-nav li,
#header-nav2 li {
    float: left;
    list-style: none;
    margin-right: 2em;
}

#header-nav2 li {
    font-weight: bold;
    line-height: 1em;
}

/*#header-nav*/
a {
    color: #404040;
}

a:hover {
    color: #007acc;
}

.top-block {
    margin-top: 25px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.top-block-title {
    background-color: #103967;
    color: #ffffff;
    height: 2em;
    line-height: 2em;
    text-align: center;
}

.top-block-title-text {
    color: #ff0000;
    width: 100%;
    height: 100px;
    text-align: center;
}

.top-block-title-text a {
    color: #B3701B;
    font-size: 1.8em;
    letter-spacing: .5em;
    font-weight: 500;
}

.top-block-left {
    float: left;
    width: 50%;
    /*height: 300px;*/
    background-color: #202648;
}

#top-news {
    /*width: 100%;*/
    /*margin-left: auto;*/
    /*margin-right: auto;*/
}

.top-block-left-news {
    background: url('/wp-content/uploads/2019/04/top-bg-news.jpg') no-repeat;
}

.top-block-news {
    /*background-color: #ff0000;*/
    color: #ffffff;
    margin-top: 100px;
    font-size: .7em;
    overflow-y: auto;
    padding: 10px;
    height: 165px;
}

.top-block-news a {
    color: #e2e4ee;
}

.top-block-news-item {
    /*border-color: #343a5c;*/
    /*border-style: solid;*/
    /*border-width: 0 0 1px;*/
    font-size: .9em;
    /*margin-bottom: .3em;*/
    /*padding-bottom: .3em;*/
}

.top-block-news1 {
    float: left;
    width: 150px;
}

.top-block-news1 h4 {
    color: #0d84e3;
}

.top-block-news-link {
    font-size: .9em;
}

.top-block-news2 {
    width: 85%;
}

.top-block-news-item-date {
    float: left;
    margin-right: 1em;
}

.top-block-news-detail {
    border-color: #ffffff;
    border-style: solid;
    border-width: 1px;
    border-radius: 4px;
    color: #ffffff;
    font-size: .7em;
    height: 35px;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    text-align: center;
    width: 150px;
}

.top-block-news-detail a {
    color: #ffffff;
    display: block;
    height: 100%;
    width: 100%;
    line-height: 100%;
    /*padding: 1em;*/
}

.top-block-right {
    float: left;
    width: 50%;
    /*height: 300px;*/
    background-color: #202648;
}

.top-block-banner {
    background-color: #2d3148;
    text-align: right;
    width: 100%;
    height: 80px;
}

.top-block-banner2 {
    background-color: #eeeeee;
    width: 100%;
    height: 100px;
    margin-top: 10px;
}

.top-block-items {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: inline-flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    /*justify-content: space-between;*/
    /*-webkit-box-pack: justify;*/
    /*-ms-flex-pack: justify;*/
}

.top-block-item {
    flex-basis: 169px;
    margin-top: 25px;
    margin-right: 2px;
    padding: 10px;
    background-color: #E6E6E6;
    border-width: 1px;
    border-style: solid;
    border-color: #bbbbbb;
}
.top-block-item:last-child {
    margin-right: 0;
}

.top-block-linktitle {
    margin-top: .5em;
    font-size: .8em;
    border-style: dotted;
    border-width: 0 0 1px;
    border-color: #bbbbbb;
}

.top-block-text {
    margin-top: 1em;
    font-size: .8em;
}

#top-exapmles {
    /*width: 100%;*/
    /*margin-left: auto;*/
    /*margin-right: auto;*/
}

.top-example-items {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: inline-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;*/
    /*-webkit-box-pack: justify;*/
    /*-ms-flex-pack: justify;*/
    width: 100%;
}

.top-example-item {
    flex-basis: 169px;
    height: 169px;
    /*margin-top: 25px;*/
    margin-right: 2px;
    padding: 10px;
    background-color: #E6E6E6;
    border-width: 1px;
    border-style: solid;
    border-color: #bbbbbb;
    text-align: center;
}
.top-example-item:last-child {
    /*flex-basis: 169px;*/
    margin-right: 0;
}

.top-example-item-title {
    font-size: .9em;
}

.top-example-item-desc {
    font-size: .8em;
}

.top-banner-items {
    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;*/
    /*-webkit-box-pack: justify;*/
    /*-ms-flex-pack: justify;*/
    margin-top: 5px;
}

.top-banner-item {
    flex-basis: 510px;
    height: 80px;
    /*margin-top: 4px;*/
    margin-right: 4px;
    background-color: #E6E6E6;
    /*border-width: 1px;*/
    /*border-style: solid;*/
    /*border-color: #bbbbbb;*/
    text-align: center;
}
.top-banner-item:last-child {
    /*flex-basis: 169px;*/
    margin-right: 0;
}

.flexslider {
    /*position: absolute !important;*/
}

.flex-direction-nav {
    position: relative !important;
    top: -40px;
}

.clearfloat {
    clear: both;
}

footer {
    background-color: #ffffff;
    margin-top: 30px;
    font-size: .8em;
    color: #404040;
}

#footer-nav {
    /*background-color: #fff36b;*/
    width: 100%;
    /*line-height: 3em;*/
    /*padding-bottom: 0;*/
}

#footer-nav ul {
    text-align: center;
    margin: .5em 0 0;
}

#footer-nav li {
    /*float: left;*/
    display: inline-block;
    list-style: none;
    margin-right: 3em;
    /*line-height: 3em;*/
}

#footer-nav a {
}

.footer-anchor {
    width: 100%;
    background-color: #bbbbbb;
    text-align: center;
    margin-top: 20px;
    line-height: 2em;
}

.footer-anchor-link {
    color: #404040;
    line-height: 2em;
}

.footer-sitemap {
    width: 100%;
    height: 100px;
    text-align: center;
    background-color: #eeeeee;
}

.footer-info {
    margin-top: 10px;
    width :100%;
    text-align: center;
    border-style: solid;
    border-color: #cccccc;
    border-width: 0 0 1px;
    padding-bottom: 5px;
}

.footer-info2 {
    font-weight: bold;
    width :100%;
    text-align: center;
}

.footer-info3 {
    margin-top: .5em;
    width :100%;
    text-align: center;
}

.footer-info3 ul {
    margin-bottom: 0;
}

.footer-copy {
    line-height: 3em;
    width: 100%;
    text-align: center;
}

/* 施工事例 */
#examples h1 {
    text-align: left;
}

#examples {
    margin-top: 40px;
    /*float: right;*/
    /*width: 960px;*/
}

#examples ul {
    list-style: none;
}

.example-list {
    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;
}

.examples-item {
    background-color: #f0f0f0;
    /*float: left;*/
    height: 150px;
    /*margin: 0 20px 20px 0;*/
    width: 150px;
    margin-top: 20px;
    margin-right:18.5px;
}
.examples-item:last-child {
    margin-right:0;
}

.examples-item_last {
    margin-right: 0 !important;
}

.examples_image_main {
    background-color: #e0e0e0;
    margin-top: 10px;
    width: 100%;
    height: 400px;
}

.examples_image_sub {
    margin-top: 10px;
}

.examples_image_sub_item {
    background-color: #e0e0e0;
    float: left;
    margin-right: 10px;
    width: 192px;
    height: 80px;
}

.examples-image_thumbnails{
    text-align: center;
}

#examples .entry_title {
    border-color: #aaaaaa;
    border-style: solid;
    border-width: 1px 0;
    font-weight: bold;
    font-size: 1.5em;
    padding: .2em 0;
    margin-top: 80px;
}

#examples h2 {
    border-color: #aaaaaa;
    border-style: solid;
    border-width: 1px;
    font-weight: bold;
    font-size: 1em;
    margin: 40px 0 20px;
    padding: .2em .5em;
    text-align: center;
}

#examples h3 {
    border-color: #aaaaaa;
    border-style: solid;
    border-width: 1px;
    font-weight: normal;
    font-size: 1em;
    margin-top: 1em;
    padding: .2em .5em;
    text-align: center;
}

#examples table {
    /*margin-top: 20px;*/
    width: 100%;
}
#examples th {
    width: 100px;
}

#examples th,
#examples td {
    border-style: solid;
    border-width: 0 0 1px;
    border-color: #aaaaaa;
    color: #303030;
    font-size: .9em;
    padding: 0;
}

/* 施工事例: メイン画像 */
.examples-image_main {
    /*height: 530px;*/
    margin: 20px 0;
    width: 960px;
    text-align: center;
}

/* 施工事例: サムネイル */
.examples-image_thumbnails {
    padding: 0;
    margin-left: 0;
}

.examples-image_thumbnails li {
    height: 98px;
    float: left;
    margin-right: 20px;
    width: 176px;
}

.examples-image_thumbnails li.last {
    margin-right: 0 !important;
}

.examples-info_left {
    float: left;
    margin-right: 20px;
    width: 460px;
}

.examples-info_right {
    float: left;
    margin-left: 20px;
    width: 460px;
}

.examples-info_left table,
.examples-info_right table,
.examples-info_bottom table {
    border-collapse: collapse;
}

.examples-info_left td,
.examples-info_right td {
    line-height: 2em;
}

/**
 * トップビジュアル
 */
#top-visual {
    /*max-width: 1024px;*/
    /* margin-top: 50px; */
    width: 100%;
}

#top-visual img {
    width: 100%;
}


/**
 * ニュース
 */
#top-visual_news {
    background-color: #000000;
    font-size: 11px;
    opacity: 0.7;
    position: absolute;
    width: 400px;
    top: 330px; /* height と連動 */
    height: 100px;
    padding: 10px;
    z-index: 1000;
}
#top-visual_news h2 {
    color: #ffffff;
    font-size: 1rem;
    font-weight: bold;
}
#top-visual_news li {
}
#top-visual_news a {
    color: #ffffff;
}
#top-visual_news a:hover {
    color: #c60019;
}
#top-visual_caption {
    background-color: #2b2b2b;
    height: 50%;
    overflow: hidden; /* 内側 margin 対策 */
    width: 100%;
}
#top-visual_caption-inner {
    margin: 10px;
}

#top-visual_pic {
    /*float: right;*/
}

.audio-file { float: left; }
.audio-file_w215 { width: 215px; }
.audio-file_w307 { width: 307px; }
.audio-file_w308 { width: 308px; }
.audio-file .fp-ui { background-image: none !important; } /* 再生アイコン非表示 */

#news-20170401_cm {
    background-image: url('/wp-content/uploads/2017/04/f872e21691d654f432b56b62d88c095b.jpg');
    background-repeat: no-repeat;
    padding-top: 116px;
}

/* コンテンツ */
#content-nav {
    font-size: .8em;
    height: 40px;
    line-height: 40px;
    margin-left: 20px;
    padding-top: 10px;
}

#content-nav ul {
    margin: 0;
    padding: 0;
}

#content-nav li {
    float: left;
    list-style: none;
    margin-right: 2em;
}

.content-main {
    text-align: center;
}

.content-copy {
    margin-top: 3em;
    text-align: center;
}

.content-examples {
    margin-top: 5em;
    text-align: center;
}

.content-description {
    margin-top: 3em;
    text-align: center;
}

/* 入力フォーム */
.mw_wp_form input,
.mw_wp_form textarea {
    border-color: #aaaaaa !important;
    border-width: 1px;
    color: #404040;
    padding: .3rem;
}
.mw_wp_form textarea {
    width: 80%;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    background-color: #808080;
    border: medium none;
    color: #ffffff;
    line-height: 1;
    padding: 1rem 2rem;
    text-transform: uppercase;
    transition: all 0.3s ease-in-out 0s;
}
input[type="submit"]:hover {
    background-color: #f3ac00;
}
input[name="submitConfirm"],
input[name="send"] {
    /*float: right;*/
}
input[name="submitBack"] {
    margin-right: 2rem;
}

.mw_wp_form table {
    border-spacing: .2rem;
}
.mw_wp_form th {
    background-color: #cccccc;
    font-weight: normal;
    line-height: 1rem;
    padding: .5rem;
    vertical-align: middle;
    white-space: nowrap;
}

.mw_wp_form td {
    padding: .5rem;
}

.form-required {
    color: #c60019;
    margin-left: .2rem;
}
.form-notice .form-required {
    margin: 0 .2rem 0 0 !important;
}

.entry-content th {
    text-align: left;
    white-space: nowrap;
    width: 20%;
}
.entry-content td table { /* ネストされたテーブル */
    width: 100%;
}
.entry-content td th {
    width: 15%;
}

.caption-wrap {
    display: none;
    /*width: 30% !important;*/
    /*height: 10rem !important;*/
    /*top: 210px;*/
    /*!*margin-left: 75% !important;*!*/
    /*margin-left: 60% !important;*/
}

.caption-wrap .caption {
    display: none;
    /*font-size: .6em;*/
    /*text-align: left !important;*/
    /*padding: 20px 20px !important;*/
}

.caption-title {
    background-color: rgba(0, 0, 0, 0.5);
    font-size: .9em;
    position: absolute;
    top: 150px;
    width: 270px;
    color: #aaaaaa;
    padding: 20px 10px;
    left: 1124px;
}

.caption-title li {
    list-style: none;
}

/* 動画 */
.post-type-archive-movies h2 {
    text-align: center;
    font-weight: normal;
    font-size: 1em;
    border-color: #808080;
    border-style: solid;
    border-width: 0 0 1px;
    margin-bottom: 0;
}

.movie_item {
    width: 250px;
    margin-right: 25px;
}

.movie-label_new {
    background-color: #c60019;
    color: #ffffff;
    font-size: .8rem;
    line-height: 1rem;
    margin-left: .5rem;
    padding: .1rem .3rem;
}

.movie_item_title {
}

.video_play_new {
	position: relative;
	top: -246px;
	left: 397px;
	z-index: 1000;
}

.video_play {
	position: relative;
	top: -85px;
	left: 115px;
	z-index: 1000;
}

/* サイドナビゲーション */
#sidebar-left {
	float: left;
    margin-top: 60px;
	width: 200px;
}

#sidebar-left ul {
	list-style-type: none;
}

#sidebar-left li {
	background-image: url('/wp-content/uploads/2016/10/sidebar-nav_bg.png');
	background-repeat: repeat-x;
	/*height: 44px;*/
	line-height: 44px;
	padding-left: .5em;
}

.w5per { width: 5%; }
.w10per { width: 10%; }
.w15per { width: 15%; }
.w20per { width: 20%; }
.w30per { width: 30%; }
.w40per { width: 40%; }
.w50per { width: 50%; }
.w60per { width: 60%; }
.w65per { width: 65%; }
.w70per { width: 70%; }
.w80per { width: 80%; }
.w85per { width: 85%; }
.w90per { width: 90%; }
.w100per { width: 100%; }


/* 旧サイト */

.column {
    float: left;
}

hr {
    margin: .5em 0;
}

.nav-link-top {
    text-align: right;
    float: right;
}

@media screen and (max-width: 1023px) {
    header {
        max-width: 1023px;
    }

    .site-header-main {
        max-width: 1023px;
    }

    .top-block {
        max-width: 513px;
    }
}

@media screen and (max-width: 1000px) {
    #top-visual {
        /* margin-top: 100px; */
    }

    #content {
        margin-top: 125px;
    }
}

@media screen and (max-width: 767px) {
    header {
        max-width: 767px;
    }

    .site-header-main {
        max-width: 767px;
    }

    .top-block {
        max-width: 342px;
    }
}

@media screen and (max-width: 710px) {
    #content {
        margin-top: 165px;
    }
}

@media screen and (max-width: 556px) {
    #content {
        margin-top: 178px;
    }
}

@media screen and (max-width: 499px) {
    #content {
        margin-top: 192px;
    }
}

@media screen and (max-width: 420px) {
    #content {
        margin-top: 218px;
    }
}
