/*
 Theme Name:   Twenty Seventeen Child
 Template:     twentyseventeen
 Version:      1.0
*/
/* ここから上を消すと正しく動作しなくなることがあります。
 * ( Erasing the elements above here might cause system issues. )
*/

/* TABLE OF CONTENTS:
 *
 * 01 Theme custom ( どのサイズでも共通で適用されるスタイル )
 *    01.1 - Typography
 *    01.2 - Layout
 *    01.3 - Color
 *    01.4 - 追加パーツ
 *    01.5 - パンくずリスト
 *    01.6 - 記事ページ
 *    01.7 - CPT
 *    01.8 - アーカイブ
 * 02 Media Queries ( 特定のサイズで適用されるスタイル )
 *    02.1 - Mobile ( 768未満 )
 *    02.2 - Mobile ( 480px )
 *    02.3 - Tablet ( 768px )
 *    02.4 - Tablet ( 880px )
 *    02.5 - Desktop ( 1072px )
 *    02.6 - Desktop ( 1264px )
 * 03 Print ( 印刷時に適用されるスタイル )
 */

/* --------------------------------------------------------------------------------------------------------
   01 Theme custom
 *
 * どのサイズでも共通で適用されるスタイル
 *
-------------------------------------------------------------------------------------------------------- */


/* 01.1 Typography
------------------------------------------------------------
html[lang="ja"] body,
html[lang="ja"] button,
html[lang="ja"] input,
html[lang="ja"] select,
html[lang="ja"] textarea {
  font-family: "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
}

*/

a,
.entry-content a,
.entry-summary a,
.comment-content a,
.widget a,
.site-footer .widget-area a,
.posts-navigation a,
.widget_authors a strong,
.entry-title a,
.entry-meta a,
.page-links a,
.page-links a .page-number,
.entry-footer a,
.entry-footer .cat-links a,
.entry-footer .tags-links a,
.edit-link a,
.post-navigation a,
.logged-in-as a,
.comment-navigation a,
.comment-metadata a,
.comment-metadata a.comment-edit-link,
.comment-reply-link,
a .nav-title,
.pagination a,
.comments-pagination a,
.site-info a,
.widget .widget-title a,
.widget ul li a,
.site-footer .widget-area ul li a,
.site-footer .widget-area ul li a {
    text-decoration: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    transition: 0.35s;
}

.entry-content a {
    text-decoration: none;
}

a:focus,
a:hover,
.entry-content a:focus,
.entry-content a:hover,
.entry-summary a:focus,
.entry-summary a:hover,
.comment-content a:focus,
.comment-content a:hover,
.widget a:focus,
.widget a:hover,
.site-footer .widget-area a:focus,
.site-footer .widget-area a:hover,
.posts-navigation a:focus,
.posts-navigation a:hover,
.comment-metadata a:focus,
.comment-metadata a:hover,
.comment-metadata a.comment-edit-link:focus,
.comment-metadata a.comment-edit-link:hover,
.comment-reply-link:focus,
.comment-reply-link:hover,
.widget_authors a:focus strong,
.widget_authors a:hover strong,
.entry-title a:focus,
.entry-title a:hover,
.entry-meta a:focus,
.entry-meta a:hover,
.page-links a:focus .page-number,
.page-links a:hover .page-number,
.entry-footer a:focus,
.entry-footer a:hover,
.entry-footer .cat-links a:focus,
.entry-footer .cat-links a:hover,
.entry-footer .tags-links a:focus,
.entry-footer .tags-links a:hover,
.post-navigation a:focus,
.post-navigation a:hover,
.pagination a:not(.prev):not(.next):focus,
.pagination a:not(.prev):not(.next):hover,
.comments-pagination a:not(.prev):not(.next):focus,
.comments-pagination a:not(.prev):not(.next):hover,
.logged-in-as a:focus,
.logged-in-as a:hover,
a:focus .nav-title,
a:hover .nav-title,
.edit-link a:focus,
.edit-link a:hover,
.site-info a:focus,
.site-info a:hover,
.widget .widget-title a:focus,
.widget .widget-title a:hover,
.widget ul li a:focus,
.widget ul li a:hover {
    text-decoration: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.entry-content a img,
.comment-content a img,
.widget a img {
    -webkit-box-shadow: none;
    box-shadow: none;
}

.entry-content a:hover img,
.comment-content a:hover img,
.widget a:hover img {
    filter: contrast(130%);
}


/* 01.2 Layout
------------------------------------------------------------*/
.branding {
    background-color: #efefef;
    margin-bottom: 0.5em;
}
.branding p {
    max-width: 1000px;
    margin: 0 auto;
    font-size: 0.8em;
}
.wrap {
    max-width: calc(1000px + 6em);
}

.page-one-column .panel-content .wrap {
    max-width: calc(1000px + 6em);
    padding-top: 0;
}

.single-post:not(.has-sidebar) #primary,
.page.page-one-column:not(.twentyseventeen-front-page) #primary,
.archive.page-one-column:not(.has-sidebar) .page-header,
.archive.page-one-column:not(.has-sidebar) #primary {
    max-width: 1000px;
}

