@import url(font-awesome.min.css);
/* @import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,400italic,600italic|Roboto+Slab:400,700"); */
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(grid.css);
@import url(extra.css);


/* Reset */
    html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video
    {    margin: 0;        padding: 0;        border: 0;
    font-size: 100%;
    vertical-align: baseline;    }
    article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
     {display: block;    }

    body {line-height: 1;    }
    ol, ul {list-style: none;    }
    blockquote, q {    quotes: none;    }
    blockquote:before, blockquote:after, q:before, q:after {        content: '';        content: none;    }
    table {border-collapse: collapse;        border-spacing: 0;    }
    body { -webkit-text-size-adjust: none;    }

/* Box Model */
        *, *:before, *:after {            -moz-box-sizing: border-box;            -webkit-box-sizing: border-box;            box-sizing: border-box;        }
/* Basic */
    @-ms-viewport {        width: device-width;    }
    body {    -ms-overflow-style: scrollbar;    }
    body {background: #ffffff;}
    body.is-loading *, body.is-loading *:before, body.is-loading *:after, body.is-resizing *, body.is-resizing *:before, body.is-resizing *:after {
            -moz-animation: none !important;            -webkit-animation: none !important;            -ms-animation: none !important;            animation: none !important;            -moz-transition: none !important;            -webkit-transition: none !important;            -ms-transition: none !important;            transition: none !important;        }
    body{
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Noto Sans CJK JP", "Original Yu Gothic", "Yu Gothic", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
}
/* Type */

    body, input, select, textarea {
        color: #000;
        font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳＰゴシック',sans-serif;
        font-size: 16px;/*font-size: 12pt;から変更*/
        font-weight: 400;
        line-height: 1.65;
    }

        /*  5/30コメントアウト
        @media screen and (max-width: 1680px) {
            body, input, select, textarea {
                font-size: 13pt;}}

        @media screen and (max-width: 1280px) {
            body, input, select, textarea {
                font-size: 12pt;}}

        @media screen and (max-width: 360px) {
            body, input, select, textarea {
                font-size: 12pt;}}*/

    a {    -moz-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
        -webkit-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
        -ms-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
        transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
        border-bottom: #2e8c58 1px solid;/*5/16 border-bottom: dotted 1px;から変更*/
        text-decoration: none;
        color:#3747c2;
    }
    a p{
        color:#3747c2;
    }
    #sidebar a{
        color: #005303;/*5/20 sidebarの色指定*/
    }
    a:hover:not(.title_common_6),
    a p:hover{
        border-bottom-color: #3cb371; /*5/16 border-bottom-color: #590523; から変更*/
        color: #3cb371}/* 5/16 #32be04 !important;から変更*/
    a:hover strong {
        color: inherit;    }
    strong, b {    color: #6c7175;    font-weight: 600;    }
    em, i {    font-style: italic;    }

    p {    margin: 0 ; white-space: pre-line; color: #000; }
        @media screen and (min-width: 1681px) {p {font-size: 16px;}}/*{p {font-size: 1em;}}変更*/
        @media screen and (max-width: 1680px) {p {font-size: 16px;}}/*{p {font-size: 0.9375em;}}変更*/
        @media screen and (max-width: 1280px) {p {font-size: 16px;}}/*{p {font-size: 0.9375em;}}変更*/
        @media screen and (max-width:  980px) {p {font-size: 16px;}}/*{p {font-size: 0.875em;}}変更*/
        @media screen and (max-width:  736px) {p {font-size: 16px;}}/*{p {font-size: 0.875em;}}変更*/
        @media screen and (max-width:  480px) {p {font-size: 16px;}}/*{p {font-size: 0.875em;}}変更*/
    h1, h2, h3, h4, h5, h6 {
        color: #3d4449;
        font-weight: 700;
        line-height: 1.5;
        margin: 0 0 1em 0;
    }
    h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
        color: inherit;
        text-decoration: none;    }

    /*元のｃｓｓコメントアウト
    h1 {    font-size: 1.35em;    margin: 0 0 0.5em 0;    line-height: 1.3; color:#005303;}
    h2 {    font-size: 1.75em;}
    h3 {    font-size: 1.25em;}
    h4 {    font-size: 1.1em;    }
    h5 {    font-size: 0.9em;    }
    h6 {    font-size: 1.0em;    line-height: 1.9em;    text-indent: 1.0em;background-color: #fcd1a5;} */
    /*5/20変更*/

    h1 {    font-size: 1.75em;}
    h2 {    font-size: 1.35em;}
    h3 {    font-size: 1.25em;}
    h4 {    font-size: 1.1em;}
    h5 {    font-size: 1.1em;}
    h6 {    font-size: 1.1em;    line-height: 1.9em;    text-indent: 1.0em;background-color: #fcd1a5;}
.sapo{
background-color: #72dbfa; text-indent: 1.0em; line-height: 1.8em;
}
   /*　5/20コメントアウト　元のcss  
   @media screen and (max-width: 1980px) {
    h1 {    font-size: 120%;    }
    strong{font-size: 160%;}    }

    @media screen and (max-width: 1680px) {
    h1 {    font-size: 120%;    }
    strong{font-size: 140%;}    }

    @media screen and (max-width: 980px) {
    h1 {    font-size: 100%;}
    strong{font-size: 130%;}    }

    @media screen and (max-width: 736px) {
    h1 {    font-size: 1.125em;    line-height: 22px;}
    h2 {    font-size: 1.000em;}
    strong{font-size: 120%;}    }
 */
@media screen and (max-width: 736px) {
    #banner h1 ,
    header  h1 {    font-size: 1.6em;}
}

    sub {    font-size: 12px;position: relative;    top: 0.5em;    }
    sup {    font-size: 10px;position: relative;    top: -0.5em;}
    blockquote {    border-left: solid 3px rgba(210, 215, 217, 0.75);    font-style: italic;    margin: 0 0 2em 0;    padding: 0.5em 0 0.5em 2em;}
    code {    background: rgba(230, 235, 237, 0.25);        border-radius: 0em;        border: solid 1px rgba(210, 215, 217, 0.75);        font-family: "Courier New", monospace;        font-size: 0.9em;        margin: 0 0.25em;        padding: 0.25em 0.65em;    }
    pre {    -webkit-overflow-scrolling: touch;    font-family: "Courier New", monospace;        font-size: 0.9em;        margin: 0 0 2em 0;    }
    pre code {        display: block;            line-height: 1.75;            padding: 1em 1.5em;            overflow-x: auto;        }
    hr {    border: 0;    border-bottom: solid 1px rgba(210, 215, 217, 0.75);    margin: 2em 0;    }
    hr.major {    margin: 3em 0;    }
    .align-left {    text-align: left;}
    .align-center {    text-align: center;    }
    .align-right {    text-align: right;    }

/* Section/Article */

    section.special, article.special {
        text-align: center;
    }
    /* 5/20　header h1 {
        font-size: 110%;
    }
 */
    header p {
        font-size: 16px;
        font-weight:bold;

        letter-spacing: 0.075em;
    /* margin-top: -0.5em; 7/14コメントアウト  */
    /*    text-transform: uppercase;*/
        color: #004b96;/*5/19変更 2175b0 */
    }

    header.major > :last-child {
        border-bottom: solid 2px #78d1f3;
        /*display: inline-block;*/
        margin: 2em 0 1em;
        padding: 0 0.75em 0em 0;
    }

    header.main > :last-child {
        margin: 0 0 1em 0;
    }

/* Form */

    form {
        margin: 0 0 2em 0;
    }

    label {
        color: #3d4449;
        display: block;
        font-size: 0.9em;
        font-weight: 600;
        margin: 0 0 1em 0;
    }

    input[type="text"],
    input[type="password"],
    input[type="email"],
    input[type="tel"],
    input[type="search"],
    input[type="url"],
    select,
    textarea {
        -moz-appearance: none;
        -webkit-appearance: none;
        -ms-appearance: none;
        appearance: none;
        background: #ffffff;
        border-radius: 0em;
        border: none;
        border: solid 1px rgba(210, 215, 217, 0.75);
        color: inherit;
        display: block;
        outline: 0;
        padding: 0 1em;
        text-decoration: none;
        width: 100%;
    }

        input[type="text"]:invalid,
        input[type="password"]:invalid,
        input[type="email"]:invalid,
        input[type="tel"]:invalid,
        input[type="search"]:invalid,
        input[type="url"]:invalid,
        select:invalid,
        textarea:invalid {
            box-shadow: none;
        }

        input[type="text"]:focus,
        input[type="password"]:focus,
        input[type="email"]:focus,
        input[type="tel"]:focus,
        input[type="search"]:focus,
        input[type="url"]:focus,
        select:focus,
        textarea:focus {
            border-color: #78d1f3;
            box-shadow: 0 0 0 1px #78d1f3;
        }

    .select-wrapper {
        text-decoration: none;
        display: block;
        position: relative;
    }

        .select-wrapper:before {
            -moz-osx-font-smoothing: grayscale;
            -webkit-font-smoothing: antialiased;
            font-family: FontAwesome;
            font-style: normal;
            font-weight: normal;
            text-transform: none !important;
        }

        .select-wrapper:before {
            color: rgba(210, 215, 217, 0.75);
            content: '\f078';
            display: block;
            height: 2.75em;
            line-height: 2.75em;
            pointer-events: none;
            position: absolute;
            right: 0;
            text-align: center;
            top: 0;
            width: 2.75em;
        }

        .select-wrapper select::-ms-expand {
            display: none;
        }

    input[type="text"],
    input[type="password"],
    input[type="email"],
    input[type="tel"],
    input[type="search"],
    input[type="url"],
    select {
        height: 2.75em;
    }

    textarea {
        padding: 0.75em 1em;
    }

    input[type="checkbox"],
    input[type="radio"] {
        -moz-appearance: none;
        -webkit-appearance: none;
        -ms-appearance: none;
        appearance: none;
        display: block;
        float: left;
        margin-right: -2em;
        opacity: 0;
        width: 1em;
        z-index: -1;
    }

        input[type="checkbox"] + label,
        input[type="radio"] + label {
            text-decoration: none;
            color: #7f888f;
            cursor: pointer;
            display: inline-block;
            font-size: 1em;
            font-weight: 400;
            padding-left: 2.4em;
            padding-right: 0.75em;
            position: relative;
        }

            input[type="checkbox"] + label:before,
            input[type="radio"] + label:before {
                -moz-osx-font-smoothing: grayscale;
                -webkit-font-smoothing: antialiased;
                font-family: FontAwesome;
                font-style: normal;
                font-weight: normal;
                text-transform: none !important;
            }

            input[type="checkbox"] + label:before,
            input[type="radio"] + label:before {
                background: #ffffff;
                border-radius: 0em;
                border: solid 1px rgba(210, 215, 217, 0.75);
                content: '';
                display: inline-block;
                height: 1.65em;
                left: 0;
                line-height: 1.58125em;
                position: absolute;
                text-align: center;
                top: 0;
                width: 1.65em;
            }

        input[type="checkbox"]:checked + label:before,
        input[type="radio"]:checked + label:before {
            background: #3d4449;
            border-color: #3d4449;
            color: #ffffff;
            content: '\f00c';
        }

        input[type="checkbox"]:focus + label:before,
        input[type="radio"]:focus + label:before {
            border-color: #78d1f3;
            box-shadow: 0 0 0 1px #78d1f3;
        }

    input[type="checkbox"] + label:before {
        border-radius: 0em;
    }

    input[type="radio"] + label:before {
        border-radius: 100%;
    }

    ::-webkit-input-placeholder {
        color: #9fa3a6 !important;
        opacity: 1.0;
    }

    :-moz-placeholder {
        color: #9fa3a6 !important;
        opacity: 1.0;
    }

    ::-moz-placeholder {
        color: #9fa3a6 !important;
        opacity: 1.0;
    }

    :-ms-input-placeholder {
        color: #9fa3a6 !important;
        opacity: 1.0;
    }

    .formerize-placeholder {
        color: #9fa3a6 !important;
        opacity: 1.0;
    }

/* Box */

    .box {
        border-radius: 0em;
        border: solid 1px rgba(210, 215, 217, 0.75);
        margin-bottom: 2em;
        padding: 1.5em;
    }

        .box > :last-child,
        .box > :last-child > :last-child,
        .box > :last-child > :last-child > :last-child {
            margin-bottom: 0;
        }

        .box.alt {
            border: 0;
            border-radius: 0;
            padding: 0;
        }

/* Icon */

    .icon {
        text-decoration: none;
        border-bottom: none;
        position: relative;
    }

        .icon:before {
            -moz-osx-font-smoothing: grayscale;
            -webkit-font-smoothing: antialiased;
            font-family: FontAwesome;
            font-style: normal;
            font-weight: normal;
            text-transform: none !important;
        }

        .icon > .label {
            display: none;
        }

/* photos */

    .photos {
        border-radius: 0em;
        border: 0;
        display: inline-block;
        position: relative;
    }

        .photos img {
            border-radius: 0em;
            display: block;
        }

        .photos.left, .photos.right {
            max-width: 40%;
        }

            .photos.left img, .photos.right img {
                width: 100%;
            }

        .photos.left {
            float: left;
            padding: 0 1.5em 1em 0;
            top: 0.25em;
        }

        .photos.right {
            float: right;
            padding: 0 0 1em 1.5em;
            top: 0.25em;
        }

        .photos.fit {
            display: block;
            margin: 0 0 2em 0;
            width: 100%;
        }

            .photos.fit img {
                width: 100%;
            }

        .photos.main {
            display: block;
            margin: 0 0 3em 0;
            width: 100%;
        }

            .photos.main img {
                width: 100%;
            }

    a.photos {
        overflow: hidden;
    }

        a.photos img {
            -moz-transition: -moz-transform 0.2s ease;
            -webkit-transition: -webkit-transform 0.2s ease;
            -ms-transition: -ms-transform 0.2s ease;
            transition: transform 0.2s ease;
        }
/*
        a.photos:hover img {
            -moz-transform: scale(1.075);
            -webkit-transform: scale(1.075);
            -ms-transform: scale(1.075);
            transform: scale(1.075);
        }
*/
/* List */

    ol {
        list-style: decimal;
        margin: 0 0 2em 0;
        padding-left: 1.25em;
    }

        ol li {
            padding-left: 0.25em;
        }

    ul {
        /* list-style: disc; 5/8 コメントアウト*/
        margin: 0 0 2em 0;
        padding-left: 1em;
    }

        ul li {
            padding-left: 0.5em;
        }

        ul.alt {
            list-style: none;
            padding-left: 0;
        }

            ul.alt li {
                border-top: solid 1px rgba(210, 215, 217, 0.75);
                padding: 0.5em 0;
            }

                ul.alt li:first-child {
                    border-top: 0;
                    padding-top: 0;
                }

        ul.icons {
            cursor: default;
            list-style: none;
            padding-left: 0;
        }

            ul.icons li {
                display: inline-block;
                padding: 0 1em 0 0;
            }

                ul.icons li:last-child {
                    padding-right: 0;
                }

                ul.icons li .icon {
                    color: inherit;
                }

                    ul.icons li .icon:before {
                        font-size: 1.25em;
                    }

        ul.contact {
            list-style: none;
            padding: 0;
        }

            ul.contact li {
                text-decoration: none;
                border-top: solid 1px rgba(210, 215, 217, 0.75);
                margin: 1.5em 0 0 0;
                padding: 1.5em 0 0 3em;
                position: relative;
            }

                ul.contact li:before {
                    -moz-osx-font-smoothing: grayscale;
                    -webkit-font-smoothing: antialiased;
                    font-family: FontAwesome;
                    font-style: normal;
                    font-weight: normal;
                    text-transform: none !important;
                }

                ul.contact li:before {
                    color: #78d1f3;
                    display: inline-block;
                    font-size: 1.5em;
                    height: 1.125em;
                    left: 0;
                    line-height: 1.125em;
                    position: absolute;
                    text-align: center;
                    top: 1em;
                    width: 1.5em;
                }

                ul.contact li:first-child {
                    border-top: 0;
                    margin-top: 0;
                    padding-top: 0;
                }

                    ul.contact li:first-child:before {
                        top: 0;
                    }

                ul.contact li a {
                    color: inherit;
                }

        ul.actions {
            cursor: default;
            list-style: none;
            padding-left: 0;
            padding-top: 20px;/*5/20　追加*/
        }

            ul.actions li {
                display: inline-block;
                padding: 0 1em 0 0;
                vertical-align: middle;
            }

                ul.actions li:last-child {
                    padding-right: 0;
                }

            ul.actions.small li {
                padding: 0 0.5em 0 0;
            }

            ul.actions.vertical li {
                display: block;
                padding: 1em 0 0 0;
            }

                ul.actions.vertical li:first-child {
                    padding-top: 0;
                }

                ul.actions.vertical li > * {
                    margin-bottom: 0;
                }

            ul.actions.vertical.small li {
                padding: 0.5em 0 0 0;
            }

                ul.actions.vertical.small li:first-child {
                    padding-top: 0;
                }

            ul.actions.fit {
                display: table;
                margin-left: -1em;
                padding: 0;
                table-layout: fixed;
                width: calc(100% + 1em);
            }

                ul.actions.fit li {
                    display: table-cell;
                    padding: 0 0 0 1em;
                }

                    ul.actions.fit li > * {
                        margin-bottom: 0;
                    }

                ul.actions.fit.small {
                    margin-left: -0.5em;
                    width: calc(100% + 0.5em);
                }

                    ul.actions.fit.small li {
                        padding: 0 0 0 0.5em;
                    }

        ul.pagination {
            cursor: default;
            list-style: none;
            padding-left: 0;
        }

            ul.pagination li {
                display: inline-block;
                padding-left: 0;
                vertical-align: middle;
            }

                ul.pagination li > .page {
                    -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
                    -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
                    -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
                    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
                    border-bottom: 0;
                    border-radius: 0em;
                    display: inline-block;
                    font-size: 0.8em;
                    font-weight: 600;
                    height: 2em;
                    line-height: 2em;
                    margin: 0 0.125em;
                    min-width: 2em;
                    padding: 0 0.5em;
                    text-align: center;
                }

                    ul.pagination li > .page.active {
                        background-color: #78d1f3;
                        color: #ffffff !important;
                    }

                        ul.pagination li > .page.active:hover {
                            background-color: #f67878;
                        }

                        ul.pagination li > .page.active:active {
                            background-color: #f45c5c;
                        }

                ul.pagination li:first-child {
                    padding-right: 0.75em;
                }

                ul.pagination li:last-child {
                    padding-left: 0.75em;
                }

            @media screen and (max-width: 480px) {

                ul.pagination li:nth-child(n+2):nth-last-child(n+2) {
                    display: none;
                }

                ul.pagination li:first-child {
                    padding-right: 0;
                }

            }

    dl {
        margin: 0 0 2em 0;
    }

        dl dt {
            display: block;
            font-weight: 600;
            margin: 0 0 1em 0;
        }

        dl dd {
            margin-left: 2em;
            overflow: hidden;
            width: 100%;
            display: inline-block;/*6/25　-webkit-box;から変更*/
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            line-height: 26px;
        }

/* Table */

    .table-wrapper {
        -webkit-overflow-scrolling: touch;
        overflow-x: auto;
    }

    table {
        margin: 0 0 2em 0;
        width: 100%;
    }

       /*元のｃｓｓ一旦非表示
         table tbody tr {
            border: solid 1px rgba(210, 215, 217, 0.75);
            border-left: 0;
            border-right: 0;
        }

            table tbody tr:nth-child(2n + 1) {
                background-color: rgba(230, 235, 237, 0.25);
            }

        table td {
            padding: 0.35em 0.75em;
        }

        table th {
            color: #3d4449;
            font-size: 0.9em;
            font-weight: 600;
            padding: 0 0.75em 0.75em 0.75em;
            text-align: left;
        }

        table thead {
            border-bottom: solid 2px rgba(210, 215, 217, 0.75);
        }

        table tfoot {
            border-top: solid 2px rgba(210, 215, 217, 0.75);
        } */


/*通常table表示*/ /*5/7追加/////////////////////////////////////*/
        table thead tr th,
        table thead tr td,
        table tbody tr th,
        table tbody tr td{
            border: solid 1px rgba(210, 215, 217, 0.75);
        }
        table tbody tr td{
            color: #000;
            font-size: 14px;
            vertical-align: middle;
            padding: 0.35em 0.75em;
        }
        table tbody tr:nth-child(2n + 1) {
            /*/*background-color: rgba(230, 235, 237, 45%);/* 5/15 透明度変更　rgba(230, 235, 237, 0.25); */
            background-color: rgb(237, 236, 236);
        }
        table tr th{
            color: #fff;
            font-size: 14px;
            font-weight: 600;
            background-color: #a3a2a2;
            vertical-align: middle;
            padding: 0.5em 0.75em;
            text-align: left;
        }
        table thead tr th,
        table thead tr td{
            color: #fff;
            font-size: 14px;
            font-weight: 600;
            background-color: #787878;
            vertical-align: middle;
            border-bottom: solid 2px rgba(210, 215, 217, 0.75);
            text-align: left;
            padding: 0.5em 0.75em;
        }
        table tfoot {
            border-top: solid 2px rgba(210, 215, 217, 0.75);
        }
        /*table alt*/ /*左寄せ　フォント変更など*/
        table.alt {
            border-collapse: separate;
            font-family: arial, sans-serif;
        }

            table.alt tbody tr td {
                border: solid 1px rgba(210, 215, 217, 0.75);
                border-left-width: 0;
                border-top-width: 0;
            }

                table.alt tbody tr td:first-child {
                    border-left-width: 1px;
                }

            table.alt tbody tr:first-child td {
                border-top-width: 1px;
            }

            table.alt thead {
                border-bottom: 0;
            }

            table.alt tfoot {
                border-top: 0;
            }

/* Button */

    input[type="submit"],
    input[type="reset"],
    input[type="button"],
    button,
    .button {
        -moz-appearance: none;
        -webkit-appearance: none;
        -ms-appearance: none;
        appearance: none;
        -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
        -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
        -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
        transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
        background-color: transparent;
        border-radius: 0em;
        border: 0;
        box-shadow: inset 0 0 0 2px #78d1f3;
        color: #03b3f8 !important;/*5/7 #78d1f3から変更*/
        cursor: pointer;
        display: inline-block;
        font-size: 0.8em;
        font-weight: 700;
        height: 3.5em;
        letter-spacing: 0.075em;
        line-height: 3.5em;
        padding: 0 2.25em;
        text-align: center;
        text-decoration: none;
        text-transform: none;
        white-space: nowrap;
    }

        input[type="submit"]:hover,
        input[type="reset"]:hover,
        input[type="button"]:hover,
        button:hover,
        .button:hover {
            background-color: #03b3f8;
            color: #fff !important;
        }

        input[type="submit"]:active,
        input[type="reset"]:active,
        input[type="button"]:active,
        button:active,
        .button:active {
            background-color: rgba(245, 106, 106, 0.15);
        }

        input[type="submit"].icon:before,
        input[type="reset"].icon:before,
        input[type="button"].icon:before,
        button.icon:before,
        .button.icon:before {
        margin-right: 0.5em;
        }

        input[type="submit"].fit,
        input[type="reset"].fit,
        input[type="button"].fit,
        button.fit,
        .button.fit {
            display: block;
            margin: 0 0 1em 0;
            width: 100%;
        }

        input[type="submit"].small,
        input[type="reset"].small,
        input[type="button"].small,
        button.small,
        .button.small {
            font-size: 0.6em;
        }

        input[type="submit"].big,
        input[type="reset"].big,
        input[type="button"].big,
        button.big,
        .button.big {
            font-size: 1em;
            height: 3.65em;
            line-height: 3.65em;
        }

        input[type="submit"].special,
        input[type="reset"].special,
        input[type="button"].special,
        button.special,
        .button.special {
            background-color: #78d1f3;
            box-shadow: none;
            color: #ffffff !important;
        }

            input[type="submit"].special:hover,
            input[type="reset"].special:hover,
            input[type="button"].special:hover,
            button.special:hover,
            .button.special:hover {
                background-color: #f67878;
            }

            input[type="submit"].special:active,
            input[type="reset"].special:active,
            input[type="button"].special:active,
            button.special:active,
            .button.special:active {
                background-color: #f45c5c;
            }

        input[type="submit"].disabled, input[type="submit"]:disabled,
        input[type="reset"].disabled,
        input[type="reset"]:disabled,
        input[type="button"].disabled,
        input[type="button"]:disabled,
        button.disabled,
        button:disabled,
        .button.disabled,
        .button:disabled {
            -moz-pointer-events: none;
            -webkit-pointer-events: none;
            -ms-pointer-events: none;
            pointer-events: none;
            opacity: 0.25;
        }

/* Mini Posts */

    .mini-posts article {
        border-top: solid 1px rgba(210, 215, 217, 0.75);
        margin-top: 2em;
        padding-top: 2em;
    }

        .mini-posts article .photos {
            display: block;
            margin: 0 0 1.5em 0;
        }

            .mini-posts article .photos img {
                display: block;
                width: 100%;
            }

        .mini-posts article:first-child {
            border-top: 0;
            margin-top: 0;
            padding-top: 0;
        }

/* Features */

    .features {
        display: -moz-flex;
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -moz-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 2em -3em;
        width: calc(100% + 3em);
    }

        .features article {
            -moz-align-items: center;
            -webkit-align-items: center;
            -ms-align-items: center;
            align-items: center;
            display: -moz-flex;
            display: -webkit-flex;
            display: -ms-flex;
            display: flex;
            margin: 0 0 3em 3em;
            position: relative;
            width: calc(50% - 3em);
        }

            .features article:nth-child(2n - 1) {
                margin-right: 1.5em;
            }

            .features article:nth-child(2n) {
                margin-left: 1.5em;
            }

            .features article:nth-last-child(1), .features article:nth-last-child(2) {
                margin-bottom: 0;
            }

            .features article .icon {
                -moz-flex-grow: 0;
                -webkit-flex-grow: 0;
                -ms-flex-grow: 0;
                flex-grow: 0;
                -moz-flex-shrink: 0;
                -webkit-flex-shrink: 0;
                -ms-flex-shrink: 0;
                flex-shrink: 0;
                display: block;
                height: 10em;
                line-height: 10em;
                margin: 0 2em 0 0;
                text-align: center;
                width: 10em;
            }

                .features article .icon:before {
                    color: #78d1f3;
                    font-size: 2.75rem;
                    position: relative;
                    top: 0.05em;
                }

                .features article .icon:after {
                    -moz-transform: rotate(45deg);
                    -webkit-transform: rotate(45deg);
                    -ms-transform: rotate(45deg);
                    transform: rotate(45deg);
                    border-radius: 0rem;
                    border: solid 2px rgba(210, 215, 217, 0.75);
                    content: '';
                    display: block;
                    height: 7em;
                    left: 50%;
                    margin: -3.5em 0 0 -3.5em;
                    position: absolute;
                    top: 50%;
                    width: 7em;
                }

            .features article .content {
                -moz-flex-grow: 1;
                -webkit-flex-grow: 1;
                -ms-flex-grow: 1;
                flex-grow: 1;
                -moz-flex-shrink: 1;
                -webkit-flex-shrink: 1;
                -ms-flex-shrink: 1;
                flex-shrink: 1;
                width: 100%;
            }

                .features article .content > :last-child {
                    margin-bottom: 0;
                }

        @media screen and (max-width: 980px) {

            .features {
                margin: 0 0 2em 0;
                width: 100%;
            }

                .features article {
                    margin: 0 0 3em 0;
                    width: 100%;
                }

                    .features article:nth-child(2n - 1) {
                        margin-right: 0;
                    }

                    .features article:nth-child(2n) {
                        margin-left: 0;
                    }

                    .features article:nth-last-child(1), .features article:nth-last-child(2) {
                        margin-bottom: 3em;
                    }

                    .features article:last-child {
                        margin-bottom: 0;
                    }

                    .features article .icon {
                        height: 8em;
                        line-height: 8em;
                        width: 8em;
                    }

                        .features article .icon:before {
                            font-size: 2.25rem;
                        }

                        .features article .icon:after {
                            height: 6em;
                            margin: -3em 0 0 -3em;
                            width: 6em;
                        }

        }

        @media screen and (max-width: 480px) {

            .features article {
                -moz-flex-direction: column;
                -webkit-flex-direction: column;
                -ms-flex-direction: column;
                flex-direction: column;
                -moz-align-items: -moz-flex-start;
                -webkit-align-items: -webkit-flex-start;
                -ms-align-items: -ms-flex-start;
                align-items: flex-start;
            }

                .features article .icon {
                    height: 6em;
                    line-height: 6em;
                    margin: 0 0 1.5em 0;
                    width: 6em;
                }

                    .features article .icon:before {
                        font-size: 1.5rem;
                    }

                    .features article .icon:after {
                        height: 4em;
                        margin: -2em 0 0 -2em;
                        width: 4em;
                    }

        }

        @media screen and (max-width: 480px) {

            .features article .icon:before {
                font-size: 1.25rem;
            }

        }

/* Posts */

    .posts {
        display: -moz-flex;
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -moz-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 0 2em -6em;
        width: calc(100% + 6em);
    }

        .posts article {
            -moz-flex-grow: 0;
            -webkit-flex-grow: 0;
            -ms-flex-grow: 0;
            flex-grow: 0;
            -moz-flex-shrink: 1;
            -webkit-flex-shrink: 1;
            -ms-flex-shrink: 1;
            flex-shrink: 1;
            margin: 0 0 6em 6em;
            position: relative;
            width: calc(33.33333% - 6em);
        }

            .posts article:before {
                background: rgba(210, 215, 217, 0.75);
                content: '';
                display: block;
                height: calc(100% + 6em);
                left: -3em;
                position: absolute;
                top: 0;
                width: 1px;
            }

            .posts article:after {
                background: rgba(210, 215, 217, 0.75);
                bottom: -3em;
                content: '';
                display: block;
                height: 1px;
                position: absolute;
                right: 0;
                width: calc(100% + 6em);
            }

            .posts article > :last-child {
                margin-bottom: 0;
            }

            .posts article .photos {
                display: block;
                margin: 0 0 2em 0;
            }

                .posts article .photos img {
                    display: block;
                    width: 100%;
                }

        @media screen and (min-width: 1681px) {

            .posts article:nth-child(3n + 1):before {
                display: none;
            }

            .posts article:nth-child(3n + 1):after {
                width: 100%;
            }

            .posts article:nth-last-child(1), .posts article:nth-last-child(2), .posts article:nth-last-child(3) {
                margin-bottom: 0;
            }

                .posts article:nth-last-child(1):before, .posts article:nth-last-child(2):before, .posts article:nth-last-child(3):before {
                    height: 100%;
                }

                .posts article:nth-last-child(1):after, .posts article:nth-last-child(2):after, .posts article:nth-last-child(3):after {
                    display: none;
                }

        }

        @media screen and (max-width: 1680px) {

            .posts article {
                width: calc(50% - 6em);
            }

                .posts article:nth-last-child(3) {
                    margin-bottom: 6em;
                }

        }

        @media screen and (min-width: 481px) and (max-width: 1680px) {

            .posts article:nth-child(2n + 1):before {
                display: none;
            }

            .posts article:nth-child(2n + 1):after {
                width: 100%;
            }

            .posts article:nth-last-child(1), .posts article:nth-last-child(2) {
                margin-bottom: 0;
            }

                .posts article:nth-last-child(1):before, .posts article:nth-last-child(2):before {
                    height: 100%;
                }

                .posts article:nth-last-child(1):after, .posts article:nth-last-child(2):after {
                    display: none;
                }

        }

        @media screen and (max-width: 736px) {

            .posts {
                margin: 0 0 2em -4.5em;
                width: calc(100% + 4.5em);
            }

                .posts article {
                    margin: 0 0 4.5em 4.5em;
                    width: calc(50% - 4.5em);
                }

                    .posts article:before {
                        height: calc(100% + 4.5em);
                        left: -2.25em;
                    }

                    .posts article:after {
                        bottom: -2.25em;
                        width: calc(100% + 4.5em);
                    }

                    .posts article:nth-last-child(3) {
                        margin-bottom: 4.5em;
                    }

        }

        @media screen and (max-width: 480px) {

            .posts {
                margin: 0 0 2em 0;
                width: 100%;
            }

                .posts article {
                    margin: 0 0 4.5em 0;
                    width: 100%;
                }

                    .posts article:before {
                        display: none;
                    }

                    .posts article:after {
                        width: 100%;
                    }

                    .posts article:last-child {
                        margin-bottom: 0;
                    }

                        .posts article:last-child:after {
                            display: none;
                        }

        }

/* Wrapper */

    #wrapper {
        display: -moz-flex;
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -moz-flex-direction: row-reverse;
        -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        min-height: 100vh;
    }

/* Main */

    #main {
        -moz-flex-grow: 1;
        -webkit-flex-grow: 1;
        -ms-flex-grow: 1;
        flex-grow: 1;
        -moz-flex-shrink: 1;
        -webkit-flex-shrink: 1;
        -ms-flex-shrink: 1;
        flex-shrink: 1;
        width: 100%;
    }

        #main > .inner {
            padding: 0 6em 8em 6em ;
            margin: 0 auto;
            max-width: 110em;
        }

            #main > .inner > section {
                padding: 2.5em 0 1em 0 ;
                border-top: solid 2px rgba(210, 215, 217, 0.75);
            }

                #main > .inner > section:first-of-type {
                    border-top: 0 !important;
                    margin-bottom: 20px;
                }

        @media screen and (max-width: 1680px) {

            #main > .inner {
                padding: 0 5em 0.1em 5em ;
            }

                #main > .inner > section {
                    padding: 2em 0 1em 0 ;
                }

        }

        @media screen and (max-width: 1280px) {

            #main > .inner {
                padding: 0 4em 0.1em 4em ;
            }

                #main > .inner > section {
                    padding: 2em 0 1em 0 ;
                }

        }

        @media screen and (max-width: 736px) {

            #main > .inner {
                padding: 0 1em 0.1em 1em ;
            }

                #main > .inner > section {
                    padding: 2em 0 1em 0 ;
                }

        }

