@charset "utf-8";
/* ==========================================================================
Reset
========================================================================== */
html * {
    /*visibility: hidden;*/
}
html.wf-active * {
    visibility: visible;
}
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, l, ul, li, fieldset, form, label, legend, 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;
}
h1, h2, h3, h4, h5, h6, table, input, textarea, select, option, button {
    font-size: 100%;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: "";
    content: none;
}
article, aside, details, figcaption, figure, footer, header, menu, nav, section, main {
    display: block;
}
input, textarea {
    margin: 0;
    padding: 0;
}
ol, ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
caption, th {
    text-align: left;
}
img, a img {
    border: none;
}
a {
    cursor: pointer;
    text-decoration: none;
}
a:hover img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
/* Base
----------------------------------------------------------------- */
html {
    overflow-y: scroll;
    height: 100%;
}
body {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    min-height: 100%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}
@media print, screen and (min-width: 61.25em) {
    body {
        padding-left: 40px;
    }
}
@media print, screen and (min-width: 61.25em) {
    body.is-plain {
        padding-left: 0;
    }
}
body.browser-is-safari {
    display: block;
}
@media print, screen and (min-width: 61.25em) {
    body.is-sliding {
        padding-left: 240px;
    }
}
a:link, a:visited, a:hover, a:active {
    transition: color cubic-bezier(.215, .61, .355, 1) .15s;
    color: #333333;
}
@media only screen and (max-width: 47.9375em) {
    a:link, a:visited, a:hover, a:active {
        word-break: break-all;
    }
}
@media print, screen and (min-width: 48em) {
    a:link, a:visited, a:hover, a:active {
        word-break: break-all;
    }
}
@media print, screen and (min-width: 61.25em) {
    a:link, a:visited, a:hover, a:active {
        word-break: inherit;
    }
}
body, html {
    font-family: helvetica, arial, "hiragino kaku gothic pro", meiryo, "ms pgothic", sans-serif;
    font-size: 13px;
    min-width: 1280px;
    height: 100%;
    padding: 0;
}
p {
    font-size: 123.1%;
    line-height: 2;
    margin-bottom: 2.2rem;
}
/* ==========================================================================
Layout
========================================================================== */
.l-header {
    width: 100%;
    /*height: 105px;*/
    min-height: 90px;
    box-shadow: 0 2px 0px rgba(0, 0, 0, .1);
}
.l-header__container {
    position: relative;
    width: 1200px;
    height: 100%;
    min-height: 90px;
    margin: auto;
}
.l-navi__list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    margin-right: 20px;
    align-self: center;
    flex-grow: 2;
}
.l-navi__list li a {
    font-size: 108%;
    display: block;
    padding: 0 10px;
}
.l-navi__btn {
    float: right;
    font-size: 15px;
}
.l-navi__btn a {
    padding: 0 20px !important;
}
/* .l-header */
.l-contents__title {}
.l-contents__title--inner {
    text-align: center;
    position: relative;
    overflow: hidden;
    padding: 28px 0;
    z-index: 0;
}
.l-contents__title--inner::before {
    content: "";
    opacity: .3;
    filter: blur(8px);
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    z-index: -1;
    background: inherit;
    -webkit-background-size: cover;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.l-contents__title img {
    box-shadow: 0 0px 15px rgba(0, 0, 0, .4);
}
/* .l-contents__title */
.l-contents__container--cat {
    width: 1080px;
    margin: 0 auto;
}
.p-left-area {
    margin-right: 50px;
}
.c-link-txt--bread {
    margin-right: 15px;
}
.c-link-txt--bread:before {
    margin-right: 12px;
    content: "/";
    color: #999999;
}
.c-link-txt--bread:first-child:before {
    content: none;
}
/* .l-link-txt--bread */
.l-footer {
    width: 100%;
    background-color: #f3f4f4;
    border-top: 2px solid #e60211;
    padding: 30px 0;
}
.l-footer__container {
    position: relative;
    width: 1200px;
    height: 100%;
    margin: auto;
}
/* .l-footer */
/* ==========================================================================
Project
========================================================================== */
/* .p-header */
.p-content__inner {
    position: relative;
    overflow: visible;
    margin: 0 auto;
    padding: 40px 0;
}
.p-content__inner--center {
    position: relative;
    overflow: visible;
    width: 1080px;
    margin: 0 auto;
    padding: 20px 0;
}
.p-content__inner--left {
    position: relative;
    width: 906px;
    margin: 0 auto;
    padding: 20px 0;
}
.p-content__inner--right {
    position: relative;
    width: 236px;
    margin: 0 auto 0 40px;
    padding: 20px 0;
}
.p-archive-list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.p-archive-list li {
    width: 264px;
    margin-right: 40px;
    margin-bottom: 18px;
    background-color: #ffffff;
}
.p-archive-list li:nth-child(4n), .p-archive-list li:last-child {
    margin-right: 0;
}
.p-archive-list li a {
    display: block;
    width: 100%;
    height: 100%;
}
.p-archive-list li a:hover {
    filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
}
.p-logo-list {
    background-color: #ffffff;
    padding: 30px 0;
}
/*
.p-logo-list li {
    width: 236px;
    margin-bottom: 10px;
}*/
.p-logo-list li {
    width: 175px !important;
    margin-bottom: 10px;
}
.p-logo-list .p-content__photo {
    height: auto;
    min-height: 120px;
    margin-bottom: 0;
}
/*
.p-logo-list .p-content__photo img {
    max-width: 75%;
	height:auto;
max-height:75px;
}*/
/* .p-archive-list */
#l-search-container {
    margin-bottom: 50px;
}
/* .l-search-containe */
.p-content-block {
    width: 100%;
    margin: auto;
    padding: 45px 0;
}
/* .p-content__inner */
.p-content__photo {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    width: 100%;
    height: 190px;
    margin-bottom: 1rem;
    text-align: center;
    align-items: center;
    justify-content: center;
}
.p-content__date {
    font-size: 100%;
    padding: 0px 0px;
    color: #999999;
    text-align: right;
}
.p-content__title {
    line-height: 1.5 !important;
    padding: 8px 0px;
    text-align: left;
}
.p-content__title a {
    font-weight: normal !important;
}
.p-content__title--case {
    font-size: 123.1%;
    line-height: 1.5;
    margin-bottom: 1rem;
    padding: 4px 20px;
    text-align: left;
}
.p-content__bread-crumbs {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    clear: both;
    -js-display: flex;
    align-items: baseline;
}
/* .blog-list */
.p-content--article table, .p-table {
    width: 100%;
    margin: 0;
    margin-bottom: 2rem;
    padding: 0;
    border-spacing: 0;
    border-collapse: collapse;
}
.p-content--article table {
    border: 1px solid #cccccc;
}
.p-content--article table a, .p-table a {
    text-decoration: underline;
    color: #077cb3;
}
.p-content--article table th, .p-content--article table td, .p-table th, .p-table td {
    font-weight: normal;
    line-height: 1.7;
    padding: 7px 10px;
    text-align: left;
    border-bottom: 1px solid #cccccc;
    border-left: 1px solid #cccccc;
}
.p-table tr:first-child th, .p-table tr:first-child td {
    border-top: 1px solid #cccccc;
}
.p-table tr:last-child th, .p-table tr:last-child td {}
.p-table tr td:first-child {
    border-left: none;
}
.p-content--article table th, .p-table th {
    background-color: #8b8b8b;
    color: #ffffff;
    padding: 7px 10px;
    border-left: none;
}
.p-content--article table tr:nth-child(2n) th, .p-table tr:nth-child(2n) th, .p-table tr:nth-child(2n) td {
    background-color: #f2f2f2;
}
.p-btn-more a {
    font-size: 123.1%;
    display: block;
    width: 380px;
    margin: auto;
    padding: 12px 0;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    text-decoration: none;
    border: 3px solid #ffffff;
    border-radius: 4px;
    background-color: #ffffff;
}
.p-btn-more a:hover {
    -webkit-transition: all .3s;
    transition: all .3s;
    border: 3px solid #ef211a;
}