.site-util-sp div {
    position: fixed;
    top: 0;
    height: 55px;
    width: 55px;
    z-index: 99999;
    padding: 5px;
}
.site-util-sp div:first-child {
    right: 50px;
}
.site-util-sp div:last-child {
    right: 100px;
}

.site-branding-any {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.site-branding-any .site-logo {
    margin-right: auto;
}

.site-branding-any .site-logo img {
    max-height: 6vh;
    max-width: 40vw;
}

.site-branding-any .site-util {
    padding-left: 2em;
}

.site-branding-any .site-util img {
    max-height: 6vh;
}

.navigation-top {
    display: none;
    position: static;
}

.site-content {
    padding-top: 0;
    position: relative;
}

.page:not(.home) #content,
#content {
    padding: 0;
}

.site-main #mainImg {
    text-align: center;
    margin-right: calc((50vw - 50%) * -1);
    margin-left: calc((50vw - 50%) * -1);
    padding: 1em;
    width: 100vw;
}

.site-main #mainImg img {
    max-width: 100%;
    width: auto;
    vertical-align: bottom;
}

.page-header {
    padding: 0;
}

.page-header .page-title {
    font-size: 2em;
    margin-bottom: 0;
    padding-bottom: 0.5em;
}

.site-main .outer,
#toc_container {
    margin-right: calc((50vw - 50%) * -1);
    margin-left: calc((50vw - 50%) * -1);
    padding: 50px 4vw;
    width: 100vw;
}

.site-main .outer > .box {
    margin-right: auto;
    margin-left: auto;
    max-width: 1000px;
}

.box h1,
.box h2,
.box h3,
.box h4,
.box h5,
.box h6 {
    margin-bottom: 0;
}

.box > *:not(:first-child),
.box p {
    margin: 1em 0 0;
}

#mainImg ~ .wrap #primary,
#mainImg ~ .wrap #secondary,
#mainImg ~ .wrap .has-sidebar #primary,
#mainImg ~ .wrap .has-sidebar #secondary {
    padding-top: 1rem;
}

/* ▼アーカイブ */
.archive .site-main article,
.search .site-main article {
    border-top: 1px dotted rgba(0, 0, 0, .2);
    padding-top: 3em;
}

.archive .site-main article:after,
.search .site-main article:after {
    clear: both;
    content: "";
    display: block;
}

.archive .site-main article .entry-title,
.search .site-main article .entry-title {
    font-size: 1.4em;
}

.archive .site-main article .link-more,
.search .site-main article .link-more {
    text-align: right;
}

.archive .site-main article .link-more a,
.search .site-main article .link-more a {
    background: #c6c6c6;
    border: 1px solid #fff;
    box-shadow: 1px 1px 1px #ccc;
    color: #016fc5;
    padding: 0.5em 1em;
}

.archive #content .site-main article .link-more a:hover,
.search #content .site-main article .link-more a:hover,
.archive #content .site-main article .link-more a:focus,
.search #content .site-main article .link-more a:focus {
    background: #016fc5;
    color: #fff;
}

.archive .site-main article .link-more a:before,
.search .site-main article .link-more a:before {
    display: inline;
}