/* Sidebar */

    #search form {
        text-decoration: none;
        position: relative;
    }

        #search form:before {
            -moz-osx-font-smoothing: grayscale;
            -webkit-font-smoothing: antialiased;
            font-family: FontAwesome;
            font-style: normal;
            font-weight: normal;
            text-transform: none !important;
        }
/*
        #search form:before {
            -moz-transform: scaleX(-1);
            -webkit-transform: scaleX(-1);
            -ms-transform: scaleX(-1);
            transform: scaleX(-1);
            color: #7f888f;
            content: '\f002';
            cursor: default;
            display: block;
            font-size: 1.5em;
            height: 2em;
            line-height: 2em;
            opacity: 0.325;
            position: absolute;
            right: 0;
            text-align: center;
            top: 0;
            width: 2em;
        }
*/
        #search form input[type="text"] {
            padding-right: 2.75em;
            width: 210px;
        float: left;
        height: 44px;
        }

    #sidebar {
        -moz-flex-grow: 0;
        -webkit-flex-grow: 0;
        -ms-flex-grow: 0;
        flex-grow: 0;
        -moz-flex-shrink: 0;
        -webkit-flex-shrink: 0;
        -ms-flex-shrink: 0;
        flex-shrink: 0;
        -moz-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
        -webkit-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
        -ms-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
        transition: margin-left 0.5s ease, box-shadow 0.5s ease;
        background-color: #f5f6f7;
        font-size: 0.9em;
        position: relative;
        width: 26em;
    }

        #sidebar h2 {
            font-size: 1.38889em;
            display: block;
    }

        #sidebar > .inner {
            padding: 2.22222em 2.22222em 2.44444em 2.22222em ;
            position: relative;
            width: 26em;
        }

            #sidebar > .inner > * {
                border-bottom: solid 2px rgba(210, 215, 217, 0.75);
                margin: 0 0 1.5em 0;
                padding: 0 0 3.5em 0;
            }

                #sidebar > .inner > * > :last-child {
                    margin-bottom: 0;
                }

                #sidebar > .inner > *:last-child {
                    border-bottom: 0;
                    margin-bottom: 0;
                    padding-bottom: 0;
                }

            #sidebar > .inner > .alt {
                background-color: none;
                border-bottom: 0;
                margin: -2.22222em 0em 0em -2.22222em;
                padding: 2.22222em;
                width: calc(100% + 4.44444em);
            }