/* スライドバナー */
.p-banner-block {
  position: fixed;
  right: 0;
  bottom: 0;
  padding-right: 0px;
  width: 300px;
  z-index: 10000;
	
	margin-bottom: 0;
}
.p-banner-gtm {
	display: block;
	margin-bottom: 35px;
}
.p-banner-block .c-btn-cv a:before {
	border-radius: .5rem .5rem 0 0 ;
}
.p-banner-block .c-btn-cv a:after {
	border-radius: .5rem .5rem 0 0 ;
}

.p-banner-block img {
  width: 100%;
  height: auto;
  vertical-align: baseline;
}

@media screen and (min-width: 0px) and (max-width: 1280px) {
    .p-banner-block {
        display: none !important;
    }
}


/* ==========================================================================
Component
========================================================================== */
.c-heading-1, .p-content--article h1 {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 292%;
    font-weight: 200;
    margin-bottom: 3rem;
}
.c-heading-1 strong, .p-content--article h1 strong {
    font-weight: 200;
}
.c-heading-2, .c-heading-2--center, .p-content--article h2 {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 200%;
    font-weight: 500;
    position: relative;
    display: inline-block;
    width: 100%;
    margin-top: 3rem;
    margin-bottom: 3.5rem;
    letter-spacing: .05rem;
}
.c-heading-2 strong, .p-content--article h2 strong {
    font-weight: 500;
    color: #e60311;
}
.c-heading-2:before, .c-heading-2--center:before, .p-content--article h2:before {
    position: absolute;
    bottom: -20px;
    left: 0;
    display: inline-block;
    width: 96px; /*下線の幅*/
    height: 4px; /*下線の太さ*/
    content: "";
    background: -webkit-gradient(linear, left top, right bottom, from(#e60012), to(#e65100));
    background: -moz-linear-gradient(left, #e60012, #e65100);
    background: linear-gradient(left, #e60012, #e65100);
}
.c-heading-2--center:before {
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50%); /*位置調整*/
}
.c-heading-3 {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 215%;
    font-weight: 400;
    position: relative;
    margin-top: 60px;
    margin-bottom: 25px;
    text-align: center;
    height: 59px;
    line-height: 60px;
    background: url("../images/img_bg_brackets.png") no-repeat left top;
}
.p-content--article h3, .c-heading-4 {
    font-family: "Noto Sans JP", sans-serif;
    margin-top: 0;
    margin-bottom: 1.5rem;
    font-size: 153.8%;
    font-weight: 400;
    background-color: #ededed;
    border-radius: 3px;
    padding: 8px 15px;
}
.p-content--article h4 {
    font-family: "Noto Sans JP", sans-serif;
    margin-top: 0;
    margin-bottom: 1.5rem;
    font-size: 138.5%;
    font-weight: 500;
    padding: 8px 0px;
    border-bottom: 1px solid #E0E0E0;
}
/* .c-heading-3 */
.c-link-txt a {
    background-size: 5px 7px;
}
.c-link-txt a:hover {
    text-decoration: underline;
}
.c-inline {
    display: inline-block;
}
.c-inline-list {
    letter-spacing: -.40em;
}
.c-inline-list li {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: normal;
}
.c-btn-pagetop a {
    display: block;
    padding: 21px 0 25px 0;
    text-align: center;
    background-color: #e2e2e2;
}
/* icon*/
/* align */
.c-font8 {
    font-size: 61.5% !important;
}
.c-font10 {
    font-size: 77% !important;
}
.c-font11 {
    font-size: 85% !important;
}
.c-font12 {
    font-size: 93% !important;
}
.c-font13 {
    font-size: 100%;
}
.c-font14 {
    font-size: 108%;
}
.c-font15 {
    font-size: 116%;
}
.c-font16 {
    font-size: 123.1% !important;
}
.c-font18 {
    font-size: 138.5%;
}
.c-font20 {
    font-size: 153.8% !important;
}
.c-font22 {
    font-size: 169%;
}
.c-font24 {
    font-size: 185%;
}
.c-font26 {
    font-size: 200%;
}
.c-font28 {
    font-size: 215%;
    font-family: "Noto Sans JP", sans-serif;
}
.c-font32 {
    font-size: 246.1%;
    font-family: "Noto Sans JP", sans-serif;
}
.c-font35 {
    font-size: 269%;
    font-family: "Noto Sans JP", sans-serif;
}
.c-font38 {
    font-size: 292%;
    font-family: "Noto Sans JP", sans-serif;
}
.c-font40 {
    font-size: 307.7%;
    font-family: "Noto Sans JP", sans-serif;
}
.c-font-noto {
    font-family: "Noto Sans JP", sans-serif;
}
/* font-size */
.c-scroll-box {
    border: 1px solid #cccccc;
    padding: 25px;
    overflow-y: scroll;
    width: 100%;
    margin-bottom: 30px;
}
.c-line0 {
    line-height: 0;
}
.c-txt-center, .c-txt-center th, .c-txt-center td {
    text-align: center;
    text-align: -webkit-center;
}
.c-txt-left {
    text-align: left !important;
}
.c-txt-right {
    text-align: right;
}
/* text-align */
.c-border-top {
    border-top: 1px solid #cccccc;
}
.c-border-none {
    border: none;
}
/* border */
.c-txt-white {
    color: #ffffff;
}
.c-txt-red {
    color: #e60311;
}
.c-txt-blue {
    color: #174488;
}
.c-txt-orange {
    color: #fb7323;
}
.c-txt-bold {
    font-weight: bold;
}
.c-txt-normal {
    font-weight: normal !important;
}
.c-txt-normal {
    font-weight: normal;
}
.c-justify-center {
    justify-content: center !important;
}
.c-justify-left {
    justify-content: left !important;
}
.c-align-items-center {
    align-items: center !important;
}
.c-align-items-top {
    align-items: top;
}
.c-align-items-baseline {
    align-items: baseline;
}
/* font-color */
.c-pl0 {
    padding-left: 0 !important;
}
.c-pb0 {
    padding-bottom: 0 !important;
}
.c-pb30 {
    padding-bottom: 30px;
}
.c-pt0 {
    padding-top: 0;
}
.c-pt30 {
    padding-top: 30px;
}
.c-pt60 {
    padding-top: 60px;
}
.c-pt15 {
    padding-top: 15px;
}
.c-pt40 {
    padding-top: 40px;
}
.c-mr0 {
    margin-right: 0 !important;
}
.c-mr35 {
    margin-right: 35px;
}
.c-mr60 {
    margin-right: 60px;
}
.c-mt15 {
    margin-top: 15px;
}
.c-mt30 {
    margin-top: 30px;
}
.c-mt45 {
    margin-top: 45px;
}
.c-mt60 {
    margin-top: 60px !important;
}
.c-mb5 {
    margin-bottom: 5px;
}
.c-mb0 {
    margin-bottom: 0 !important;
}
.c-mb15 {
    margin-bottom: 15px;
}
.c-mb20 {
    margin-bottom: 20px;
}
.c-mb30 {
    margin-bottom: 30px;
}
.c-mb45 {
    margin-bottom: 45px;
}
.c-mb60 {
    margin-bottom: 60px;
}
.c-mb80 {
    margin-bottom: 80px;
}
.c-mt0 {
    margin-top: 0;
}
.c-ml0 {
    margin-left: 0;
}
.c-m0 {
    margin: 0;
}
.c-ms0 {
    margin-right: 0;
    margin-left: 0;
}
.c-msa {
    margin-right: auto;
    margin-left: auto;
}
/* margin */
.c-bg-black {
    background-color: #000000;
}
.c-bg-white {
    background-color: #ffffff;
}
.c-bg-grey {
    background-color: #8b8b8b !important;
}
.c-bg-lightgrey {
    background-color: #f7f7f7;
}
.c-bg-blue {
    background-color: #174488;
}
.c-bg-red {
    background-color: #ff7f7f;
}
.c-border-none {
    border: none;
}
.c-display-none {
    display: none;
}
.c-display-block {
    display: block;
}
.c-display-flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
}
.c-display-flex--center {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-self: center;
    align-items: center;
    justify-content: space-between;
}
.c-btn-cv {
    clear: both;
}
.c-btn-cv a {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 108%;
    font-weight: 500;
    line-height: 3rem;
    position: relative;
    z-index: 0;
    display: inline-block;
    padding: 0 30px;
    text-align: center;
    color: #ffffff;
}
.c-btn-cv a:before {
    top: 0;
    position: absolute;
    z-index: -1;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 5rem;
    background: linear-gradient(90deg, #e60012, #e65100);
}
.c-btn-cv a:after {
    top: 0;
    position: absolute;
    z-index: -2;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    border-radius: 5rem;
    background: linear-gradient(-90deg, #ff2532, #ff7831);
    box-shadow: 0 3px 5px rgb(0, 0, 0, .2) inset;
}
.c-btn-cv a:hover:before {
    opacity: 0;
}
.c-btn-all a {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 108%;
    font-weight: 500;
    line-height: 3rem;
    display: inline-block;
    padding: 0 60px;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    border: 2px solid #ffffff;
    border-radius: 3.6rem;
    background-color: #ffffff;
    filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
}
.c-btn-all a:hover {
    -webkit-transition: all .3s;
    transition: all .3s;
    color: #ffffff;
    background: none;
    filter: none;
}
.c-btn-detail {
    text-align: center;
}
.c-btn-detail a {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 108%;
    font-weight: 300;
    line-height: 3rem;
    display: inline-block;
    padding: 0 60px;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    color: #ffffff;
    border: 2px solid #4c4c4c;
    border-radius: 3.6rem;
    background-color: #4c4c4c;
    filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
}
.c-btn-detail a:hover {
    -webkit-transition: all .3s;
    transition: all .3s;
    color: #000000;
    border: 2px solid #4c4c4c;
    background: none;
    filter: none;
}
.c-btn-hover a {
    font-size: 0;
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s;
    filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .3));
}
.c-btn-hover a:hover {
    -webkit-transition: all .3s;
    transition: all .3s;
    filter: none;
}
.c-float-left {
    float: left;
}
/* ==========================================================================
Identifier
========================================================================== */
.is-active {
    display: block;
}
.is-unshown {
    display: none;
}
/* ==========================================================================
Utility
========================================================================== */
.u-dp-inline {
    display: inline;
}
.u-display-ib {
    display: inline-block;
}
.u-float-left {
    float: left;
}
.u-float-right {
    float: right;
}
.wp-pagenavi {
    clear: both;
    margin-bottom: 30px;
    padding-top: 20px;
    text-align: center;
    color: #555555;
}
.wp-pagenavi .pages, .wp-pagenavi .current, .wp-pagenavi a {
    font-size: 13px;
    line-height: 25px;
    display: inline-block;
    width: 62px;
    text-align: center;
    text-decoration: none;
    letter-spacing: normal;
    border-left: 1px solid #dddddd;
}
.wp-pagenavi .current, .wp-pagenavi a:hover {
    font-size: 13px;
    font-weight: bold;
    color: #e72019;
}
.print-exp {
    display: none;
    clear: both;
    text-align: center;
}
.is_pc {
    display: block;
}
.is_sm {
    display: none;
}
@media screen and (max-width: 480px) {
    .is_pc {
        display: none;
    }
    .is_sm {
        display: block;
    }
    *::after, * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    /* Base
----------------------------------------------------------------- */
    body, html {
        min-width: 100%;
        height: 100%;
        padding: 0;
    }
    p {
        font-size: 123.1%;
        line-height: 2;
        margin-bottom: 1.2rem;
    }
    .p-content__inner--center img, .l-contents__container img {
        margin: 1.5rem auto;
        max-width: 100%;
        height: auto;
        display: block;
    }
    /* ==========================================================================
Layout
========================================================================== */
    .l-header {
        width: 100%;
        min-height: 90px;
    }
    .l-header__container {
        width: 100%;
        min-height: 90px;
    }
    .l-navi__list {
        display: none;
        margin: auto;
    }
    .l-navi__list--footer {
        display: block;
    }
    .l-navi__list--footer li {
        margin-bottom: 1rem;
    }
    /* .l-header */
    .l-contents__title {
        margin-top: 55px;
    }
    .l-contents__title--inner {
        width: 100%;
        padding: 0;
        margin: auto;
    }
    .l-contents__title--inner::before {
        content: "";
        opacity: .3;
        filter: blur(8px);
        position: absolute;
        top: -8px;
        left: -8px;
        right: -8px;
        bottom: -8px;
        z-index: -1;
        background: inherit;
    }
    .l-contents__title img {
        box-shadow: 0;
        max-width: 100%;
    }
    /* .l-contents__title */
    .l-contents__container--cat {
        width: 100%;
    }
    .p-left-area {
        margin-right: 0;
        margin-bottom: 3rem;
    }
    .c-link-txt--bread {
        display: none;
    }
    /* .l-link-txt--bread */
    .l-footer__container {
        width: 100%;
        margin-bottom: 0 !important;
        text-align: center;
    }
    .l-footer__logo, .l-footer__container .l-navi__btn {
        display: none;
    }
    /* .l-footer */
    /* ==========================================================================
Project
========================================================================== */
    .p-item-logo {
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    /* .p-header */
    .p-content__inner {
        padding: 40px 0;
    }
    .p-content__inner--center {
        width: 90%;
        padding: 10px 0;
        margin: auto;
    }
    .p-content__inner--left {
        width: 90%;
    }
    .p-content__inner--right {
        width: 90%;
        margin: 0 auto;
        padding: 20px 0;
    }
    .p-archive-list {
        display: block;
    }
    .p-archive-list li {
        width: 100%;
        margin-right: 0px;
        margin: 0 auto;
    }
.p-archive-list li:nth-child(4n), .p-archive-list li:last-child {
        margin: 0 auto;
    }
    .p-archive-list li a {
        width: 100%;
        height: 100%;
    }
    .p-archive-list li a:hover {
        filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
    }
    .p-logo-list {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        padding: 0 5%;
    }
    .p-logo-list li {
        width: 45%;
    }
    .p-logo-list .p-content__photo {
        height: auto;
        min-height: 70px;
        margin-bottom: 0;
    }
    /* .p-archive-list */
    #l-search-container {
        margin-bottom: 0px;
    }
    /* .l-search-containe */
    .p-content-block {
        width: 100%;
        padding: 45px 0;
    }
    /* .p-content__inner */
    .p-content__photo {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        width: 100%;
        height: 190px;
        margin-bottom: 1rem;
        text-align: center;
        align-items: center;
        justify-content: center;
    }
    .p-content__date span {
        display: block;
    }
    .p-content__title {
        line-height: 1.5;
        padding: 8px 0px;
        text-align: left;
    }
    .p-content__title--case {
        font-size: 123.1%;
        line-height: 1.5;
        margin-bottom: 1rem;
        padding: 4px 20px;
        text-align: left;
    }
    .p-content__bread-crumbs {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap;
        clear: both;
        -js-display: flex;
        align-items: baseline;
    }
    /* .blog-list */
    .p-content--article table, .p-table {
        width: 100%;
    }
    .p-content--article table {
        border: 1px solid #cccccc;
    }
    .p-content--article table a, .p-table a {
        text-decoration: underline;
        color: #077cb3;
    }
    .p-content--article table th, .p-content--article table td, .p-table th, .p-table td {
        font-size: 13px;
    }
    .p-table tr:first-child th, .p-table tr:first-child td {
        border-top: 1px solid #cccccc;
    }
    .p-table tr:last-child th, .p-table tr:last-child td {}
    .p-table tr td:first-child {
        border-left: none;
    }
    .p-content--article table th, .p-table th {
        background-color: #8b8b8b;
        color: #ffffff;
        padding: 7px 10px;
        border-left: none;
    }
    .p-content--article table tr:nth-child(2n) th, .p-table tr:nth-child(2n) th, .p-table tr:nth-child(2n) td {
        background-color: #f2f2f2;
    }
    .p-btn-more a {
        font-size: 123.1%;
        display: block;
        width: 380px;
        margin: auto;
        padding: 12px 0;
        -webkit-transition: all .3s;
        transition: all .3s;
        text-align: center;
        text-decoration: none;
        border: 3px solid #ffffff;
        border-radius: 4px;
        background-color: #ffffff;
    }
    .p-btn-more a:hover {
        -webkit-transition: all .3s;
        transition: all .3s;
        border: 3px solid #ef211a;
    }
    /* concept */
    .p-list-element li {
        margin-bottom: 2.5rem;
    }
    .p-list-element li:last-child {
        margin-bottom: 0;
    }
    /* ==========================================================================
Component
========================================================================== */
    .c-scroll-box {
        padding: 15px;
        width: calc(100%);
    }
    .c-heading-1, .p-content--article h1 {
        font-size: 28px;
        margin-top: 1rem;
        font-weight: 300;
        margin-bottom: 1.5rem;
    }
    .c-heading-1 strong, .p-content--article h1 strong {
        font-weight: 300;
    }
    .c-heading-1 br, .p-content--article h1 br {
        display: none;
    }
    .c-heading-2, .c-heading-2--center, .p-content--article h2 {
        font-size: 22px;
        margin-bottom: 3rem;
        margin-top: 1rem;
    }
    .c-heading-2 br, .c-heading-2--center br, .p-content--article h2 br {
        display: none;
    }
    .c-heading-2--center {
        position: relative;
    }
    .c-heading-2--center:before {
        left: 14%;
    }
    .c-heading-3 {
        font-size: 18px;
        margin-top: 3rem;
        background-size: 100%;
        background-position: center center;
        margin-bottom: 2.0rem !important;
        height: auto;
        line-height: 1.7;
        padding: 0 20px;
    }
    .p-content--article h3, .c-heading-4 {
        font-size: 153.8%;
    }
    /* .c-heading-3 */
    .c-btn-pagetop a {
        display: block;
        padding: 21px 0 25px 0;
        text-align: center;
        background-color: #e2e2e2;
    }
    /* icon*/
    /* align */
    .c-font8 {
        font-size: 61.5% !important;
    }
    .c-font10 {
        font-size: 77% !important;
    }
    .c-font11 {
        font-size: 85% !important;
    }
    .c-font12 {
        font-size: 93% !important;
    }
    .c-font13 {
        font-size: 100%;
    }
    .c-font14 {
        font-size: 108%;
    }
    .c-font15 {
        font-size: 116%;
    }
    .c-font16 {
        font-size: 123.1%;
    }
    .c-font18 {
        font-size: 138.5%;
    }
    .c-font20 {
        font-size: 153.8%;
    }
    .c-font22 {
        font-size: 169%;
    }
    .c-font24 {
        font-size: 185% !important;
    }
    .c-font26 {
        font-size: 200% !important;
    }
    .c-font28 {
        font-size: 215%;
        font-family: "Noto Sans JP", sans-serif;
    }
    .c-font32 {
        font-size: 246.1%;
        font-family: "Noto Sans JP", sans-serif;
    }
    .c-font35 {
        font-size: 269%;
        font-family: "Noto Sans JP", sans-serif;
    }
    .c-font38 {
        font-size: 292%;
        font-family: "Noto Sans JP", sans-serif;
    }
    .c-font40 {
        font-size: 307.7%;
        font-family: "Noto Sans JP", sans-serif;
    }
    /* font-size */
    .c-mr35,
    .c-mr60 {
        margin-right: 0;
    }
    .c-mb60 {
        margin-bottom: 30px;
    }
    .c-mb80 {
        margin-bottom: 40px;
    }
    .c-pt60 {
        padding-top: 30px;
    }
    .c-pb30 {
        padding-bottom: 0;
    }
    .c-txt-center {
        text-align: left;
    }
    .c-display-flex {
        display: block;
    }
    .c-display-flex--center {
        display: block;
    }
    .c-btn-cv {
        clear: both;
    }
    .c-btn-cv a {
        font-size: 15px;
    }
    .c-btn-cv a:hover:before {
        opacity: 0;
    }
    .c-btn-all a {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 108%;
        font-weight: 500;
        line-height: 3rem;
        display: inline-block;
        padding: 0 60px;
        -webkit-transition: all .3s;
        transition: all .3s;
        text-align: center;
        border: 2px solid #ffffff;
        border-radius: 3.6rem;
        background-color: #ffffff;
        filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
    }
    .c-btn-detail a {
        font-family: "Noto Sans JP", sans-serif;
        font-size: 108%;
        font-weight: 300;
        line-height: 1.6;
        display: inline-block;
        padding: 0 60px;
        -webkit-transition: all .3s;
        transition: all .3s;
        text-align: center;
        color: #ffffff;
        border: 2px solid #4c4c4c;
        border-radius: 3.6rem;
        background-color: #4c4c4c;
        filter: drop-shadow(0 0px 8px rgba(0, 0, 0, .5));
    }
    .c-btn-hover {
        margin-bottom: 0;
    }
    .c-float-left {
        float: left;
    }
    /* ハンバーガーメニュー */
    * {
        margin: 0;
        padding: 0;
    }
    *::after, * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }
    /* ▲▲▲ここまではナビゲーションに関係ない設定▲▲▲ */
    /* header */
    #l-mobile-header {
        font-size: 14px;
        top: -100px;
        position: absolute;
        width: 100%;
        margin: 100px auto 0;
        padding: 30px 0 0;
        line-height: 1;
        z-index: 999;
    }
    #l-mobile-header a, #l-mobile-header {
        color: #ffffff;
        text-decoration: none;
    }
    #l-mobile-header .inner {
        position: relative;
    }
    #l-mobile-header .logo {
        float: left;
        font-size: 36px;
    }
    #global-nav ul {
        list-style: none;
        position: absolute;
        right: 0;
        bottom: 0;
        font-size: 14px;
    }
    #global-nav ul li {
        float: left;
        position: relative;
    }
    #global-nav ul li a {
        padding: 0 30px;
    }
    /* Btn Hover */
    #global-nav ul li:after {
        position: absolute;
        content: "";
        display: block;
        width: 100%;
        height: 3px;
        bottom: -20px;
        transition: all .3s ease;
        -webkit-transition: all .3s ease;
        -moz-transition: all .3s ease;
    }
    #global-nav ul li:hover:after {
        background: #ffffff;
        bottom: -30px;
    }
    /* Fixed */
    #l-mobile-header.fixed {
        margin-top: 0;
        top: 0;
        position: fixed;
        padding-top: 10px;
        height: 55px;
        background: #ffffff;
        background: rgba(255, 255, 255, .7);
        transition: top .65s ease-in;
        -webkit-transition: top .65s ease-in;
        -moz-transition: top .65s ease-in;
    }
    #l-mobile-header.fixed .logo {
        font-size: 24px;
        color: #333333;
    }
    #l-mobile-header.fixed #global-nav ul li a {
        color: #333333;
        padding: 0 20px;
    }
    /* Fixed Btn Hover */
    #l-mobile-header.fixed #global-nav ul li:after {
        bottom: -10px;
    }
    #l-mobile-header.fixed #global-nav ul li:hover:after {
        background: #0062b8;
        bottom: -20px;
    }
    /* Toggle Button */
    #p-nav-toggle {
        display: none;
        position: absolute;
        right: 12px;
        top: 14px;
        width: 34px;
        height: 36px;
        cursor: pointer;
        z-index: 101;
    }
    #p-nav-toggle div {
        position: relative;
    }
    #p-nav-toggle span {
        display: block;
        position: absolute;
        height: 4px;
        width: 100%;
        background: #666666;
        left: 0;
        -webkit-transition: .35s ease-in-out;
        -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;
    }
    #p-nav-toggle span:nth-child(1) {
        top: 0;
    }
    #p-nav-toggle span:nth-child(2) {
        top: 11px;
    }
    #p-nav-toggle span:nth-child(3) {
        top: 22px;
    }
    #main-visual {
        height: 300px;
    }
    #l-mobile-header, .inner {
        width: 100%;
        padding: 0;
    }
    #l-mobile-header {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
    /* Fixed reset */
    #l-mobile-header.fixed {
        padding-top: 0;
        background: transparent;
    }
    #l-mobile-header--inner {
        background: #ffffff;
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }
    #l-mobile-header.fixed .logo, #l-mobile-header .logo {
        position: absolute;
        left: 13px;
        top: 13px;
        color: #333333;
        font-size: 26px;
    }
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #333333;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 11px;
    }
    #global-nav ul li {
        float: none;
        position: static;
    }
    #global-nav ul li:after {
        display: none;
    }
    #l-mobile-header #global-nav ul li a, #l-mobile-header.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #ffffff;
        padding: 18px 0;
        font-size: 15px;
    }
    #p-nav-toggle {
        display: block;
    }
    /* #p-nav-toggle 切り替えアニメーション */
    .open #p-nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #p-nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #p-nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #l-mobile-header height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}