.nav-links > * {
    height: 40px;
    vertical-align: middle;
    width: 40px;
}

.page-numbers {
    border: #333 solid 1px;
    border-radius: 2px;
    color: #333;
    width: auto;
}

.page-numbers.current {
    background: #767676;
    color: #fff;
}

a.page-numbers:hover {
    background-color: #ddd;
}

.prev.page-numbers,
.next.page-numbers {
    padding: 0.35em 0.5em 0.4em;
}

/* ▲アーカイブ */

.archive .site-header,
.single.has-sidebar .site-header {
    margin-bottom: 30px;
}

/* ▼記事 */
.single-post .entry-title {
    border-bottom: 2px #653300 dotted;
    padding-bottom: 0.2em;
}

.entry-meta {
    font-weight: normal;
}

.entry-footer {
    border-color: #ccc;
    margin-top: 1em;
    padding: 1em 0;
}

.entry-footer .edit-link a.post-edit-link {}

.nav-previous {
    width: 50%;
    float: left;
}

.post-navigation .nav-next {
    float: right;
    margin-top: 0;
}

/* ▲記事 */

#secondary {
    padding: 0;
}

.has-sidebar #secondary .widget {
    padding-bottom: 1em;
}

.has-sidebar #secondary h3 {
    background: url(img/icon/s-heading-bg.png) no-repeat left top;
    margin-bottom: 0.5em;
    padding-left: 12px;
    padding-top: 12px;
    background-color: #fff;
    padding-bottom: 10px;
}

.has-sidebar #secondary .widget_archive select {
    height: 2em;
}

.has-sidebar #secondary ul {
    margin-left: 0;
}

.has-sidebar #secondary ul li,
.has-sidebar #secondary ul li:last-child {
    /*    border-bottom: 1px dotted #c26d3d;*/
    list-style: none;
    padding: 0.2em 0;
}

.has-sidebar #secondary .s-serv-menu ul li {
    background-position: left center;
    background-repeat: no-repeat;
    padding-left: 35px;
}

.has-sidebar #secondary a {
    color: #0a78cd;
    display: block;
    padding: 0.7em 0;
    text-decoration: none;
    position: relative;
}

.has-sidebar #secondary ul li a:before {
    color: #fff;
    content: ">";
    float: left;
    font-weight: bold;
    padding-right: 10px;
}

.has-sidebar #secondary ul {
    display: flex;
    list-style: none;
}

.has-sidebar #secondary li {
    padding: 5px;
}

.has-sidebar #secondary a {
    display: block;
    padding: 10px;
    padding-right: 20px;
}

.has-sidebar #secondary ul li a::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(to right, #217edd, #84c3f4);
    background-repeat: no-repeat;
    background-size: 15% 100%;
    background-position: left bottom;
    transition: all 0.35s ease-in;
    z-index: -100;
    border: 1px solid #84c3f4;
}

.has-sidebar #secondary ul li a:hover::after {
    background-size: 100% 100%;
    color: #ffffff;
}

.has-sidebar #secondary ul li a:hover {
    color: #fff;
}

.has-sidebar #secondary ul li a:hover::before {
    color: #fff;
}

footer {
    color: #e8e8e8;
}
.site-footer {
    border-top: none;
}
.footer-widget-2 {
    font-size: 0.9em;
}
.footer-widget-2 h3.widget-title {
    color: #e8e8e8;
    text-align: center;
    font-size: 0.9rem;
    display: inline-block;
    font-weight: normal;
    margin-bottom: 0.3em;
}
.footer-widget-2 ul li {
    display: inline-block;
    list-style: none;
    margin-right: 1em;
}

#menu-footer_nav .bough {
    display: block;
    cursor: pointer;
    position: relative;
}

#menu-footer_nav .bough:after {
    font-family: "Font Awesome 5 free";
    font-weight: 900;
    content: "\f067";
    color: #bee2f1;
    line-height: 1em;
    height: 1em;
    width: 1em;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
}

#menu-footer_nav .bough.open:after {
    content: "\f068";
}

.site-info {
    text-align: center;
}

#text-17,
#text-17 ul {
    padding-bottom: 0;
    margin-bottom: 0;
}