/*３本線toggleメニュー------------------------------------------------------------------------*/

        #sidebar .toggle {
            text-decoration: none;
            -moz-transition: left 0.5s ease;
            -webkit-transition: left 0.5s ease;
            -ms-transition: left 0.5s ease;
            transition: left 0.5s ease;
            -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
            border: 0;
            display: block;
            height: 7.5em;
            left: 26em;
            line-height: 7.5em;
            outline: 0;
            overflow: hidden;
            position: absolute;
            text-align: center;
            text-indent: 7.5em;
            top: 0;
            width: 6em;
            z-index: 850;
        }

        #sidebar .toggle:before {
            -moz-osx-font-smoothing: grayscale;
            -webkit-font-smoothing: antialiased;
            font-family: FontAwesome;
            font-style: normal;
            font-weight: normal;
            text-transform: none !important;
        }
        #sidebar .toggle:before {
            content: '\f0c9';
            font-size: 2rem;
            height: inherit;
            left: 0;
            line-height: inherit;
            position: absolute;
            text-indent: 0;
            top: 0;
            width: inherit;
        }

        /* #sidebar.inactive {
            margin-left: -26em;
        } 2026.02.06コメントアウト*/
        @media screen and (min-width: 1409px) and (max-width: 1530px) {
                #sidebar .toggle2{
                    display: block;
                }
            }
        @media screen and (min-width: 1409px) {
                #sidebar .toggle,
                #sidebar .toggle2{
                    display: none;
                }
            }
        @media screen and (max-width: 1678px) {

            #sidebar {
                width: 24em;
            }

                #sidebar > .inner {
                    padding: 1.66667em 1.66667em 1.33333em 1.66667em ;
                    width: 24em;
                }

                    #sidebar > .inner > .alt {
                        margin: -1.66667em 0em 0em -1.66667em;
                        padding: 1.66667em;
                        width: calc(100% + 3.33333em);
                    }

                #sidebar .toggle {
                    height: 5.25em;
                    left: 24em;
                    line-height: 5.25em;
                    text-indent: 5em;
                    width: 5em;
                }

                    #sidebar .toggle:before {
                        font-size: 1.5rem;
                    }

                #sidebar.inactive {
                    margin-left: -24em;
                }

        }

        @media screen and (max-width: 1530px) {

            #sidebar {
                box-shadow: 0 0 5em 0 rgba(0, 0, 0, 0.175);
                height: 100%;
                left: 0;
                position: fixed;
                top: 0;
                z-index: 800;
            }
                #sidebar.inactive {
                    box-shadow: none;
                }

                #sidebar > .inner {
                    -webkit-overflow-scrolling: touch;
                    height: 100%;
                    left: 0;
                    overflow-x: hidden;
                    overflow-y: auto;
                    position: absolute;
                    top: 0;
                }

                    #sidebar > .inner:after {

                        display: block;
                        width: 100%;
                    }

                #sidebar .toggle {
                    text-indent: 6em;
                    width: 6em;
                }

                    #sidebar .toggle:before {
                        font-size: 1.5rem;
                        margin-left: -0.4375em;
                    }

                body.is-loading #sidebar {
                    display: none;
                }

        }

        @media screen and (max-width: 736px) {
            #sidebar {
                width: 21.5em;
            }
            #sidebar > .inner {
                    width: 21.5em;
                }
            #sidebar .toggle {
                height: 4em;
                text-indent: 4.25em;
                width: 4.25em;
                line-height: 4.45em;
            }

                #sidebar .toggle:before {
                    color: #7f888f;
                    margin-left: -0.0625em;
                    margin-top: -0.25em;
                    font-size: 1.1rem;
                    z-index: 1;
                }

                #sidebar .toggle:after {
                    background: rgba(222, 225, 226, 0.75);
                    border-radius: 0em;
                    content: '';
                    height: 3em;
                    left: 0.5em;
                    position: absolute;
                    top: 0.5em;
                    width: 3em;
                }

        }