.p-article-sns {
	margin-top: 40px;
    margin-bottom: 30px;
}
.p-article-sns--list {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.p-article-sns--list li {
    width: 31%;
}
.p-article-sns--list svg {
	fill: #fff;
	height: 14px;
	width: auto;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.p-article-sns--list a {
	display: block;
	padding: 8px 15px 6px 15px;
	text-align: center;
	color: #fff;
	border: 2px solid #666;
	background-color: #666;
	line-height: 1.5;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.p-article-sns--list a:hover {
	color: #fff;
	border: 2px solid #e60211;
	background-color: #fff;
	-webkit-transition: all .3s;
	transition: all .3s;
}
@media screen and (min-width: 0px) and (max-device-width: 30em) {
	.p-article-sns {
		margin-top: 2rem;
	}
	.p-article-sns--list li {
		width: 30%;
		margin: 0 0.5rem;
	}
	.p-article-sns--list a {
		padding: 8px 0px 6px 0px;
		width: 100%;
		margin: auto;
	}
}
.p-article-sns--list .c-icon--fb a:hover svg {
	fill: #395495;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.p-article-sns--list .c-icon--tw a:hover svg {
	fill: #1da1f2;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.p-article-sns--list .c-icon--hatena a:hover svg {
	fill: #00a4de;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.p-content--article__inner a {
	text-decoration: underline !important;
}