footer .widget_text ul {
    font-size: 0.9em;
    margin-left: 0;
}

#f-bar {
    display: none;
}
.footer-widget-2 .widget-title span {
    font-size: 0.7em;
}
.site-footer .widget-column.footer-widget-2 .widget_archive h3 {
    font-size: 16px;
    font-weight: normal;
}
.site-footer .widget-column.footer-widget-2 .widget_archive select {
    color: #333;
    height: 2em;
    text-shadow: none;
}
.site-footer .widget-column.footer-widget-2 .widget_archive select option {
    color: #333;
}
#menu-footer_nav > li a,
.footer-widget-2 a {
    color: #fff;
}

/* スマホのキャッシュ対応 */
.pc-on {
    display: none;
}

.sp-on {
    display: block;
}




/* 01.3 Color
------------------------------------------------------------*/
body,
h1,
h2,
h3 {
    color: #333;
}

body a {
    color: #016fc5;
    text-decoration: underline;
}

body a:focus,
body a:hover,
#content a:focus,
#content a:hover {
    color: #19448e;
    text-decoration: none;
}

#menu-footer_nav a:focus,
#menu-footer_nav a:hover {
    color: #e1b746;
    text-decoration: none;
}

.site-header {
    background: none;
}

.site-content-contain {
    background: none;
}

.site-footer {
    background: #015a9f;
}

.navigation-top {
    background: #016fc5;
    border-top: 1px #005ca3 solid;
    border-bottom: 1px #005ca3 solid;
}

#top-menu > li > a,
#top-menu > li > span {
    color: #FFF;
    text-decoration: none;
}

#top-menu > li > a:hover,
#top-menu > li > span:hover,
#top-menu > li[class*="current-menu"] > a,
#top-menu > li[class*="current-menu"] > span {
    background: rgb(29 105 178);
}

#top-menu > li > a:before,
#top-menu > li > span:before,
#site-navigation:after {
    border-right-color: #56b5ff;
    background: #005ca3;
}

#top-menu > li > a:after,
#top-menu > li > span:after {
    color: #ffba00;
}

#top-menu span.parent + div {
    background: rgba(45, 138, 181, 0.94);
}

#top-menu span.parent + div * {
    color: #EFECE4;
}

#top-menu span.parent + div a:hover {
    color: #fba14b;
}

#f-bar {
    background: #0e5790;
}

#f-bar * {
    color: #EEE;
}

.site-main #mainImg {
    background-color: #ededed;
}

.site-main div.outer.dark-color {
    background: rgba(37, 37, 37, 1);
    background: -webkit-linear-gradient(top, rgba(8, 8, 8, 1) 0%, rgba(37, 37, 37, 1) 50%, rgba(2, 2, 2, 1) 51%, rgba(2, 2, 2, 1) 100%);
    background: linear-gradient(to bottom, rgba(8, 8, 8, 1) 0%, rgba(37, 37, 37, 1) 50%, rgba(2, 2, 2, 1) 51%, rgba(2, 2, 2, 1) 100%);
}

.site-main div.outer.dark-color * {
    color: #FFF;
}

.site-main div.outer.bright-color {
    background: rgba(151, 154, 160, 1);
    background: -webkit-linear-gradient(top, rgba(163, 165, 170, 1) 0%, rgba(151, 154, 160, 1) 50%, rgba(182, 185, 189, 1) 51%, rgba(168, 170, 174, 1) 100%);
    background: linear-gradient(to bottom, rgba(163, 165, 170, 1) 0%, rgba(151, 154, 160, 1) 50%, rgba(182, 185, 189, 1) 51%, rgba(168, 170, 174, 1) 100%);
}