/* Header */
@media screen and (min-width: 1409px) and (max-width: 1530px) {
    #sidebar .toggle2 {
        display: block !important;
        position: fixed;
        /* ヘッダーの青い部分(header_top)の高さに合わせて調整 */
        top: 22px;
        right: 30px;
        /* ボタン自体のサイズを小さく固定 */
        width: 3em;
        height: 3em;
        line-height: 3em;
        text-indent: -9999px; /* 文字を完全に飛ばす */
        border: 0;
        outline: 0;
        z-index: 1100 !important;
        text-align: center;
    }

    /* 三本線（アイコン）を中央配置 */
    #sidebar .toggle2:before {
        content: '\f0c9';
        font-family: FontAwesome;
        font-size: 1.5rem;
        color: #7f888f;
        /* 絶対配置で親の真ん中に固定 */
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        text-indent: 0;      /* indentをリセット */
        display: flex;
        align-items: center;    /* 縦中央 */
        justify-content: center; /* 横中央 */
    }

    /* 背景のグレーボックス */
    #sidebar .toggle2:after {
        content: '';
        background: rgba(222, 225, 226, 0.75);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1; /* アイコンの下に敷く */
    }
}
/* @media screen and (min-width: 1409px) {

            #sidebar .toggle2 {
                    text-decoration: none;
                    -moz-transition: left 0.5s ease;
                    -webkit-transition: left 0.5s ease;
                    -ms-transition: left 0.5s ease;
                    transition: left 0.5s ease;
                    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
                    border: 0;
                    display: block;
                    height: 7.5em;
                    right: 0em;
                    line-height: 7.5em;
                    outline: 0;
                    overflow: hidden;
                    position: fixed;
                    text-align: center;
                    margin-top: -12px;
                    text-indent: 7.5em;
                    top: 0;
                    width: 6em;
                    z-index: 850;

                }

                    #sidebar .toggle2:before {
                        -moz-osx-font-smoothing: grayscale;
                        -webkit-font-smoothing: antialiased;
                        font-family: FontAwesome;
                        font-style: normal;
                        font-weight: normal;
                        text-transform: none !important;
                    }

                    #sidebar .toggle2:before {
                        content: '\f0c9';
                        font-size: 2rem;
                        height: inherit;
                        right:-0.65em;
                        line-height: inherit;
                        position: absolute;
                        text-indent: 0;
                        bottom: 0;
                        width: inherit;
                    }
} */
/*
            @media screen and (max-width: 1680px) {
                        #sidebar .toggle2 {
                            height: 5.25em;
                            right: 0em;
                            line-height: 5.25em;
                            text-indent: 5em;
                            width: 5em;
                        }

                            #sidebar .toggle2:before {
                                font-size: 1.5rem;
                            }

                }
*/