div.outer.color1 {
    background-color: #016cbf;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20id%3D%22pattern-box%22%3E%3Cdefs%3E%3Cpattern%20id%3D%22pattern%22%20x%3D%221%22%20y%3D%221%22%20width%3D%222%22%20height%3D%222%22%20patternUnits%3D%22userSpaceOnUse%22%20patternTransform%3D%22rotate(0)%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%2363ADE5%22%20stroke%3D%22%22%20stroke-width%3D%220%22%3E%3C%2Frect%3E%3C%2Fpattern%3E%3C%2Fdefs%3E%3Crect%20fill%3D%22%231081D7%22%20width%3D%22100%25%22%20height%3D%22100%25%22%3E%3C%2Frect%3E%3Crect%20fill%3D%22url(%23pattern)%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22100%25%22%20height%3D%22100%25%22%3E%3C%2Frect%3E%3C%2Fsvg%3E');
}
div.outer.color1 .catch .deco {
    color: #ffc800;
}
div.outer.color2 {
    background-image: url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22100%25%22%20height%3D%22100%25%22%20id%3D%22pattern-box%22%3E%3Cdefs%3E%3Cpattern%20id%3D%22pattern%22%20x%3D%221%22%20y%3D%221%22%20width%3D%222%22%20height%3D%222%22%20patternUnits%3D%22userSpaceOnUse%22%20patternTransform%3D%22rotate(0)%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%221%22%20height%3D%221%22%20fill%3D%22%23A8D7FB%22%20stroke%3D%22%22%20stroke-width%3D%220%22%3E%3C%2Frect%3E%3C%2Fpattern%3E%3C%2Fdefs%3E%3C!----%3E%3Crect%20fill%3D%22url(%23pattern)%22%20x%3D%220%22%20y%3D%220%22%20width%3D%22100%25%22%20height%3D%22100%25%22%3E%3C%2Frect%3E%3C%2Fsvg%3E');
}



/* 01.4 追加パーツ
------------------------------------------------------------*/
*[class*="col-"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    width: 100%;
}

*[class*="col-"] > * {
    margin-top: 0.8em;
}

*[class*="col-"] > * *:last-child {
    margin-bottom: 0;
}

*[class*="col-1"] > * {
    width: 100%;
}

*[class*="col-2"] > * {
    margin-left: calc(100% - 1px - (48% * 2));
    width: 48%;
}

*[class*="col-3"] > * {
    margin-left: calc((100% - 1px - (32% * 3)) / 2);
    width: 32%;
}

*[class*="col-4"] > * {
    margin-left: calc((100% - 1px - (23.5% * 4)) / 3);
    width: 23.5%;
}

*[class*="col-5"] > * {
    margin-left: calc((100% - 1px - (18.4% * 5)) / 4);
    width: 18.4%;
}

*[class*="col-2"] > *:nth-child(2n+1),
*[class*="col-3"] > *:nth-child(3n+1),
*[class*="col-4"] > *:nth-child(4n+1),
*[class*="col-5"] > *:nth-child(5n+1) {
    margin-left: 0;
}


/* 01.5 パンくずリスト
------------------------------------------------------------*/

.site-content-contain #breadcrumb {
    background: #ccc;
    padding: 5px 4vw;
    width: 100%;
}

.site-content-contain #breadcrumb ol {
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.site-content-contain #breadcrumb li {
    color: #333;
    display: inline;
    list-style: none;
    padding-right: 10px;
}

.site-content-contain #breadcrumb ol li + li:before {
    content: "＞";
    font-size: 0.9em;
    padding-right: 10px;
}

.site-content-contain #breadcrumb li a {
    color: #333;
}


/* 01.6 記事ページ
------------------------------------------------------------*/
/* 事例 */



/* 01.7 CPT
------------------------------------------------------------*/

/* 価格 */
.single-item_entry .entry-header {
    border-bottom: 1px #316745 solid;
    padding-bottom: 0 !important;
}


/* 作家 */
.single-sakka_entry .entry-header {
    border-bottom: 1px #316745 solid;
    padding-bottom: 0 !important;
}


/* アーカイブ */
#main .term_list {
    margin-top: 1em;
}

#main .term_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#main .term_list ul li {
    list-style: none;
    margin-bottom: 0.8em;
    width: 48%;
}

#main .term_list ul li a {
    background: #EDEDED;
    display: block;
    border: 1px #DADADA solid;
    text-align: center;
    padding: 0.5em;
}

#main .term_list ul li a:hover {
    background: rgba(49, 103, 69, 0.1);
    -webkit-box-shadow: 0 10px 15px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    box-shadow: 0 10px 15px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

/* 01.8 アーカイブ
------------------------------------------------------------*/
.screen-reader-text {
    display: none;
}


/* --------------------------------------------------------------------------------------------------------
   02 Media Queries
 *
 * 特定のサイズで適用されるスタイル
 *
-------------------------------------------------------------------------------------------------------- */


/* 02.0 Mobile ( 768未満 )
------------------------------------------------------------*/
@media screen and (max-width: 767px) {

    /* CPT：価格 */
    .single-item_entry .entry-header {
        padding-top: 40px !important;
    }


    /* CPT：作家 */
    .single-sakka_entry .entry-header {
        padding-top: 40px !important;
    }


    /* CPT：アーカイブ */
    #main .term_list ul {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    #main .archive_item li {
        padding: 10px;
    }

    #main .archive_item .post-wrap .pict {
        float: left;
        width: 42%;
    }

    #main .archive_item .post-wrap .goods,
    #main .archive_item .post-wrap .price {
        margin-left: 48%;
    }

    #main .archive_item .post-wrap .goods {
        font-size: 1.2em;
    }


    /* スマホ用ヘッダーお問合せバナー */
    #masthead {
        padding-top: 0;
        margin-bottom: 0;
    }

    .copy {
        font-size: 0.7em;
    }

}

/* End 02.0 max 767px */



/* 02.2 Mobile ( 480px )
------------------------------------------------------------*/
@media screen and (min-width: 30em) {

    .site-branding {
        padding-top: 0;
        padding-bottom: 0.5em;
    }

}

/* End 02.2 min 480px */