/* Header */
/* --- コンテンツが潜り込まないようにbodyに余白を入れる --- */
body {
    /* ヘッダーの高さに合わせて調整してください */
    /* header_top+ header_bottom ＝  */
    padding-top: 140px;
}
/*////////////////////////////////////////
header 上部緑色部分
////////////////////////////////////////*/
header#header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 800;
}
#header .header_top {
    display: block;
    text-align: right;
    background-color: #3cb371;
    padding: 20px 30px;
}
/*BCPOS文字*/
#header h1{
    display: inline-block;
    color: #fff;
    font-size: 2.2em;
    line-height: 1.2;
    letter-spacing: 0.05em;
    margin-bottom: 0;
}
/*BCPOS文字 ホバー設定*/
.header_top h1 a:hover{
    border-bottom: #fff 1px solid;
    color:#fff;
}
/*ユーザーガイド　文字*/
#header h1 span{
    font-size: 0.55em;
    font-weight: bold;
    vertical-align:baseline;
    letter-spacing: 0.05em;
}

/*//////////////////////////////////////////
header nav部分（背景クリーム）
//////////////////////////////////////////*/

/*main css 打消し*/
#header ul li{
    padding: 0;
}
#header ul{
    margin: 0;
}
/*背景色*/
.header_bottom{
    background-color: #edecec;
}
/*nav部分　横並び*/
#header nav ul{
    display: flex;
    width: auto;
    font-weight: 600;
    justify-content:center;
    padding: 0;
    margin: 0 auto;
}
#header nav ul li{
    /*width: 300px;*/
    width : calc(100% / 3);
    text-align: center;
    padding: 0;
    border-left: #6c7175 0.5px solid;
}
#header nav ul li span,
#header .header_top{
    color: #7e7e7e;
}
#header nav ul li a{
    display: block;
    width: 100%;
    height: auto;
    color: #7e7e7e;
    border-bottom: 1.5px solid transparent;/*ホバー時に要素の高さ合わせる*/
    border-bottom: none;
    padding: 8px 0;
    box-sizing: border-box;
    text-align: center;
}
#header nav ul li a span{
    position: relative;
    display: inline-block;
    line-height: 1.2;
}
/*ホバー時*/
#header nav ul li a:hover{
    opacity: 0.5;
    background-color: #dadada;
}
/* ホバー時に動く線を作る */
#header nav ul li a span::after {
    content: "";
    position: absolute;
    bottom: 0;      /* ★ここで下からの位置を自由に指定 */
    left: 0;        /* 線の長さを調整したい場合 */
    width: 100%;       /* 線の長さを調整したい場合 */
    height: 1.5px;
    background-color: #fff;
    display: none;    /* 通常時は消す */
}
#header nav ul li a:hover span::after{
    display: block;   /* ホバー時だけ出す */
    text-align: center;
}
#header .h_nav_list{
    background-color: #edecec;
    border-bottom: #6c7175 1px solid;
}
#header .tab-btn {
    background-color: inherit;
    cursor: pointer;
    font: inherit;
}

/*//////////////////////////////////////////
header nav 下層 切り替えコンテンツ部分
//////////////////////////////////////////*/

/* 切り替えコンテンツの初期状態///////////// */
#header .tab-content {
    display: none;
    background-color: #E5EFFD;
    /* アニメーションの準備 */
    opacity: 0;
    transform: translateY(-10px); /* 少し上に浮かせておく */
    transition: opacity 0.3s ease, transform 0.3s ease;
}
/*表示中（active）*/
#header .tab-content.active {
    display: block;
    opacity: 1;
    transform: translateY(0); /* 定位置に降りてくる */
    animation: fadeInDown 0.4s ease forwards; /* 0.4秒かけてふわっと出す */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    z-index: 10; /* 他の要素より上に表示 */
}
/* 表示中（active）の tab-btn　リスト項目 */
#header .header_bottom nav ul li a.tab-btn.active-btn {
    width: auto;
    background: #fff; /* ← ▼ 切り替えコンテンツ表示中のtab-btn色 */
    color: #7e7e7e;/* ← ▼ 切り替えコンテンツ表示中のtab-btn色 */
}
/* 文字だけでなく、中のspanも強制的に色を変える（念のため） */
#header .header_bottom nav ul li a.tab-btn.active-btn span {
    color: #7e7e7e !important;
}
#header nav ul li.active-li {
    background-color: #fff; /* ← ▼ 切り替えコンテンツ表示中の色 */
    color: #7e7e7e; /* ← ▼ 切り替えコンテンツ表示中の色 */
}
/* 切り替えコンテンツ　背景：薄水色部分　の横並び設定*/
#header .tab_c_flex{
    display: flex;
    gap: 20px;
    justify-content: center;
    padding: 3px;
}
/*切り替えコンテンツ　ホバー時*/
#header .tab_c_flex a:hover{
    color: #3747c2;
    opacity: 0.5;
}

/*レスポンシブ時のみ改行　通常時改行なし*/
.sp_only_br{
    display: none;
}


@media screen and (min-width: 1531px) {
    #header{
        padding-left: 350px;/*サイドバー表示のため余白*/
    }
}
@media screen and (min-width: 1409px) and (max-width: 1530px){
    #header .header_top{
        padding: 20px 80px;/*サイドバーのハンバーガーメニュー表示のため余白*/
    }
}
@media screen and (max-width: 935px) {
    body {
    /* ヘッダー固定のため　高さに合わせて調整 */
    /* header_top(px) + header_bottom(px) ＝  */
    padding-top: 180px;
    }
    #banner{
        padding: 3em 0 4em 0;
    }
    /*BCPOS　文字*/
    #header h1 {
        display: block; /* 横幅いっぱいを使い、改行を許容する */
        text-align: right; /* 右寄せを維持（header_topの設定に合わせる） */
    }
    /*ユーザーガイド　文字*/
    #header span {
        display: block;  /* 下の行として表示 */
        font-size: 0.6em; /* ユーザーガイドの文字を少し小さくしてバランス調整 */
        margin: 5px 0 0 0; /* 左マージンを消し、上の余白を微調整 */
    }
    /*背景ピンク部分　文字サイズ*/
    #header .header_bottom span{
        font-size: 0.9em;
    }
}
@media screen and (max-width: 530px) {
    /*幅530以下のみ改行させる*/
    .sp_only_br{
        display: block;
    }
    /*header固定のため　上部余白調整*/
    body {
    /* ヘッダーの高さに合わせて調整してください */
    /* header_top(px) + header_bottom(px) ＝  */
    padding-top: 200px;
    }
}

    /* .seavlogo {width: 90px; margin-bottom:-4px;    }
        #header > * {
            -moz-flex: 1;
            -webkit-flex: 1;
            -ms-flex: 1;
            flex: 1;
            margin-bottom: 0;
        }

        #header .logo {
            border-bottom: 0;
            color: inherit;
            font-family: "Roboto Slab", serif;
            font-size: 1.5em;
            margin: 0;
        }
        #header .icons {
            text-align: right;
        } */
    

    /* .bcbox { float:right;  margin: 0px;    }
    .bcposlogo {width: 112px; float: right; margin-top: 7px;    } */
/* 
        @media screen and (max-width: 1680px) {
            .seavlogo  {width: 120px; margin-bottom:-4px;    }
            #header .logo {
                font-size: 1.4em;
                margin: 0;
                white-space: nowrap;
            }
        }

        @media screen and (max-width: 736px) {

            #header {
                padding-top: 1.2em;
                padding-left: 4em;
            }
            .seavlogo  {width: 80px; margin-bottom:-4px;    }
                #header .logo {
                    font-size: 1.25em;
                    margin: 0;
                }

                #header .icons {
                    height: 5em;
                    line-height: 5em;
                    position: absolute;
                    right: -0.5em;
                    top: 0;
                }

        }
        @media screen and (max-width: 480px) {

            #header {
                display: block;
                padding: 1.3em 0em 0.8em 4em;
            }
            .seavlogo {width: 45px; margin-bottom:-3px;    }
                #header .logo {
                    font-size: 0.9em;
                    margin: 0;
                }

                #header .icons {
                    height: 5em;
                    line-height: 5em;
                    position: absolute;
                    right: -0.5em;
                    top: 0;
                }
                .bcbox {width: 0px; float:right;  margin: 0; padding: 0;}
                .bcposlogo {display: none;}
        } */

/* Banner */

@media screen and (min-width: 935px) {
#banner {
    padding: 6em 0 4em 0;
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
}
}

        #banner h1 {
            margin-top: -0.125em;
            margin-bottom: 30px;/*5/12　16pxから変更*/
        }

        #banner .content {
            -moz-flex-grow: 1;
            -webkit-flex-grow: 1;
            -ms-flex-grow: 1;
            flex-grow: 1;
            -moz-flex-shrink: 1;
            -webkit-flex-shrink: 1;
            -ms-flex-shrink: 1;
            flex-shrink: 1;
            /*width: 50%;*/
        }

        #banner .photos {
/*            -moz-flex-grow: 0;
            -webkit-flex-grow: 0;
            -ms-flex-grow: 0;
            flex-grow: 0;
            -moz-flex-shrink: 0;
            -webkit-flex-shrink: 0;
            -ms-flex-shrink: 0;
            flex-shrink: 0;*/
            display: block;
            margin: 0 0 2em 2em;
            width: 50%;
            min-width: 50%;
            /*white-space: pre-line;*/
        }

            #banner .photos img {
                height: auto;
/*                -moz-object-fit: cover;
                -webkit-object-fit: cover;
                -ms-object-fit: cover;
                object-fit: cover;
                -moz-object-position: center;
                -webkit-object-position: center;
                -ms-object-position: center;
                object-position: center;*/
                max-width: 550px;
                margin: 0 auto;
            }
            @media screen and (max-width: 934px) {
            #banner {
                padding: 6em 0 4em 0;
                display: -moz-block;
                display: -webkit-block;
                display: -ms-block;
                display: block;
            }
            #banner .photos {
            /*            -moz-flex-grow: 0;
                -webkit-flex-grow: 0;
                -ms-flex-grow: 0;
                flex-grow: 0;
                -moz-flex-shrink: 0;
                -webkit-flex-shrink: 0;
                -ms-flex-shrink: 0;
                flex-shrink: 0;*/
                display: block;
                margin: 2em auto;
                width: 70%;
                min-width: 70%;
                /*white-space: pre-line;*/
            }
            #banner .photos img {/*6/20追加　画像の上部余白のため*/
                margin:20px auto;
            }
            }
        @media screen and (orientation: portrait) {

            #banner {
                -moz-flex-direction: column-reverse;
                -webkit-flex-direction: column-reverse;
                -ms-flex-direction: column-reverse;
                flex-direction: column-reverse;
            }

                #banner h1 br {
                    display: none;
                }

                #banner .content {
                    -moz-flex-grow: 0;
                    -webkit-flex-grow: 0;
                    -ms-flex-grow: 0;
                    flex-grow: 0;
                    -moz-flex-shrink: 0;
                    -webkit-flex-shrink: 0;
                    -ms-flex-shrink: 0;
                    flex-shrink: 0;
                    width: 100%;
                }

                #banner .photos {
    /*                -moz-flex-grow: 0;
                    -webkit-flex-grow: 0;
                    -ms-flex-grow: 0;
                    flex-grow: 0;
                    -moz-flex-shrink: 0;
                    -webkit-flex-shrink: 0;
                    -ms-flex-shrink: 0;
                    flex-shrink: 0;
                    height: 25em;
                    max-height: 35vh;
                    min-height: 18em;*/
                    margin: 2.5em 0 0.8em 0;
                    width: 100%;
                    text-align: center;
                }

        }

        @media screen and (orientation: portrait) and (max-width: 480px) {

            #banner .photos {
                height: auto;
                margin-bottom: 20px;
            }

        }

/* Footer */

    #footer .copyright {
        color: #9fa3a6;
        font-size: 0.9em;
        text-align: center;
    }

        #footer .copyright a {
            color: inherit;
        }