/* 02.3 Tablet ( 768px )
------------------------------------------------------------*/
@media screen and (min-width: 48em) {

    body {
        overflow-x: hidden;
    }

    .site-branding {
        margin-bottom: 72px;
    }
    .site-branding a {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
    }
    .site-util-sp {
        display: none !important;
    }
    .site-branding-any .site-logo img,
    .site-branding-any .site-util img {
        max-height: 100%;
    }

    .navigation-top {
        display: block;
    }

    .navigation-top .wrap {
        padding: 0;
    }

    #site-navigation {
        position: relative;
        z-index: 20;
    }

    #site-navigation:after {
        border-right-style: solid;
        border-right-width: 1px;
        content: "";
        display: block;
        width: 2px;
        position: absolute;
        top: 10px;
        bottom: 10px;
        right: 0;
    }

    #top-menu {
        display: table;
        width: 100%;
        max-width: 1040px;
        margin: 0 auto;
    }

    #top-menu a {
        font-weight: normal;
    }

    #top-menu > li {
        display: table-cell;
        list-style: none;
        text-align: center;
        vertical-align: middle;
    }

    #top-menu > li > a {
        display: block;
        padding: 1.5em;
        position: relative;
    }

    #top-menu span.parent {
        cursor: pointer;
        display: block;
        font-weight: bold;
        padding: 10px 5px;
        position: relative;
    }

    #top-menu > li > a:before,
    #top-menu > li > span:before {
        border-right-style: solid;
        border-right-width: 1px;
        content: "";
        display: block;
        width: 2px;
        position: absolute;
        top: 10px;
        bottom: 10px;
        left: 0;
    }

    #top-menu span.parent + div {
        display: none;
        text-align: left;
        padding: 1em;
        position: absolute;
        top: 100%;
        right: 0;
        left: 0;
        margin: 0 calc(((100vw - 100%) / 2) * -1);
    }

    #top-menu .sub-menu {
        display: none;
    }

    #top-menu span.parent + div .sub-menu {
        max-width: 1000px;
        margin: 0 auto;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    #top-menu .sub-menu li {
        list-style: none;
        padding: 0.3em;
        width: 33%;
    }

    #top-menu .sub-menu li.has_child {
        width: 100%;
    }

    #top-menu .sub-menu li.has_child > a svg {
        display: none;
    }

    #top-menu .sub-menu li.has_child > ul.sub-menu {
        padding-left: 1em;
    }

    body.has-sidebar .site-main #mainImg {
        margin-right: 0;
        margin-left: 0;
        padding-right: 1em;
        padding-left: 1em;
        width: 100%;
    }

    .page-header .page-title,
    .single-post .entry-title {
        margin-top: 10px;
    }

    .archive.page-one-column:not(.has-sidebar) .page-header {
        margin-bottom: 1em;
    }

    #secondary {
        padding: 1em 0 2em;
    }
    .site-footer {
        margin-top: 0;
        padding-bottom: 100px;
    }
    .site-footer .widget-area {
        padding-bottom: 0;
    }
    .site-footer .widget-column.footer-widget-1 .widget,
    .site-footer .widget-column.footer-widget-2 .widget {
        padding-bottom: 2rem;
    }
    .site-footer .widget-column.footer-widget-1 {
        width: 58%;
        color: #e8e8e8;
    }
    .site-footer .widget-column.footer-widget-2 {
        width: 36%;
    }
    .site-footer .widget-column.footer-widget-2 .widget_custom_html {
        border: 1px #0097a5 solid;
        padding-top: 1.5rem;
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }
    .site-footer .widget-column.footer-widget-2 .widget_custom_html .custom-html-widget *:last-child {
        margin-bottom: 0;
    }

    #menu-footer_nav > li {
        border: none;
        padding-top: 0;
        padding-bottom: 2em;
    }
    
    #menu-footer_nav>li {
        display: inline-block;
    }
    
    #menu-footer_nav .bough {
        cursor: default;
        font-size: 1rem;
        margin-bottom: 0.5em;
    }
    #menu-footer_nav .bough:after {
        content: none;
    }
    #menu-footer_nav .bough + ul {
        border-left: 1px #c5c5be solid;
        padding-right: 10px;
    }
    #menu-footer_nav {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
        -ms-grid-rows: auto;
        grid-template-rows: auto;
        grid-template-areas: "company serv guide";
    }
    #menu-footer_nav > li:nth-of-type(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1;
        grid-area: company;
    }
    #menu-footer_nav > li:nth-of-type(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 2;
        grid-area: serv;
    }
    #menu-footer_nav > li:nth-of-type(3) {
        -ms-grid-row: 1;
        -ms-grid-column: 3;
        grid-area: guide;
    }
    #menu-footer_nav > li:nth-of-type(4) {
        -ms-grid-row: 3;
        -ms-grid-column: 1;
        grid-area: blog;
    }
    #menu-footer_nav > li {
        border: none;
        padding-top: 0;
        padding-bottom: 2em;
    }
    #menu-footer_nav .bough {
        cursor: default;
        font-size: 1rem;
        margin-bottom: 0.5em;
    }
    #menu-footer_nav .bough:after {
        content: none;
    }
    #menu-footer_nav .bough + ul {
        border-left: 1px #8ebde2 solid;
    }

    .site-info {
        float: none;
        width: 100%;
    }

    #f-bar {
        display: block;
        height: 100px;
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 99;
    }

    #f-bar > div {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        height: 100%;
        max-width: 1000px;
        margin: 0 auto;
    }

    #f-bar > div > div {
        padding: 0 0.5em;
    }

    #f-bar img {
        max-height: 80px;
    }

    #f-bar > div > div.image {
        align-self: end;
    }

    #f-bar > div > div.image img {
        max-height: 154px;
        vertical-align: bottom;
    }

    /* パンくず */
    .site-content-contain #breadcrumb {
        height: auto;
        position: static;
        overflow: auto;
    }

    .has-sidebar .site-content #breadcrumb {
        background: none;
    }

    /* パンくず終わり */

    .page:not(.home) #content,
    #content {
        padding: 0;
    }

    body:not(.has-sidebar) .site-main .outer {
        padding: 70px 3em;
    }

    body.has-sidebar .site-main .outer {
        margin-right: 0;
        margin-left: 0;
        padding: 50px 0;
        width: 100%;
    }

    body.has-sidebar .site-main .outer[class*="color"] {
        padding-right: 1em;
        padding-left: 1em;
    }

    #mainImg ~ .wrap #primary,
    #mainImg ~ .wrap #secondary,
    #mainImg ~ .wrap .has-sidebar #primary,
    #mainImg ~ .wrap .has-sidebar #secondary {
        padding-top: 2rem;
    }

    .has-sidebar:not(.error404) #primary {
        width: 73%;
    }

    .has-sidebar #secondary {
        width: 24%;
    }

    .single.has-sidebar #secondary {
        margin-top: 22px;
    }

    *[class*="col-"] > * {
        margin-top: 1.6em;
    }

    *[class*="col-1-2"] > * {
        margin-left: calc(100% - 1px - (48% * 2));
        width: 48%;
    }

    *[class*="col-1-3"] > *,
    *[class*="col-2-3"] > *,
    *[class*="col-2-3"] > *:nth-child(2n+1) {
        margin-left: calc((100% - 1px - (32% * 3)) / 2);
        width: 32%;
    }

    *[class*="col-1-4"] > *,
    *[class*="col-2-4"] > *,
    *[class*="col-2-4"] > *:nth-child(2n+1) {
        margin-left: calc((100% - 1px - (23.5% * 4)) / 3);
        width: 23.5%;
    }

    *[class*="col-1-5"] > *,
    *[class*="col-2-5"] > *,
    *[class*="col-2-5"] > *:nth-child(2n+1) {
        margin-left: calc((100% - 1px - (18.4% * 5)) / 4);
        width: 18.4%;
    }

    *[class*="col-1-2"] > *:nth-child(2n+1),
    *[class*="col-1-3"] > *:nth-child(3n+1),
    *[class*="col-2-3"] > *:nth-child(3n+1),
    *[class*="col-1-4"] > *:nth-child(4n+1),
    *[class*="col-2-4"] > *:nth-child(4n+1),
    *[class*="col-1-5"] > *:nth-child(5n+1),
    *[class*="col-2-5"] > *:nth-child(5n+1) {
        margin-left: 0;
    }


    /* 記事ページ：事例 */


    /* アーカイブ */
    .archive .site-main article .post-thumbnail,
    .search .site-main article .post-thumbnail {
        float: left;
        width: 20.55%;
    }

    .archive .site-main article .post-thumbnail + .entry-content,
    .search .site-main article .post-thumbnail + .entry-content {
        float: right;
        width: 75%;
    }



    /* CPT：価格 */
    .single-item_entry .entry-header {
        padding-top: 90px !important;
    }



    /* CPT：作家 */
    .single-sakka_entry .entry-header {
        padding-top: 90px !important;
    }



    /* CPT：アーカイブ */
    #main .term_list ul li {
        margin-bottom: 0.5em;
        padding: 0 5px;
        width: 33%;
    }


    /* スマホのキャッシュ対応 */
    .pc-on {
        display: block;
    }

    .sp-on {
        display: none;
    }

    /* スマホ用ヘッダーお問合せバナー */
    #assist_nav {
        display: none;
    }

    .copy {
        font-size: 0.9em;
    }

}

/* End 02.3 min 768px */



/* 02.4 Tablet ( 880px )
------------------------------------------------------------*/
@media screen and (min-width: 55em) {

}

/* End 02.4 min 880px */



/* 02.5 Desktop ( 1072px )
------------------------------------------------------------*/
@media screen and (min-width: 67em) {

    .site {
        overflow: hidden;
    }
    .site-branding a {
        flex-direction: row;
        align-items: center;
    }
    .site-branding-any .site-logo img:last-child {
        padding-top: 15px;
        margin-left: 15px;
    }

    /* パンくず */
    .site-content-contain #breadcrumb ol {
        max-width: 1000px;
        margin: 0 auto;
        padding-right: 0;
        padding-left: 0;
        width: 100%;
    }

}

/* End 02.5 min 1072px */



/* 02.6 Desktop ( 1264px )
------------------------------------------------------------*/
@media screen and (min-width: 79em) {

    /* ここにスタイル */

}

/* End 02.6 min 1264px */






/* --------------------------------------------------------------------------------------------------------
   03 Print
 *
 * 印刷時に適用されるスタイル
 *
-------------------------------------------------------------------------------------------------------- */
@media print {

    /* ここにスタイル */

}

/* End 03 Print */