/* Menu */

    #menu ul {
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        user-select: none;
        color: #3d4449;
        /*font-family: "Roboto Slab", serif;
        font-family: 400;*/
        /*letter-spacing: 0.075em;*/
        list-style: none;
        margin-bottom: 0;
        padding: 0;
        /* text-transform: uppercase;*/
    }

        #menu ul a, #menu ul span {
            border-bottom: 0;
            color: inherit;
            cursor: pointer;
            display: block;
            font-size: 1.1em;
            padding: 0.325em 0;
            font-weight: 700;
            text-shadow: none;
            color: #757575;
        }

            #menu ul a:hover, #menu ul span:hover {
                color: #3cb371;/*5/16　#78d1f3から変更*/
            }

            #menu ul a.opener, #menu ul span.opener {
                -moz-transition: color 0.2s ease-in-out;
                -webkit-transition: color 0.2s ease-in-out;
                -ms-transition: color 0.2s ease-in-out;
                transition: color 0.2s ease-in-out;
                text-decoration: none;
                -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
                position: relative;
            }

                #menu ul a.opener:before, #menu ul span.opener:before {
                    -moz-osx-font-smoothing: grayscale;
                    -webkit-font-smoothing: antialiased;
                    font-family: FontAwesome;
                    font-style: normal;
                    font-weight: normal;
                    text-transform: none !important;

                }

                #menu ul a.opener:before, #menu ul span.opener:before {
                    -moz-transition: color 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
                    -webkit-transition: color 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
                    -ms-transition: color 0.2s ease-in-out, -ms-transform 0.2s ease-in-out;
                    transition: color 0.2s ease-in-out, transform 0.2s ease-in-out;
                    color: #9fa3a6;
                    content: '\f078';
                    position: absolute;
                    right: 0;
                }
                /*　＞部分　*/
                #menu ul a.opener:hover:before, #menu ul span.opener:hover:before {
                    color: #3cb371;/*5/16　#78d1f3から変更*/
                }

                #menu ul a.opener.active + ul, #menu ul span.opener.active + ul {
        display: block;
        opacity: 1;
         animation-duration: 0.7s;
         animation-name: fade-in;
         -moz-animation-duration: 0.7s;
         -moz-animation-name: fade-in;
         -webkit-animation-duration: 0.7s;
         -webkit-animation-name: fade-in;
     }
     @keyframes fade-in {
         0% {
             display: none;
             opacity: 0;
         }

         1% {
             display: block;
             opacity: 0;
         }

         100% {
             display: block;
             opacity: 1;
         }
     }

     @-moz-keyframes fade-in {
         0% {
             display: none;
             opacity: 0;
         }

         1% {
             display: block;
             opacity: 0;
         }

         100% {
             display: block;
             opacity: 1;
         }
     }

     @-webkit-keyframes fade-in {
         0% {
             display: none;
             opacity: 0;
         }

         1% {
             display: block;
             opacity: 0;
         }

         100% {
             display: block;
             opacity: 1;
         }
     }
                

                #menu ul a.opener.active:before, #menu ul span.opener.active:before {
                    -moz-transform: rotate(-180deg);
                    -webkit-transform: rotate(-180deg);
                    -ms-transform: rotate(-180deg);
                    transform: rotate(-180deg);
                }

    #menu > ul > li {
        border-top: solid 1px rgba(210, 215, 217, 0.75);
        padding: 0.5em 0 0 0;
    }

        #menu > ul > li > ul {
            color: #9fa3a6;
            display: none;
            margin: 0.5em 0 1.5em 0;
            padding-left: 0.5em;
        }

            #menu > ul > li > ul a, #menu > ul > li > ul span {
                font-size: 1.1em;
                font-weight: 700;
                color: #7d7d7d;
            }

            #menu > ul > li > ul > li {
                margin: 0.125em 0 0 0;
                padding: 0.125em 0 0 0;
            }

        #menu > ul > li:first-child {
            border-top: 0;
            margin-top: 0;
            padding-top: 0;
        }
        #menu > ul > li {
        text-shadow: 3px 1px 0px #71dcf5;
        }

.search_push{
        float: left !important;
        margin: 0 !important;
        width: 44px !important;
        height: 40px !important;
        box-shadow: none !important;
        border: 1px solid #d6d6d6 !important;
        background-color: #fff !important;
        padding: 0px !important;
        background:url('img/searches.png') no-repeat scroll !important;
        margin-left: 5px !important;
    }
#search form input[type="text"] {
        padding-right: 2.75em !important;
        width: 195px !important;
        float: left !important;
        height: 40px !important;
        margin-right: -6px;
    }
/*
img.lazy{
    width: 100%;
    height: auto;
}
*/

.posts ul.actions  {
    margin-top: 10px;
  /*  position: absolute;*/
  /*  bottom: -30px;*/
}
.major h2{
  font-size: 1.25em;
}
.web_js{
    display: none;
}
h5{
    color: #777777;
    margin-bottom: 0px;
}
/*
@media screen and (max-width: 888px) {
#banner {
display:block;
}
}
*/
/*　5/26　コメントアウト　画像が左寄りになってしまうので 
@media screen and (min-width: 1680px) {
.photos img {
    float: left;
} 
}*/
.til_bk_blue {
    width: 97%;
    border-left: 10px solid #7ABCEB;
    margin: 25px 0px 16px 4px;
    padding: 6px 0px 3px 10px;
    border-bottom: 1px solid #CCC;
    line-height: 27px;
    background-color: #E5EDFF;
}
.til_bk_navy {
    width: 97%;
    border-left: 10px solid #657df3;
    margin: 25px 0px 16px 4px;
    padding: 6px 0px 3px 10px;
    border-bottom: 1px solid #CCC;
    line-height: 27px;
    background-color: #8facec;
        color:#fff;
}
.til_bk_green {
    width: 97%;
    border-left: 10px solid #94ca79;
    margin: 25px 0px 16px 4px;
    padding: 6px 0px 3px 10px;
    border-bottom: 1px solid #CCC;
    line-height: 27px;
    background-color: #e3f5cf;
}
.til_bk_orange {
    width: 97%;
    border-left: 10px solid #f3c238;
    margin: 25px 0px 16px 4px;
    padding: 6px 0px 3px 10px;
    border-bottom: 1px solid #CCC;
    line-height: 27px;
    background-color: #fff1cb;
}
.til_bk_gray {
    width: 97%;
    border-left: 10px solid #a2a2a2;
    margin: 25px 0px 16px 4px;
    padding: 6px 0px 3px 10px;
    border-bottom: 1px solid #CCC;
    line-height: 27px;
    background-color: #eee;
}
#fram_side {
position: fixed;
    top: 0;
}
@media screen and (max-width: 1280px){
#fram_side {
    box-shadow: 0 0 5em 0 rgba(0, 0, 0, 0.175);
        width:100%;
    height: 100%;
    z-index: 800;
}}

@media screen and (max-width: 1680px){
#fram_side {
    width: 24em;
        height: 100%;
        z-index: 800;
}}
@media screen and (min-width: 1681px){
#fram_side {
    width: 26em;
        height: 100%;
        z-index: 800;
}}

/* 余白調整用 */
.mar_to0{ margin-top: 0px;}.mar_to5{ margin-top: 5px;}
.mar_to10{ margin-top: 10px;}.mar_to15{ margin-top: 15px;}
.mar_to20{ margin-top: 20px;}.mar_to25{ margin-top: 25px;}
.mar_to30{ margin-top: 30px;}.mar_to35{ margin-top: 35px;}
.mar_to40{ margin-top: 40px;}.mar_to45{ margin-top: 45px;}
.mar_to50{ margin-top: 50px;}.mar_to55{ margin-top: 55px;}
.mar_to60{ margin-top: 60px;}.mar_to65{ margin-top: 65px;}
.mar_to75{ margin-top: 75px;}.mar_to80{ margin-top: 80px;}
.mar_to85{ margin-top: 85px;}.mar_to100{ margin-top: 100px;}


.Toggle{ margin-bottom: 0px;}.mar_bo5{ margin-bottom: 5px;}
.mar_bo10{ margin-bottom: 10px;}.mar_bo15{ margin-bottom: 15px;}
.mar_bo20{ margin-bottom: 20px;}.mar_bo25{ margin-bottom: 25px;}
.mar_bo30{ margin-bottom: 30px;}.mar_bo35{ margin-bottom: 35px;}
.mar_bo40{ margin-bottom: 40px;}.mar_bo45{ margin-bottom: 45px;}
.mar_bo50{ margin-bottom: 50px;}.mar_bo55{ margin-bottom: 55px;}
.mar_bo65{ margin-bottom: 65px;}.mar_bo70{ margin-bottom: 70px;}
.mar_bo75{ margin-bottom: 75px;}.mar_bo80{ margin-bottom: 80px;}
.mar_bo85{ margin-bottom: 85px;}.mar_bo90{ margin-bottom: 90px;}
.mar_bo95{ margin-bottom: 95px;}.mar_bo100{ margin-bottom: 100px;}
.mar_bo150{ margin-bottom: 150px;}
.mar_bo250{ margin-bottom: 250px;}




.next_more{
font-size: 0.9em;
height: 2.25em;
line-height: 2.25em;
font-family: "Open Sans", sans-serif;
font-weight: normal;
letter-spacing: 0.05em;
box-shadow: inset 0 0 0 2px #b6d4f1;
color: #1b7394 !important;
padding: 0 1em;
display: inline-block;
}
.next_more:hover {
background-color: rgba(184, 185, 220, 0.13);
}
.next_more:active {
background-color: rgba(72, 222, 253, 0.26);
}


.open{
    display: inline-block;
    cursor: default;
        list-style: none;
        padding-left: 0;
        margin-bottom: 10px    ;
}
#slideBox{
  padding: 10px;
  border: 1px #ccc solid;
    border-top: 0px;
    margin-bottom: 24px;
  display: none;
    position: relative;
}

.fa-angle-down{
font-size: 20px;
vertical-align:middle;
}

.sec_content{
    display: block !important;
    width: 100%;
    height: auto;
    position: relative;
    border: 0 !important;
}

.op_one{
    position: absolute;
    top: 0;
    left: 0;
}
.op_two{
    position: absolute;
    top: 0;
    left:164px;
}

/*クリックするとimgが表示*/
/*relは使用していないもので単独にする  
aタグ内にLink元を、style_display:none;追加で、photo表示なくす*/
.photo_chip{
    white-space: normal;
    color:#2e44eb;/*5/16 #8a0c34から色変更*/
}


@media screen and (min-width: 901px){
.left_box {
    width: 50%;
        height: auto;
        float: left;
        padding: 0px 10px;
}}
@media screen and (min-width: 901px){
.right_box {
    width: 50%;
        height: auto;
        float: left;
        padding: 0px 10px;
}}
@media screen and (max-width: 900px){
.left_box {
    width: 100%;
        height: auto;
        float: left;
}}
@media screen and (max-width: 900px){
.right_box {
    width: 100%;
        height: auto;
        float: left;
}}
.full_box {
    width: 100%;
    height: auto;
    float: left;
    padding: 0px 10px;
}
.table_cap{
    height: 55px;
    display: inline-block;
}
.red{
    color: #e61d1d;
}


.work_move {
    width: 97%;
    text-align: center;
    line-height: 28px;
    margin-top: 20px;
    border: 4px solid;
    border-color: #FA8888;
    color: #F00;
    padding: 10px 0px;
}
.work_in {
    width: 95%;
    margin: 5px;
}

.work {
    width: 95%;
    font-size: 14px;
    color: #FFF;
    text-align: center;
    line-height: 30px;
    margin: 5px;
    background-color: #F78686;
    border: 1px solid #ccc;
}
/*section 余白調節*/
.renzoku{
    border-top: 0 !important;
    margin-top: -30px;
}
.renzoku_2{/*5/12 追加　連続セクションの上部下線なし、マージン通常通り*/
    border-top: 0 !important;
    margin-top: 50px;
}

a{
    border: 0px;
}

/*　sidemenu　*/
div.index_list {
    display: flex;
}

div.index_list ul {
    padding: 0.5em;
    list-style-type: none;
    width: 50%;
}

div.index_list ul li {
    position: relative;
    padding: 0.5em 1em 0.5em 2.3em;
    margin-bottom:5px;
    border-bottom: 1px solid rgba(25,118,210,1);
}

div.index_list ul li:after,
div.index_list ul li:before{
    position: absolute;
    content:'';
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

div.index_list ul li:before {
    left: 0;
    width: 17px;
    height: 17px;
    background: rgba(25,210,118, 1);
}

div.index_list ul li:after {
    top: 1em;
    left: 0.5em;
    width: 14px;
    height: 14px;
    background: rgba(25,210,118, 0.5);
}

/* footer_product */

.footer_product {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 2em -6em;
    width: calc(100% + 6em);
}

.footer_product article {
    -moz-flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-grow: 0;
    flex-grow: 0;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    margin: 0 0 6em 6em;
    position: relative;
    width: calc(33.33333% - 6em);
}

.footer_product article:before {
    background: rgba(210, 215, 217, 0.75);
    content: '';
    display: block;
    height: calc(100% + 6em);
    left: -3em;
    position: absolute;
    top: 0;
    width: 1px;
}

.footer_product article:after {
    background: rgba(210, 215, 217, 0.75);
    bottom: -3em;
    content: '';
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    width: calc(100% + 6em);
}

.footer_product article > :last-child {
    margin-bottom: 0;
}

.footer_product article .photos {
    display: block;
    margin: 0 0 2em 0;
}

.footer_product article .photos img {
    display: block;
    width: 100%;
}

@media screen and (min-width: 1681px) {

    .footer_product article:nth-child(3n + 1):before {
        display: none;
    }

    .footer_product article:nth-child(3n + 1):after {
        width: 100%;
    }

    .footer_product article:nth-last-child(1), .footer_product article:nth-last-child(2), .footer_product article:nth-last-child(3) {
        margin-bottom: 0;
    }

    .footer_product article:nth-last-child(1):before, .footer_product article:nth-last-child(2):before, .footer_product article:nth-last-child(3):before {
        height: 100%;
    }

    .footer_product article:nth-last-child(1):after, .footer_product article:nth-last-child(2):after, .footer_product article:nth-last-child(3):after {
        display: none;
    }
}

@media screen and (max-width: 1680px) {
    .footer_product article {
        width: calc(50% - 6em);
    }

    .footer_product article:nth-last-child(3) {
        margin-bottom: 6em;
    }
}

@media screen and (min-width: 481px) and (max-width: 1680px) {
    .footer_product article:nth-child(2n + 1):before {
        display: none;
    }

    .footer_product article:nth-child(2n + 1):after {
        width: 100%;
    }

    .footer_product article:nth-last-child(1), .footer_product article:nth-last-child(2) {
        margin-bottom: 0;
    }

    .footer_product article:nth-last-child(1):before, .footer_product article:nth-last-child(2):before {
        height: 100%;
    }

    .footer_product article:nth-last-child(1):after, .footer_product article:nth-last-child(2):after {
        display: none;
    }
}

@media screen and (max-width: 736px) {
    .footer_product {
        margin: 0 0 2em -4.5em;
        width: calc(100% + 4.5em);
    }

    .footer_product article {
        margin: 0 0 4.5em 4.5em;
        width: calc(50% - 4.5em);
    }

    .footer_product article:before {
        height: calc(100% + 4.5em);
        left: -2.25em;
    }

    .footer_product article:after {
        bottom: -2.25em;
        width: calc(100% + 4.5em);
    }

    .footer_product article:nth-last-child(3) {
        margin-bottom: 4.5em;
    }
}

@media screen and (max-width: 480px) {

    .footer_product {
        margin: 0 0 2em 0;
        width: 100%;
    }

    .footer_product article {
        margin: 0 0 4.5em 0;
        width: 100%;
    }

    .footer_product article:before {
        display: none;
    }

    .footer_product article:after {
        width: 100%;
    }

    .footer_product article:last-child {
        margin-bottom: 0;
    }

    .footer_product article:last-child:after {
        display: none;
    }

    .footer_product ul.actions  {
    margin-top: 10px;
      /*  position: absolute;*/
      /*  bottom: -30px;*/
    }
}

/*index*/
.index {
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 2em -4em;
    width: calc(100% + 6em);
}

.index article {
    -moz-flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-grow: 0;
    flex-grow: 0;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    margin: 0 0 6em 6em;
    position: relative;
    width: calc(33.33333% - 6em);
}

.index article .ico {
    text-align: center;
}

.index article ul li {
    list-style-type: none;
}

@media screen and (max-width: 736px){
    .index img {
        margin: 0 auto;
        max-width:85%;
    }
}

@media screen and (max-width: 1280px){
    .index img {
        margin: 0 auto;
        max-width:40%;
    }
}

@media screen and (min-width: 1281px){
    .index img {
        margin: 0 auto;
        max-width:40%;
    }
}

.index article .photos {
    display: block;
    margin: 0 0 2em 0;
}

.index article .photos img {
    display: block;
    width: 100%;
}

@media screen and (min-width: 1681px) {
    .index {
        margin: 0 0 2em -1em;
        width: calc(100% + 2em);
    }
    .index article {
        margin: 0 0 2em 1em;
        width: calc(20% - 2em);
    }
    .index article:nth-child(3n + 1):before {
        display: none;
    }
    .index article:nth-child(3n + 1):after {
        width: 100%;
    }
    .index article:nth-last-child(1), .index article:nth-last-child(2), .index article:nth-last-child(3) {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 1680px) {
    .index article {
        width: calc(25% - 1em);
    }
    .index article:nth-last-child(3) {
        margin-bottom: 3em;
    }
}

@media screen and (min-width: 481px) and (max-width: 1680px) {
    .index {
        margin: 0 0 2em -1em;
        width: calc(100% + 6em);
    }
    .index article {
        margin: 0 0 2em 1em;
        width: calc(25% - 2em);
    }
}

@media screen and (max-width: 736px) {
    .index {
        margin: 0.5em 0 2em 0em;
        width: calc(100% + 2em);
    }
    .index article {
        margin: 0 0 2em 1em;
        width: calc(25% - 2em);
    }
}

@media screen and (max-width: 934px) {
    .index {
        margin: 0 0 2em -1em;
        width: calc(100% + 2em);
        font-size: 110%;
    }

    .index article {
        margin: 0 0 2em 1em;
        width: calc(33% - 2em);
    }
}

@media screen and (max-width: 640px) {
    .index {
        margin: 0 0 2em -1em;
        width: calc(100% + 2em);
        font-size: 110%;
    }
    .index article {
        margin: 0 0 2em 1em;
        width: calc(50% - 2em);
    }
}

.index article:before {
    background: none;
    content: '';
}

.index article:after {
    background: none;
}

.white_sp{ /*5/1 追加*/
    white-space: pre-line;
    margin-top: -20px;  /* white-space: pre-line;コード整理すると上部の空白ができるため‐20pxいれている*/
  }

html {
    scroll-padding-top: 120px;/*header 上部固定のため*/
}

/*リンクなし部分*/
.not_rink{
    pointer-events: none;
    text-decoration: line-through; /* 文字に打ち消し線を引く */
    opacity: 0.2;
}