@charset "utf-8"; /*------cssリスト------------------------------------------
  01.共通のレイアウト
  02.カラムレイアウト
  03.トップページのレイアウト
  04.ページ共通のレイアウト
  05.個別ページのレイアウト
  06.カテゴリページのレイアウト
  07.投稿ページのレイアウト
  08.ウィジェット関連のレイアウト
  09.印刷用スタイル
  10.その他スタイル
  11.スクロールアニメーション
---------------------------------------------------------*/
/* ********************************************************

  01.共通のレイアウト

******************************************************** */
/******************************
     基本
******************************/
html, body {
    width: 100%;
    height: auto;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    overflow-x: hidden;
    font-family: 'Noto Sans JP', YuGothic, '游ゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: 400;
}

body.custom-background {
    background-color: #f5f5f585 !important
}

a {
    color: #1e73be;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

img {
    image-rendering: -webkit-optimize-contrast;
}

/******************************
     カスタム
******************************/
body.open {
    position: fixed;
}

#all {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.pc, .main .entry .pc {
    display: block;
    /* PC時は表示 */
}

.sm, .main .entry .sm {
    display: none;
    /* PC時は非表示 */
}

.aligncenter {
    margin: 0 auto;
}

.entry img.aligncenter {
    display: block;
}

@media screen and (max-width: 960px) {
    body.open #all {
        min-width: 703px;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .pc, .main .entry .pc {
        display: none;
    }

    .sm, .main .entry .sm {
        display: block;
    }

    body.open #all {
        min-width: auto;
    }
}

/* (max-width: 680px) */
/******************************
     レイアウト
******************************/
/*2列*/
.div_2col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 50px;
}

.div_2col>div {
    width: calc(50% - 15px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.div_2col>div a, .div_3col>div a, .div_4col>div a {
    width: calc(100% - 15px);
    margin: 20px 0;
}

.div_2col>div a img, .div_3col>div a img, .div_4col>div a img {
    width: 100%;
    height: auto;
}

/*3列*/
.div_3col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 50px;
}

.div_3col>div {
    width: calc(33.3333% - 15px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

/*4列*/
.div_4col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 50px;
}

.div_4col>div {
    width: calc(25% - 15px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 680px) {
    .div_2col>div {
        width: calc(50% - 10px);
    }

    .div_3col>div, .div_4col>div {
        width: calc(50% - 10px);
    }
}

@media screen and (max-width: 480px) {
    .div_2col>div {
        width: 100%;
    }

    .div_3col>div, .div_4col>div {
        width: 100%;
    }
}

/******************************
     エントリー
******************************/
.entry h1, .entry h2, .entry h3, .entry h4, .entry h5, .entry h6 {
    line-height: 1.2;
}

.entry img {
    display: inline;
}

.entry .img_zoom {
    overflow: hidden;
    /*拡大時にはみ出た部分を隠す*/
    width: auto;
    /*画像の幅*/
    height: auto;
    /*画像の高さ*/
}

.entry .img_zoom img {
    display: block;
    transition-duration: 0.3s;
    /*変化に掛かる時間*/
}

.entry .img_zoom img:hover {
    transform: scale(1.1);
    /*画像の拡大率*/
    transition-duration: 0.3s;
    /*変化に掛かる時間*/
}

.entry p {
    line-height: 2;
    font-size: 16px;
    letter-spacing: 0.05em;
}

.entry h1 {
    margin: 1em 0;
    padding: 1.5em 0;
    font-size: 1.7em;
    border-bottom: #000 1px solid;
}

.entry p+h1 {
    margin-top: 2em;
}

.entry h2 {
    font-size: 24px;
    text-align: left;
    font-weight: 500;
    margin: 60px 0 60px;
    padding: 0 0 35px 0;
    /* border-bottom: 2px solid #000; */
}

.entry p+h2 {
    margin-top: 2.5em;
}

.entry h3 {
    font-size: 22px;
    padding: 0.6em 0;
    margin: 1em 0;
    text-align: left;
    font-weight: 500;
    position: relative;
}

.home .entry h3:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 20px;
    height: 1px;
    background: #BCA421;
    display: block;
    content: '';
}

.entry p+h3 {
    margin-top: 2.4em;
}

.entry h4 {
    background-color: #eee;
    font-size: 18px;
    margin: 20px 0 10px 0;
    padding: 10px 15px;
    color: #000;
    text-align: center;
    display: inline-block;
}

.entry h4:after {
    display: block;
}

.entry p+h4 {
}

.entry h5 {
    font-size: 1.1em;
    padding: 0.3em 0 15px 0;
    margin: 1em 0;
    margin-left: 0 !important;
    display: table;
    border-bottom: 2px solid #000;
}

.entry p+h5 {
    margin-top: 2em;
}

.entry h6 {
    font-size: 1.1em;
    padding: 0.5em 0;
    margin: 1em 0 0px 0px;
}

.entry h6::before {
    content: "/";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding: 0 5px 0 0;
}

@media screen and (max-width: 680px) {
    .entry p {
        font-size: 14px;
    }
}

/*    10/10レイアウト   */
.page-template-10-layout .entry p.text_width {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-size: 20px;
}

.page-template-10-layout .entry .article-container>h2 {
    font-size: 2.5em
}

.page-template-10-layout .entry .article-container>h2, .page-template-10-layout .entry .article-container>h3, .page-template-10-layout .entry .article-container>h4 {
    text-align: center;
    max-width: 28em;
    margin-left: auto;
    margin-right: auto;
}

.page-template-10-layout .entry .article-container>h4 {
    display: table;
}

@media screen and (max-width: 680px) {
    .entry h1 {
        font-size: 1.6em;
    }

    .entry h2 {
        margin: 30px 0;
        padding: 0px 0 15px 0;
        font-size: 4.26666667vw;
        line-height: 1.7;
    }

    .entry h3 {
        font-size: 1.55em;
    }

    .page-template-10-layout .entry p.text_width {
        font-size: 14px;
    }

    .page-template-10-layout .entry .article-container>h2 {
        font-size: 2em
    }

    img.alignleft, img.alignright,img.aligncenter {
        width: 100%;
        object-fit: contain;
    }
}

@media screen and (max-width: 480px) {
    .entry h1 {
        font-size: 1.6em;
    }

    .entry h3 {
        font-size: 4vw;
    }
}

/* リンクオブジェクト */
.entry a[target="_blank"]::after, .entry a[target="blank"]::after, .entry a[href$=".pdf"]::after, .entry a[href$=".doc"]::after, .entry a[href$=".docx"]::after, .entry a[href$=".xls"]::after, .entry a[href$=".xlsx"]::after, .entry a[href$=".zip"]::after, .entry a[href^="mailto:"]::after, .entry a[href ^="tel:"]::after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-left: 5px;
    font-size: 110%;
    line-height: 1.0;
}

.entry a[target="_blank"]::after, .entry a[target="blank"]::after {
    content: "\f0c1";
}

.home .entry a[target="_blank"]::after, .home .entry a[target="blank"]::after {
    content: none;
    /* トップページではマーク表示しない */
}

.entry a[href$=".pdf"]::after {
    content: "\f1c1";
    color: #da3e5a;
}

.entry a[href$=".doc"]::after, .entry a[href$=".docx"]::after {
    content: "\f1c2";
    color: #1e73be;
}

.entry a[href$=".xls"]::after, .entry a[href$=".xlsx"]::after {
    content: "\f1c3";
    color: #18a011;
}

.entry a[href$=".zip"]::after {
    content: "\f1c6";
}

.entry a[href^="mailto:"]::after {
    content: "\f0e0";
}

.entry a[href ^="tel:"]::after {
    content: "\f095";
    margin-left: 2px;
}

.entry .blank:after {
    display: none;
}

/* 引用 */
.entry blockquote {
    color: #000;
    margin: 2em 0;
    padding: 15px 15px;
    border: 1px solid #000;
    position: relative;
    z-index: 1;
}

.entry blockquote p {
    margin: 0;
    line-height: 1.4;
    position: relative;
    z-index: 2;
    font-style: normal;
}

.entry blockquote p strong:first-child {
    padding: 0 0 5px;
}

.entry blockquote p strong {
    background: none;
    padding: 5px 0;
    display: inline-block;
}

@media screen and (max-width: 480px) {
    .entry blockquote {
        padding: 2em 0 2em 10px;
        margin-left: 15px;
        border: none;
        border-left: 2px solid #ddd;
    }
}

/* 箇条書き */
.entry ul, .entry ol {
    list-style-position: inside;
}

.entry ul li, .entry ol li {
    padding-left: 1em;
}

.entry ul li {
    list-style: none;
    list-style-position: inside;
    position: relative;
    padding: 0;
}

.entry ul li:before {
    content: '';
    background: #BCA421;
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    margin-right: 7px;
}

.entry ol li {
    list-style-type: decimal;
}

/* 箇条書き - dl */
.entry dl {
    margin: 0 auto 1em;
    padding: 0;
}

.entry dt, .entry dd {
    line-height: 1.4;
}

.entry dt {
    padding: 0.5em 0 0.5em 0;
    font-weight: 600;
    border-bottom: #000000 1px solid;
}

.entry dd {
    padding: 0.6em 0 0.6em 0;
}

.entry dd+dt {
    margin-top: 1em;
}

@media screen and (max-width: 480px) {
    .entry dt {
        font-size: 1.15em;
    }

    .entry dd {
        font-size: 0.95em;
    }
}

/* テーブル */
.entry th, .entry td {
    border: 1px solid #eee;
    background-color: #fff;
    line-height: 1.2;
}

.entry th {
    color: #000;
    background-color: #eee;
    text-align: center;
    width: 25%;
}

.entry thead th, .entry thead td {
    padding: 20px 32px;
    background: #eee;
    border: 1px solid #dcdcdc;
    color: #000;
}

.entry thead td {
    font-weight: normal;
}

.entry tbody th, .entry tbody td {
    padding: 20px 28px;
}

.entry tfoot th, .entry tfoot td {
    font-size: 80%;
}

/* フォーム */
.entry form {
    padding-bottom: 50px;
}

.entry form table {
    display: block;
    padding: 0;
    border: none;
    margin: 0;
}

.entry form table tbody, .entry form table tr {
    display: block;
}

.entry form table tr {
    padding-bottom: 25px;
}

.entry form table th, .entry form table td {
    display: block;
    border: none;
    background: transparent;
    padding: 0 0 7px;
    width: 100% !important;
    color: #000;
}

.entry form table th {
    text-align: left;
}

.entry form table input, .entry form table input[type="email"] {
    width: 70%;
}

.entry form table input[type="text"]#pref, .entry form table input[type="text"]#city {
    width: 10em;
}

.entry form table input[type="tel"]#zip {
    width: 9em;
}

.entry form table input[type="radio"], .entry form table input[type="checkbox"] {
    vertical-align: middle;
    margin: 6px 3px;
    width: auto;
}

.entry form table .mwform-tel-field input[type="text"], .entry form table .mwform-fax-field input[type="text"] {
    width: 6em;
}

.entry form table .mwform-radio-field.horizontal-item, .entry form table .mwform-checkbox-field.horizontal-item {
    margin: 0 10px 0 0;
}

.entry form table .mwform-radio-field label, .entry form table .mwform-checkbox-field label {
    cursor: pointer;
}

.entry form table .mwform-radio-field label [type="radio"], .entry form table .mwform-checkbox-field label [type="checkbox"] {
    display: none;
}

.entry form table .mwform-radio-field label .mwform-radio-field-text, .entry form table .mwform-checkbox-field label .mwform-checkbox-field-text {
    line-height: 1.6;
    display: inline-block;
}

.entry form table .mwform-radio-field label .mwform-radio-field-text::before, .entry form table .mwform-checkbox-field label .mwform-checkbox-field-text::before {
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    width: 18px;
    height: 18px;
    -webkit-transition: 0.1s;
    transition: 0.1s;
}

.entry form table .mwform-radio-field label .mwform-radio-field-text::before {
    content: "\f192";
    font-weight: 400;
    color: #bbb;
    display: inline-block;
    margin-right: 5px;
}

.entry form table .mwform-radio-field label [type="radio"]:checked+.mwform-radio-field-text::before {
    font-weight: 900;
    color: #333;
}

.entry form table .mwform-checkbox-field label .mwform-checkbox-field-text::before {
    content: "\f00c";
    font-weight: 900;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 5px -5px 0;
    border-radius: 3px;
    background: #eee;
    border: #bbb 1px solid;
    color: transparent;
}

.entry form table .mwform-checkbox-field label [type="checkbox"]:checked+.mwform-checkbox-field-text::before {
    color: #333;
}

.entry form table textarea {
    width: 100%;
    min-height: 180px;
}

.entry form input[type="submit"], .entry form input[type="reset"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    margin: 0 auto 25px;
    padding: 5px 20px;
    min-width: 160px;
    max-width: 300px;
    display: block;
    text-align: center;
    font-size: 15px;
    white-space: nowrap;
    font-weight: bold;
    border: 2px solid #333;
    border-radius: 3px;
}

.entry form input[type="submit"] {
    background: #333;
    color: #fff;
}

.entry form input[type="reset"] {
    background: #fff;
    color: #333;
}

.entry form input:hover[type="submit"], .entry form input:hover[type="reset"] {
    opacity: 0.8;
}

.entry form.post-password-form input[type="submit"] {
    margin: 10px 0;
    max-width: 200px;
    padding: 5px;
}

.entry form .asterisk {
    color: #da3e5a;
}

.entry form .error {
    margin: 0.3em 0 0 0.5em;
}

@media screen and (max-width: 680px) {
    .entry form table input[type="text"], .entry form table input[type="email"] {
        width: 100%;
    }
}

@media screen and (max-width: 480px) {
    .entry form table {
        padding: 30px 0;
    }

    .entry form table .mwform-tel-field input[type="text"], .entry form table .mwform-fax-field input[type="text"] {
        width: 4.5em;
    }
}

/* ギャラリー */
.entry .gallery {
    overflow: hidden;
    margin: 30px 0;
}

.entry .gallery dl dt, .entry .gallery dl dd {
    border-left: none;
    border-bottom: none;
    padding: 0;
    position: relative;
}

.entry .gallery dl dd {
    padding-left: 10px;
    margin-left: 10px;
}

.entry .gallery-item {
    float: left;
    width: 50%;
    margin: 0 0 20px;
    padding: 0;
}

.entry .gallery-icon {
    text-align: center;
    margin: 0 1%;
}

.entry .gallery-caption {
    color: #333;
    font-size: 80%;
    margin: 0;
    padding: 5px 10px;
    text-align: left;
    line-height: 1.6;
}

.entry .gallery dl dd::before {
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 0px;
    left: 0px;
}

.entry .gallery-columns-1 .gallery-item {
    width: 100%;
    margin-right: 0;
}

.entry .gallery-columns-2 .gallery-item {
    width: 49%;
    margin-right: 1%;
}

.entry .gallery-columns-2 dl:nth-of-type(2n) {
    margin-left: 1%;
    margin-right: 0;
}

.col10 .entry .gallery {
    width: 100%;
    max-width: 1000px;
    margin: 30px auto;
}

.entry .gallery-columns-3 .gallery-item {
    width: 32%;
    margin-right: 1%;
}

.entry .gallery-columns-3 dl:nth-of-type(3n-1) {
    margin-left: 1%;
    margin-right: 1%;
}

.entry .gallery-columns-3 dl:nth-of-type(3n) {
    margin-left: 1%;
    margin-right: 0;
}

.entry .gallery-columns-4 .gallery-item {
    width: 23.5%;
    margin: 0 1% 2% 0;
}

.entry .gallery-columns-4 dl:nth-of-type(4n-1), .entry .gallery-columns-4 dl:nth-of-type(4n-2) {
    margin-left: 1%;
    margin-right: 1%;
}

.entry .gallery-columns-4 dl:nth-of-type(4n) {
    margin-left: 1%;
    margin-right: 0;
}

.entry .gallery-columns-5 .gallery-item {
    width: 18.4%;
    margin: 0 1% 2% 0;
}

.entry .gallery-columns-5 dl:nth-of-type(5n-1), .entry .gallery-columns-5 dl:nth-of-type(5n-2), .entry .gallery-columns-5 dl:nth-of-type(5n-3) {
    margin-left: 1%;
    margin-right: 1%;
}

.entry .gallery-columns-5 dl:nth-of-type(5n) {
    margin-left: 1%;
    margin-right: 0;
}

.entry .gallery-columns-6 .gallery-item {
    width: 15%;
    margin: 0 1% 2% 0;
}

.entry .gallery-columns-6 dl:nth-of-type(6n-1), .entry .gallery-columns-6 dl:nth-of-type(6n-2), .entry .gallery-columns-6 dl:nth-of-type(6n-3), .entry .gallery-columns-6 dl:nth-of-type(6n-4) {
    margin-left: 1%;
    margin-right: 1%;
}

.entry .gallery-columns-6 dl:nth-of-type(6n) {
    margin-left: 1%;
    margin-right: 0;
}

.entry p.wp-caption-text {
    font-size: 80%;
    line-height: 1.4;
}

@media screen and (max-width: 680px) {
    .col10 .entry .gallery {
        width: auto;
        max-width: initial;
        max-width: auto;
        margin: 30px auto;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    .entry .gallery-columns-2 .gallery-item, .entry .gallery-columns-2 .gallery-item, .entry .gallery-columns-3 .gallery-item, .entry .gallery-columns-4 .gallery-item {
        float: none;
        width: 100%;
        margin: 0 auto 2%;
    }

    .entry .gallery-columns-2 dl:nth-of-type(2n), .entry .gallery-columns-3 dl:nth-of-type(3n-1), .entry .gallery-columns-3 dl:nth-of-type(3n), .entry .gallery-columns-4 dl:nth-of-type(4n-1), .entry .gallery-columns-4 dl:nth-of-type(4n-2), .entry .gallery-columns-4 dl:nth-of-type(4n) {
        margin: 0 auto 2%;
    }

    /* .gallery-columns-4を2段組にする場合は コメント外す
  .entry .gallery-columns-4 .gallery-item {
    float: left;
    width: 50%;
    margin: 0 auto;
  }
  */
    .entry .gallery-item img {
        margin: 0 auto;
    }

    .entry .gallery br {
        display: none;
    }
}

/* (max-width: 480px) */
/* ************************************************
  ヘッダー
* ************************************************ */
#hd-ex {
    font-size: 85%;
    line-height: 1.2;
    margin: 5px 0 0 0;
    padding: 0;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.02rem;
}

#hd-ex-in {
    position: relative;
    margin: 0 auto;
    padding: 0 30px;
}

#header {
    padding: 20px 0 0;
    /* background: url(img/bg_header.png) no-repeat center center / cover; */
    background: url(img/bg_header.jpg) no-repeat center center / cover;
}

#header-in {
    position: relative;
    margin: 0 auto;
    padding: 0 30px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#header .align-left {
    /*display: none;*/
    width: 40%;
    /* ロゴの大きさに合わせて調整↓↓↓ */
    max-width: 200px;
    min-width: 120px;
    margin-right: 15px;
}

#header .is-fixed .align-left {
    display: none;
}

#header .align-left h1 img {
    width: 100%;
}

#header .align-left p {
    margin: 0;
}

#header .align-contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 0 0 auto;
}

.header-type-3 #header .align-contact {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.tel-block {
    /* tel */
    /*max-width: 245px;*/
    display: flex;
    align-items: center;
    /*  flex-wrap: wrap;*/
    justify-content: flex-end;
}

#header .align-right {
    /* mail */
    margin: 0 0 0 15px;
}

#header .align-center a:hover, #header .align-right a:hover, #header #sl-button a:hover {
    opacity: 0.8;
    text-decoration: none;
}

#header .tel a, #header .mail a {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
}

#header .mail a::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    padding: 0 4px 0 0;
}

#header .tel {
    margin: 0;
    padding: 0;
    font-size: 180%;
    line-height: 1.0;
    white-space: nowrap;
}

#header .tel a {
    color: #000;
    font-weight: bold;
}

#header .tel a::before {
    font-family: "Font Awesome 5 Free";
    font-size: 80%;
    content: "\f3cd";
    font-weight: 900;
    padding: 4px 4px 0px 0;
}

#header .tel-ex {
    /*margin: 5px 0 0 0;*/
    margin: 0 0 0 10px;
    line-height: 1.2;
    font-size: 80%;
    font-weight: 600;
    text-align: left;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.02rem;
    white-space: nowrap;
}

#header .mail {
    margin: 0;
    font-weight: bold;
    /*text-align: right;*/
    letter-spacing: 0px;
    max-width: 224px;
}

#header .mail a {
    margin: 0;
    padding: 2px 15px;
    color: #000;
    background-color: #fff;
    font-size: 85%;
    /*vertical-align: top;*/
    height: 100%;
}

#header .mail a::before {
    content: "\f0e0";
}

#header #sl-button a {
    color: #000;
    background-color: #fff;
}

#header .align-append {
    display: none;
}

#header-links>ul {
    display: flex;
    margin: 0;
    flex-wrap: wrap;
    justify-content: flex-end;
}

#header-links ul li {
    padding: 0 1em 0 0;
    font-size: 80%;
    white-space: nowrap;
    position: relative;
}

#header-links li a {
    display: block;
}

#header-links li a::before {
    font-family: "Font Awesome 5 Free";
    font-size: 100%;
    content: "\f105";
    font-weight: 900;
    margin-right: 0.3em;
}

#header-links ul.sub-menu {
    position: absolute;
    display: none;
    padding: 0 10px;
    margin-left: -10px;
    background-color: rgba(255, 255, 255, 0.85);
}

#header-links ul.sub-menu li {
    font-size: 100%;
}

#header-links li:hover ul.sub-menu {
    display: block;
    z-index: 100;
}

.header-set.header-type-2 .mail a, .header-set.header-type-3 .mail a {
    width: 100%;
}

.header-set.header-type-5 {
    position: absolute;
    width: 90%;
    top: 15px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 999;
    padding: 10px;
    background-color: rgba(255, 255, 255, 0.85);
}

.header-type-5 #header, .header-type-5 #gnavi-in {
    padding: 0;
}

.header-type-5 #gnavi {
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 1330px) {
    #header-in {
        padding: 0 10px 15px 30px;
    }
}
@media screen and (max-width: 960px) {
    .header-set.header-type-5 {
        /*position: relative;*/ top: 0;
        width: 100%;
    }

    #header-in {
        padding: 0 15px;
    }

    #header .align-contact {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        align-items: stretch;
    }

    /*  #header .align-center {
    flex-direction: column;
  }*/
    /*  #header .tel-ex {
    margin: 0;
  }*/
    #hd-ex-in {
        padding: 0 15px;
    }
}

/* (max-width: 960px) */
@media screen and (min-width: 681px) {
    .header-type-2 #hd-ex, .header-type-2 #hd-ex-in, .header-type-3 #hd-ex, .header-type-3 #hd-ex-in {
        margin: 0;
        padding: 0;
    }

    .header-type-2 #header .align-left, .header-type-3 #header .align-left {
        width: auto;
        max-width: 40%;
    }

    .header-type-2 #header .align-left h1, .header-type-2 #header .align-left p.header_logo, .header-type-3 #header .align-left h1, .header-type-3 #header .align-left p.header_logo {
        display: none;
    }

    .header-type-2 #header .align-contact {
        padding-right: 200px;
    }

    .header-type-3 #header .align-contact {
        padding-right: 390px;
    }

    .header-type-2 #header .align-right.mail-block, .header-type-3 #header .align-right.mail-block {
        height: 110px;
        width: 187px;
        position: absolute;
        top: -20px;
        right: 30px;
        margin-left: 0;
    }

    .header-type-2 #header .mail.pc, .header-type-3 #header .mail.pc {
        height: 100%;
    }

    .header-type-3 #header .align-center.tel-block {
        height: 110px;
        width: 200px;
        position: absolute;
        top: -20px;
        right: 217px;
        background-color: #f1f1f1;
        flex-direction: column;
        justify-content: center;
        padding: 5px;
    }

    .header-type-3 #header .tel.pc {
        font-size: 170%;
    }

    .header-type-3 #header .tel-ex {
        white-space: normal;
        margin-top: 5px 0 0 0;
    }

    .header-type-4 #header {
        padding-bottom: 20px;
    }
}

@media screen and (max-width: 960px) and (min-width: 681px) {
    .header-type-2 #header .align-right.mail-block {
        right: 15px;
    }

    .header-type-2 #header .align-right.mail-block {
        position: relative;
        top: 0;
        right: 0;
        height: auto;
    }

    .header-type-3 #header .align-right.mail-block, .header-type-3 #header .align-center.tel-block {
        position: relative;
        top: -20px;
        right: 0;
        height: auto;
        min-height: 60px;
    }

    .header-type-2 #header .align-right.mail-block, .header-type-2 #header .align-center.tel-block {
        margin-left: 10px;
        margin-top: 5px;
    }

    .header-type-2 #header .align-contact {
        padding-right: 0;
    }

    .header-type-3 #header .align-contact {
        padding-right: 0;
        margin-bottom: -20px;
    }
}

@media screen and (max-width: 960px) {
/* @media screen and (max-width: 680px) { */
    #hd-ex {
        padding: 5px 0;
        font-size: 75%;
        line-height: 1.2;
        margin: 0;
    }

    #hd-ex p {
        margin: 0;
    }

    #header {
        padding: 10px;
    }

    #hd-ex-in, #header-in {
        width: 100%;
        margin: 0;
    }

    #header .align-left {
        margin-top: 0;
        display: block;
    }

    #header .align-contact {
        min-width: 52px;
        width: auto;
    }

    #header .align-center .sm a, #header .align-right .sm a, #header #sl-button a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 44px;
        width: 42px;
        margin-left: 5px;
        padding: 0;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        font-size: 20px;
    }

    #header .align-center .sm {
        min-width: auto;
        font-size: 100%;
    }

    #header .align-append #sl-button {
        margin: 0;
    }

    #header .tel a, #header #sl-button a {
        color: #000;
        background-color: #fff;
    }

    #header .mail a {
        color: #000 !important;
        background-color: #fff !important;
    }

    #header .tel a::before, #header .mail a::before {
        content: none;
    }

    #header .align-right {
        margin: 0;
    }

    #header .align-append {
        display: block;
        margin: 0;
        text-align: center;
    }

    #header #sl-button a.clicked {
        background: #333;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    #header-in {
        padding: 0;
    }

    #header #sl-button a.clicked {
        background-color: #e7e5e4;
    }
}

/* (max-width: 480px) */
/* スライドメニュー(#slide-menu) */
#slide-menu {
    position: fixed;
    overflow-y: auto;
    top: 0;
    left: -240px;
    width: 240px;
    height: 100%;
    padding: 70px 0;
    background: #5c6266;
    color: #fff;
    z-index: 2;
}

#slide-menu ul {
    margin: 0;
    padding: 0 20px;
}

#slide-menu li {
    width: 100%;
    margin: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

#slide-menu li a {
    border-left: 3px solid transparent;
    display: inline-block;
    width: 100%;
    padding: 1em 0;
    color: #e7e5e4;
    text-decoration: none;
}

#slide-menu ul.sub-menu li {
    margin: 0;
    border-bottom: none;
}

#slide-menu ul.sub-menu li a {
    padding: 2px 0;
}

#slide-layer {
    position: fixed;
    top: 0;
    z-index: 1;
    display: none;
    width: 100%;
    height: 100%;
    background-color: transparent;
}

#slide-menu .sns {
    padding: 0 20px;
    margin: 10px 0 20px;
    display: flex;
    justify-content: space-evenly;
}

/****************************************
     グローバルナビ(#gnavi)
****************************************/
#gnavi {
    background-color: transparent;
    font-size: 95%;
    font-weight: bold;
    /*2021.08.13 メインビジュアルの高さ調整にgnaviを含んだヘッダー部の高さを取得するため、上下余白をmarginではなくpaddingに変更*/
    /* padding: 15px 0; */
    margin: 0;
}

#gnavi-in {
    position: relative;
    padding: 0 30px;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

#gnavi-in h1, #gnavi-in p.header_logo {
    display: none;
    width: 200px;
    margin: 0 auto 0 0;
}

.sticky #gnavi-in h1, .sticky #gnavi-in p.header_logo {
    display: block;
}

#gnavi-in h1 img, #gnavi-in p.header_logo img {
    max-height: 50px;
    max-width: 400px;
}

#gnavi-in .menu-gnavi-container {
    /*width: 780px;*/
    width: 100%;
}

#gnavi ul {
    padding: 0;
    margin: 0;
    text-align: center;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#gnavi li {
    line-height: 1.2;
}

#gnavi li:last-child {
    /* border-right: 1px solid #ccc; */
}

#gnavi li a {
    text-decoration: none;
    padding: 12px 1em 12px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
    height: 100%;
    min-height: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#gnavi li span {
    font-size: 8px;
    color: #777;
    font-weight: 200;
}

#gnavi li a:hover {
    opacity: 0.8;
    text-decoration: none;
}

#gnavi ul li.menu-item {
    position: relative;
    z-index: 1;
}

#gnavi ul li.menu-item::after {
    content: '';
    display: block;
    position: absolute;
    height: 2px;
    width: 0;
    left: 0;
    background-color: #000;
    transition: width 0.2s ease-in-out;
}

#gnavi ul li.menu-item::after {
    bottom: 0;
}

#gnavi ul li.menu-item:hover::after {
    width: 100%;
}

#gnavi ul li ul.sub-menu {
    display: none;
    position: absolute;
    float: none;
    top: 100%;
    left: 0;
    font-size: 95%
}

#gnavi ul li:hover ul.sub-menu {
    display: block;
    min-width: 200px;
    padding: 10px 0;
    background-color: #f7dfa8;
}

#gnavi ul ul {
    display: block;
    table-layout: initial;
    width: initial;
}

#gnavi-in li li {
    text-align: left;
    border-left: none !important;
    border-right: none !important;
    display: block;
    vertical-align: initial;
}

#gnavi ul li ul.sub-menu li {
    float: none;
    margin: 0;
}

#gnavi-in li li:last-child {
    margin: 10px 0 0;
}

#gnavi ul li ul.sub-menu li a {
    text-align: left;
    margin: 0;
    padding: 10px 0.5em 10px 20px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    font-size: 90%;
}

#gnavi ul li ul.sub-menu li a::before {
    content: "\f054";
    color: #fff;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 9.5px;
    left: 8px;
}

#gnavi ul li ul.sub-menu li.current-menu-item a {
    display: block;
    background-color: #333;
}

/* スクロール後の追随するgnavi */
@keyframes slide {
    from {
        max-height: 0px;
    }

    to {
        max-height: 100px;
    }
}

#header.sticky, #gnavi.sticky {
    /*background: #ffffffc9;*/
    background: rgb(17 17 17 / 70%);
    color: #000 !important;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0px !important;
    padding: 0px;
    z-index: 1000;
    animation-name: slide;
    animation-duration: 1s;
}

#gnavi.sticky #gnavi-in {
    padding: 8px 10px !important;
}

#gnavi.sticky li span {
    color: #fff;
}

#gnavi.sticky+#eyecatch {
    padding-top: 54px;
}

/*タイル式メニュー*/
#gnavi.gnavi-tiles:not(.sticky) #gnavi-in, #gnavi.gnavi-tiles:not(.sticky) ul.menu>li, #gnavi.gnavi-tiles:not(.sticky) ul.menu>li>a {
    padding: 0;
    margin: 0;
}

#gnavi.gnavi-tiles:not(.sticky) ul.menu>li {
    position: relative;
    width: 100%;
}

#gnavi.gnavi-tiles:not(.sticky) ul.menu>li:before {
    content: "";
    display: block;
    padding-top: 50%;
    /* 高さを幅の50%に固定し、幅2:高さ1 にする */
    /*padding-top: 75%;*/
    /* 高さを幅の75%に固定し、幅4:高さ3 にする */
}

#gnavi.gnavi-tiles:not(.sticky) ul.menu>li>a {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: #dddddd no-repeat center center;
    background-size: cover;
}

#gnavi.gnavi-tiles:not(.sticky) ul.menu>li:nth-child(even)>a {
    background-color: #efefef;
}

/*タイル式メニュー背景画像サンプル*/
#gnavi.gnavi-tiles:not(.sticky) ul.menu>li:nth-child(1)>a {
    background-image: url("http://ae129ev2x2.smartrelease.jp/wps/wp-content/uploads/hm_ec02-1.jpg");
}

#gnavi.gnavi-tiles:not(.sticky) ul.menu>li:nth-child(2)>a {
    background-image: url("http://ae129ev2x2.smartrelease.jp/wps/wp-content/uploads/hm_ec01-1.jpg");
}

@media screen and (max-width: 1330px) {
/* @media screen and (max-width: 960px) { */
    #gnavi-in {
        /*width: 98%;*/
        margin: 0 auto;
        /* padding: 0 15px; */
        padding: 0;
    }

    #gnavi li a {
        font-size: 80%;
    }

    #gnavi-in h1 img, #gnavi-in p.header_logo img {
        max-width: 150px;
    }

    .header-type-3 #gnavi {
        /*margin-right: 320px;*/
        padding: 0 15px;
    }

    .header-type-3 #gnavi-in {
        padding: 0;
    }
    #header .align-left {
        max-width: 150px;
    }
    #gnavi-in p.header_logo {
        max-width: 150px;
    }
}

/* (max-width: 960px) */
@media screen and (min-width: 681px) {
    .header-type-2 #gnavi {
        /*margin-right: 217px;*/
    }

    .header-type-3 #gnavi {
        /*margin-right: 315px;*/
    }

    .header-type-2 #gnavi-in h1, .header-type-2 #gnavi-in p.header_logo, .header-type-3 #gnavi-in h1, .header-type-3 #gnavi-in p.header_logo {
        display: block;
    }

    .header-type-2 #gnavi-in .menu-gnavi-container, .header-type-3 #gnavi-in .menu-gnavi-container {
        width: 780px;
    }
}

/* (min-width: 681px) */
@media screen and (min-width: 961px) {
    .header-type-2 #gnavi {
        margin-right: 217px;
    }

    .header-type-3 #gnavi {
        margin-right: 400px;
    }
}

@media screen and (max-width: 960px) {
/* @media screen and (max-width: 680px) { */
    #gnavi, #gnavi>#gnavi-in>div#mega-menu-wrap-navbar {
        display: none;
        margin: 0 0 20px;
    }

    #gnavi li {
        width: 100%;
        height: 40px;
        background-color: #5C6266;
        float: none;
        border-left: none;
        margin: 1px 0 0;
        text-align: center;
        line-height: 40px;
    }

    #gnavi li a {
        color: #FFF;
        text-decoration: none;
        display: block;
    }

    #header-in.is-fixed {
        position: fixed;
        z-index: 9999;
        top: 0;
        right: 0;
        left: 0;
        width: 100%;
        margin: auto;
        padding: 10px;
        /* background-color: rgba(255, 255, 255, 0.85); */
    }

    #header-in.is-fixed .align-append {
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    #gnavi li {
        border-left: none;
    }
}

/* (max-width: 480px) */
/****************************************
     メガメニュー(#mega-menu-navbar)
****************************************/
#mega-menu-wrap-navbar #mega-menu-navbar>li.mega-menu-item {
    vertical-align: top !important;
}

#mega-menu-wrap-navbar #mega-menu-navbar>li.mega-menu-item>a.mega-menu-link {
    line-height: 1.4 !important;
    height: initial !important;
    min-height: initial !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
}

#mega-menu-wrap-navbar #mega-menu-navbar li.mega-menu-flyout.mega-menu-item-has-children>a.mega-menu-link::after, #mega-menu-wrap-navbar #mega-menu-navbar li.mega-menu-flyout li.mega-menu-item-has-children>a.mega-menu-link::after, #mega-menu-wrap-navbar #mega-menu-navbar>li.mega-menu-item-has-children>a.mega-menu-link::after {
    margin-top: 0 !important;
}

/****************************************
     サイドリンク(#side-lk)
****************************************/
#side-lk {
    max-width: 150px;
    position: fixed;
    right: 0;
    bottom: 82px;
    z-index: 9999;
}

#side-lk .colbox {
    display: block;
    font-size: 12px;
    line-height: 1;
}

#side-lk .colbox div {
    margin: 10px 0;
}

#side-lk .colbox div img, #side-lk .colbox p img {
    width: auto;
    margin: 0;
}

/*
#side-lk .widget_my_widget17 .colbox>div {
  position: relative;
  width: auto;
}

#side-lk .widget_my_widget17 .colbox>div>a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  overflow: hidden;
  width: 100%;
  height: 50px;
}

#side-lk .widget_my_widget17 .colbox>div h4 {
  line-height: 1.4;
  position: absolute;
  top: 0;
  height: 50px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#side-lk .widget_my_widget17 .colbox>div h4 a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  color: #fff;
  text-shadow: 0 0 2px #000, 0 0 2px #000, 0 0 2px #000;
}
*/
/*@media screen and (max-width: 1480px) {*/
@media screen and (max-width: 1365px) {
    #side-lk {
        display: none;
    }
}

/* (max-width: 680px) */
/****************************************
     フッター(#footer)
****************************************/
#footer {
    /* font-size: 90%; */
    background-color: #5c6266;
    margin: 0;
    padding: 100px 0;
    /* background: url(img/bg_footer.png) no-repeat center center / cover !important; */
    background: url(img/bg_footer.jpg) no-repeat center center / cover !important;
}

#footer a {
    color: #fff;
}

#footer-in {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 1%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#footer-in .align-left {
    /* float: left; */
    /* width: 22.5%; */
    /* margin-right: 2.5%; */
    max-width: 200px;
}

#footer-in .align-center {
    /* float: left; */
    /* width: 22.5%; */
    /* margin-right: 2.5%; */
    margin-top: 65px;
}

#footer-in .align-right {
    float: right;
    padding-left: 2.5%;
    width: 50%;
    position: relative;
}

#footer-in .align-right:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    border-left: 1px solid #aaa;
}

#footer-in .shopinfo .shopinfo-logo {
    margin-right: 1em;
}

#footer-in .shopinfo h3 {
    margin: 0 0 10px;
    font-size: 110%;
    line-height: 1.4;
    padding: 0 0 0.5em;
}

#footer-in .shopinfo {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

#footer-in .shopinfo table {
    margin-bottom: 0;
}

#footer-in .shopinfo table th, #footer-in .shopinfo table td {
    padding: 0 0 0.25em;
    font-size: 98%;
    vertical-align: baseline;
    line-height: 1.4;
}

#footer-in .shopinfo table th, #footer-in .shopinfo table td, #footer-in .shopinfo table span {
    background-color: initial;
    border: none;
}

#footer-in .shopinfo table th {
    font-weight: normal;
    width: 15%;
    text-align: left;
    min-width: 5em;
}

#footer-in ul.menu {
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}


#footer-in .align-left ul.sub-menu li a, #footer-in .align-center ul.sub-menu li a {
    font-weight: 500;
    /*   font-size: 95%; */
}

#footer-in ul.menu li a {
    padding: 0 0.6em 0.3em 0.6em;
    font-size: 16px;
}

#footer-in .align-left ul.sub-menu, #footer-in .align-center ul.sub-menu {
    margin: 0;
}

#footer-in ul.sub-menu li {
    padding: 0.3em 5px 0 13px;
    line-height: 1.2;
}

#copyright {
    text-align: center;
    padding: 20px 0;
    background: #3E3E3E;
    color: #fff;
}

#copyright-in {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 10px;
    text-align: right;
}

#copyright p {
    margin: 0;
}

#page-top {
    z-index: 9999;
}

@media screen and (max-width: 960px) {
    #footer-in {
        width: 90%;
        margin: 0 auto;
        padding: 0;
    }
}

@media screen and (max-width: 680px) {
    #footer {
    }

    #footer-in {
        width: 96%;
    }

    .contact_ft .mailarea {
        margin-left: 10px;
        float: left;
    }

    #footer-in .align-left {
        width: 49%;
        margin-right: 2%;
        margin-bottom: 1em;
    }

    #footer-in .align-center {
        width: 49%;
        margin: 0 0 1em 0;
    }

    #footer-in .align-right {
        float: none;
        clear: both;
        width: 100%;
        padding-left: 0;
        /*     padding-top: 1em;
    border-top: 1px solid #666; */
    }

    #footer-in .align-right:before {
        content: none;
    }

    #footer-in ul.menu {
        font-size: 15px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 40px;
    }

    #footer-in .align-left ul li, #footer-in .align-center ul li {
        padding: 0;
    }

    #footer-in ul.menu li {
        position: relative;
        line-height: 1.2;
    }

    #footer-in ul.menu li::before {
        position: absolute;
        top: 0.6em;
        left: 0;
    }

    #footer-in ul.sub-menu li::before {
        left: 1em;
    }

    #footer-in ul.menu li a {
        display: block;
        padding: 0.6em 0.5em 0.6em 1em;
    }

    #footer-in ul.menu>li {
        border-bottom: 1px solid #666;
    }

    #footer-in ul.sub-menu li a {
        padding-left: 2em;
    }

    #footer-in ul.sub-menu li {
        border-top: 1px dotted #666;
    }

    #footer-in .shopinfo h3 {
        padding: 1em 0 0.5em;
    }

    #copyright-in {
        width: 98%;
        margin: 0 auto;
    }

    #page-top {
        position: fixed;
        bottom: 100px;
        right: 10px;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    #footer {
        margin: 0;
        padding: 50px 0;
    }

    #footer-in .align-left {
        float: none;
        width: 100%;
        margin: 0;
    }

    #footer-in .align-center {
        float: none;
        width: 100%;
        margin: 0;
    }

    #footer-in .align-right {
        margin: 40px 0 0;
        padding: 0;
        border-top: 0;
    }

    #footer-in .shopinfo {
        flex-direction: column;
    }

    #copyright {
        font-size: 80%;
        line-height: 1.2;
    }
}

/* (max-width: 480px) */
@media screen and (max-width: 410px) {
    #page-top {
        position: fixed;
        bottom: 85px;
        right: 10px;
    }
}

/* (max-width: 400px) */
/* 画面下固定 フッターインフォ */
#footer-info {
    background: rgba(238, 238, 238, 0.85);
    font-size: 90%;
}

#footer-info.sticky {
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 1000;
    /*   overflow: hidden; */
}

#footer-info-in {
    width: 100%;
    margin: 0 auto;
    max-width: 1160px;
}

#footer-info .contact_in {
    /*  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;*/
    justify-content: center;
    /*  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;*/
    align-items: center;
    border: none;
    margin: 0;
    padding: 10px 0 10px 0;
    max-width: 100%;
    background: transparent;
}

#footer-info .contact_in .tel-ex, #footer-info .contact_in .mail-ex {
    text-align: left;
}

#footer-info .contact_in .mailarea .mail a {
    padding: 0 15px;
}

#footer-info .contact_in .sns {
    display: flex;
    /*  justify-content: space-evenly;*/
}

#footer-info .contact_in .sns div {
    margin-left: 15px;
}

#footer-info .contact_in .sns div:first-child {
    margin-left: 0;
}

/*#footer-info .contact_in .telarea,
#footer-info .contact_in .mailarea {
  margin: 0 0 0 50px;
}*/
#footer-info .contact_in > div {
    margin: 0 25px;
}

@media screen and (min-width: 1365px) {
    #footer-info .contact_in .sns {
        display: none;
    }
}

@media screen and (max-width: 1160px) {
    #footer-info .contact_in {
        padding: 10px 80px 10px 0;
    }
}

@media screen and (max-width: 680px) {
    #footer-info .contact_in .telarea .tel {
        transform: scale(0.95, 1.1);
    }

    #footer-info .contact_in .telarea, #footer-info .contact_in .mailarea {
        margin: 0 auto;
    }

    #footer-info .contact_in {
        padding: 10px 0 10px 0;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    #footer-info {
    }

    #footer-info .contact_in .telarea, #footer-info .contact_in .mailarea {
    }

    #footer-info .contact_in .telarea {
        margin: 5px auto 5px 10px;
        font-size: 90%;
    }

    #footer-info .contact_in .mailarea {
        margin: 5px 10px 5px auto;
    }

    #footer-info .contact_in .tel-ex, #footer-info .contact_in .mail-ex {
        display: none;
    }
}

/* (max-width: 480px) */
#footer-info i {
    display: none;
}

/* 閉じるボタン */
#footer-info .close-btn {
    /*     display: none; */
}

#footer-info.sticky .close-btn {
    position: absolute;
    top: -26px;
    left: 0;
    background: rgba(238, 238, 238, 0.85);
    margin-left: 10px;
    border-radius: 10px 10px 0 0;
}

#footer-info.sticky .close-btn i {
    display: block;
    cursor: pointer;
    padding: 8px 10px 5px 10px;
}

#footer-info.sticky i:hover {
    opacity: 0.8;
}

/* ********************************************************

  02.カラムレイアウト

******************************************************** */
/****************************************
     共通部分
****************************************/
.main .entry {
    padding-bottom: 50px;
}

.home .main .entry {
    padding-bottom: 0;
}

.sidebar {
    float: right;
    width: 30%;
    max-width: 270px;
    line-height: 1.6;
}

.col7_3 .sidebar h2 {
    margin: 15px 0 10px;
    padding: 0;
    font-size: 115%;
    line-height: 1.2;
}

.sidebar .widget:first-child h2 {
    margin: 0 0 15px;
}

.col7_3 .sidebar h3 {
    margin: 0;
    padding: 0.5em 0;
    font-size: 115%;
    line-height: 1.2;
}

.col7_3 .sidebar h4 {
    padding: 0.5em 0;
    font-size: 110%;
    color: #666;
}

.sidebar .banner-wrapper h4 {
    color: inherit;
    font-size: 110%;
    line-height: 1.2;
}

.sidebar li {
    line-height: 2.0;
    padding: 0 0 0 1em;
}

.sidebar .menu li::before {
    padding: 0 0.5em 0;
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.sidebar .menu li li::before {
    padding-right: 0.5em;
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.sidebar table {
    font-size: 90%;
    border: none;
    line-height: 1.4;
}

.sidebar p {
    font-size: 85%;
    line-height: 1.5;
}

.sidebar .contact .contact_in {
    margin: 0;
}

#contents {
    padding: 80px 0;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-weight: 400;
    letter-spacing: 0.05rem;
}

.home #contents {
    padding: 20px 0 0 !important;
}

body:not(.home)　#contents {
    background: #ffffee;
}

@media screen and (max-width: 960px) {
    .main {
        float: none;
        width: 92%;
        margin: 0 auto;
    }

    .main .entry {
        padding: 10px 0px;
    }

    .sidebar {
        display: none;
        float: none;
        clear: both;
        width: 98%;
        max-width: 650px;
        margin: 0 auto;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    #contents {
        padding: 20px 0;
    }
}

/* (max-width: 480px) */
@media screen and (max-width: 480px) {
    .main .entry {
        margin: 0;
        padding: 0;
    }
}

/* (max-width: 480px) */
/****************************************
     7:3カラム
****************************************/
.col7_3 {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1%;
}

.col7_3 .main {
    background-color: transparent;
    float: left;
    max-width: 840px;
    width: 67%;
    margin: 0 30px 0 0;
}

@media screen and (max-width: 960px) {
    .col7_3 .main {
        float: none;
        width: 92%;
        margin: 0 auto;
    }
}

/* (max-width: 960px) */
/****************************************
     5:5カラム
****************************************/
.col5_5 {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 1%;
}

.col5_5 .main {
    background-color: transparent;
    float: left;
    max-width: 460px;
    width: 48%;
    margin: 0 2% 0 0;
}

.col5_5 .main.col-r {
    margin: 0 0 0 2%;
}

.col5_5 .sidebar {
    float: right;
    width: 45%;
    max-width: 450px;
    margin: 0;
    clear: none;
}

@media screen and (max-width: 960px) {
    .col5_5 .main {
        float: left;
        width: 48%;
    }

    .col5_5 .sidebar {
        width: 48%;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .col10, .col7_3, .col5_5 {
        width: 98%;
        margin: 0 auto;
    }

    .col5_5 .main, .col5_5 .main.col-r {
        float: none;
        width: 98%;
        margin: 0 auto;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    .col5_5 .main {
        width: 98%;
    }
}

/* (max-width: 480px) */
/****************************************
     10カラム
****************************************/
.col10 {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 1%;
}

.col10 .entry h3 {
    /* text-align: center; */
}

.col10 .main {
    background-color: transparent;
    float: none;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.col5_5 h2, .col7_3 h2, .col10 h2, .colfull h2, .error404 h2 {
    margin: 60px auto 30px;
    border-left: none;
}

.col5_5 h3, .col7_3 h3, .col10 h3, .colfull h3, .error404 h3 {
    margin: 60px auto 15px;
    border-left: none;
}

.col5_5 h4, .col7_3 h4, .col10 h4, .colfull h4 {
    margin: 60px auto 7px;
    border-left: none;
}

.col5_5 h5, .col7_3 h5, .col10 h5, .colfull h5 {
    margin: 60px auto 15px;
    border-left: none;
}

.col10 .main h2:first-child {
    margin: 40px auto 20px;
}

.col10 .main p {
    margin: 0 auto 1em;
    /* max-width: 800px; */
}

.col10 .sidebar {
    display: none;
}

@media screen and (max-width: 960px) {
    .col10 .main {
        width: 98%;
        margin: 0 auto;
        float: none;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .col10 .main {
        max-width: 650px;
    }
}

/* (max-width: 680px) */
/****************************************
     フルワイズ
****************************************/
/*投稿・固定ページ*/
.colfull .article-container {
    max-width: 1000px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.colfull .widget:not(.widget_my_widget14) {
    max-width: 1000px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 960px) {
    .colfull .main {
        /*width: 92%;*/ width: 100%;
        max-width: none;
    }

    .colfull .article-container {
        width: 95%;
        max-width: initial;
    }

    .colfull .widget:not(.widget_my_widget14) {
        width: 95%;
        max-width: initial;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .colfull .article-container {
        float: none;
        width: 100%;
        max-width: 650px;
        margin: 0 auto;
    }

    .colfull .widget:not(.widget_my_widget14) {
        float: none;
        width: 98%;
        max-width: 650px;
        margin: 0 auto;
    }
}

/*アーカイブページ*/
.page .colfull #breadcrumb, .colfull .entry {
    /* max-width: 1000px; */
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 960px) {
    .page .colfull #breadcrumb, .colfull .entry {
        width: 95%;
        max-width: initial;
    }
}

@media screen and (max-width: 680px) {
    .page .colfull #breadcrumb, .colfull .entry {
        width: 90%;
        max-width: 650px;
    }
}

/****************************************
     フルワイズ左右マージンなし
****************************************/
.colfull .widget.widget-full-width, .colfull.col-no-margin .article-container {
    max-width: none !important;
}

/*親コンテナーに左右マージンがある場合のマージン打ち消しクラス*/
.colfull .widget .full-width-container, .col10 .widget .full-width-container {
    /*※vwは縦スクロールがでる環境ではスクロールバー分横に少しはみ出る*/
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    margin-bottom: 1em;
    /*overflow: hidden;*/
    box-sizing: content-box;
}

/*トップページで表示ウィジェットが100%になっている場合、不要のため打ち消し*/
.colfull .widget-full-width .full-width-container, .col10 .widget-full-width .full-width-container {
    margin-left: 0;
    margin-right: 0;
}

/*投稿ページ表示用*/
.colfull .article-container .full-width-container {
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    margin-bottom: 1em;
    /*overflow: hidden;*/
    box-sizing: content-box;
}

.widget.widget-full-width .my_widget_header, .widget.widget-full-width .widget_pageContent>*:not(.full-width-container), .colfull.col-no-margin .article-container>*:not(.full-width-container) {
    /*max-width: 1000px;
  margin-left: auto;
  margin-right: auto;*/
    /* margin-left: 30px; */
    /* margin-right: 30px; */
}

.widget.widget-full-width p.sample2, .colfull.col-no-margin p.sample2 {
    max-width: 100%;
}

.colfull.col-no-margin .article-container .full-width-container {
    margin-left: 0;
    margin-right: 0;
}

@media screen and (max-width: 960px) {
    /*  .colfull.col-no-margin .main {
    width: 100%;
  }
  */.page .colfull.col-no-margin #breadcrumb, .colfull.col-no-margin .entry, .colfull.col-no-margin .article-container {
        width: 100%;
        max-width: initial;
    }

    .widget.widget-full-width .my_widget_header, .widget.widget-full-width .widget_pageContent>*:not(.full-width-container), .colfull.col-no-margin .article-container>*:not(.full-width-container) {
        /* width: 95%; */
        max-width: initial;
        padding-left: 10px;
        padding-right: 10px;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .widget.widget-full-width .my_widget_header, .widget.widget-full-width .widget_pageContent>*:not(.full-width-container), .colfull.col-no-margin .article-container>*:not(.full-width-container) {
        float: none;
        /* width: 92%; */
        /* max-width: 650px; */
        /* margin: 0 auto; */
    }
}

/* (max-width: 680px) */
/* ********************************************************

  03.トップページのレイアウト

******************************************************** */
/* アイキャッチ(#eyecatch) */
.home #eyecatch.eyecatch-fullheight {
    width: 100%;
    height: inherit !important;
    overflow: hidden;
    /* min-height: 300px; */
    position: relative;
}

.home #eyecatch-in {
    width: 100%;
    height: 100%;
    padding: 0;
}

#eyecatch-in .eyecatch-slider.pc {
    display: block!important;
}

#eyecatch-in .eyecatch-slider.sm {
    display: none!important;
}

@media screen and (max-width: 680px) {
    #eyecatch-in .eyecatch-slider.pc {
        display: none!important;
    }

    #eyecatch-in .eyecatch-slider.sm {
        display: block!important;
    }
}

#eyecatch-in #eyecatch-slider-wrapper, #eyecatch-in .eyecatch-slider, #eyecatch-in .eyecatch-slider .slick-list, #eyecatch-in .eyecatch-slider .slick-track {
    height: 100%;
}

#eyecatch-in .eyecatch-slider .slick-track {
    overflow: hidden;
    /*IEだと#eyecatch-inのoverflow: hiddenが効かなかったので*/
}

#eyecatch-in .eyecatch-slider img {
    object-fit: cover;
    font-family: 'object-fit: cover';
    /*IE対策 object-fit-images*/
    width: 100%;
    /* height: 100%; */
}

/*フルワイズ画像zoom*/
#eyecatch-in .eyecatch-slider .slide-animation {
    /*スライドの切り替わりは5000msなので、ズーム効果が止まらないよう少し長めの秒数に*/
    animation: fadezoom 6500ms ease-out 0s forwards;
}

@keyframes fadezoom {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.2);
    }
}

/*カルーセル時の左右矢印の位地調整*/
#eyecatch-in .eyecatch-slider .slick-arrow {
    z-index: 100;
}

#eyecatch-in .eyecatch-slider .slick-prev {
    left: 1rem;
}

#eyecatch-in .eyecatch-slider .slick-next {
    right: 1rem;
}

/*カルーセル時 スライド高さを揃える*/
#eyecatch-in .eyecatch-slider .slick-track {
    display: flex;
}

#eyecatch-in .eyecatch-slider .slick-slide {
    height: auto !important;
}

/*フルワイズ動画*/
#eyecatch-in #eyecatch-movie {
    height: 100%;
    width: 100%;
    position: relative;
}

#eyecatch-movie .eyecatch-content {
    color: #ffffff;
}

#eyecatch-movie video {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

@media all and (-ms-high-contrast: none) {
    /* IE対策*/
    #eyecatch-movie video {
        position: absolute;
        min-width: 100%;
        min-height: 100%;
        width: auto;
        height: auto;
        max-width: none;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
}

/*youtube動画(16:9)の比率を保ち、object-fit:coverのような挙動にする*/
.yt-js #eyecatch-in #eyecatch-movie {
    /*上下中央固定*/
    /*position: absolute;*/
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: auto;
    /*jsで親コンテナー#eyecatch-movieの横幅を調整*/
}

/*youtube動画の縦横比を黒い枠を出さずに保持*/
.yt-js #eyecatch-in #yt-player-wrapper {
    padding-bottom: 56.25%;
    /*高さ(親コンテナー横幅に依存)をpaddingで指定(16:9)=(横100%:縦56.25%)*/
    height: 0px;
    position: relative;
}

.yt-js #eyecatch-in #eyecatch-movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#eyecatch-movie .eyecatch-filter {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
}

#eyecatch-movie .eyecatch-filter.filter-on {
    background-color: #20202030;
    background-image: radial-gradient(#6f6f6f 1px, transparent 0px);
    background-size: 3px 3px;
}

/*#eyecatch-in .metaslider {
    margin: 0 auto 20px;
}*/
/* 見出し */
.home .entry h2 {
    display: block;
    background: transparent;
    letter-spacing: 0.1rem;
    text-align: center;
    font-size: 2.1em;
    padding-bottom: 0;
}

.home .entry .widget:first-child div h2 {
}

.home .entry h2+.my_widget_subtitle {
    margin: 0 auto 15px;
}

@media screen and (max-width: 480px) {
    .home .entry h2+.my_widget_subtitle {
        line-height: 2;
        margin-bottom: 6.66666667vw;
        font-size: 3.46666667vw;
        letter-spacing: 0.02rem;
    }
}

/* (max-width: 480px) */
/* ********************************************************

  04.ページ共通のレイアウト

******************************************************** */
/****************************************
     アイキャッチ(#eyecatch)
****************************************/
.page #eyecatch-in, .single #eyecatch-in, .category #eyecatch-in {
    max-width: 100%;
    padding: 0;
}

.page #eyecatch-in img, .single #eyecatch-in img, .category #eyecatch-in img {
    width: 100%;
    min-height: 200px;
    object-fit: cover;
    font-family: 'object-fit: cover';
    /*IE対策 object-fit-images*/
    margin: 0 auto;
}

@media screen and (max-width: 480px) {
    .page #eyecatch-in img, .single #eyecatch-in img, .category #eyecatch-in img {
        min-height: 130px;
        margin: 0 auto 50px;
    }
}

/* (max-width: 480px) */
/****************************************
     パンクズリスト(#breadcrumb)
****************************************/
.page #breadcrumb {
    max-width: 960px;
    margin: 0 0 30px;
    padding: 0;
}

.page #breadcrumb li {
    float: left;
    padding-left: 0;
    padding-right: 10px;
    font-size: 70%;
    list-style-type: none;
}

/****************************************
     投稿情報
****************************************/
.page .post_contact {
    font-size: 80%;
    max-width: 480px;
    margin: 70px auto 0;
    text-align: right;
}

.page .post-meta {
    margin: 0 0 1em;
    padding: 0 0 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.page .post-meta li {
    margin: 0;
    padding-left: 1em;
    line-height: 1.2;
    list-style: none;
    font-size: 12px;
}

.page .post-meta li::before {
    content: none;
}

.page .post-meta li a {
    color: #333;
}

/****************************************
     スライドメニュー目次(#toc)
****************************************/
.page #toc_container {
    background: #f9f9f9;
    border: 1px solid #aaa;
    padding: 10px 20px;
    margin: 50px 0 100px;
    width: auto;
    display: table;
    font-size: 95%;
}

.page #toc_container p.toc_title+ul.toc_list {
    margin-top: 5px;
}

.page #toc_container li, #toc_container ul {
    margin: 0;
    padding: 0;
    line-height: 1.6;
}

.page #toc_container ul li::before {
    padding-right: 1em;
    content: none;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

/****************************************
     ページナビ
****************************************/
.p-navi dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-navi dl dt, .p-navi dl dd {
    font-size: 0.9em;
    padding: 0.5em 0;
}

.p-navi dl dt:first-child, .p-navi dl dt:nth-child(3) {
    min-width: 5.5em;
    margin: 0;
}

.p-navi dl dt:first-child {
    order: 1;
}

.p-navi dl dd:nth-child(2) {
    order: 2;
    margin: 0 auto 0 1em;
}

.p-navi dl dt:nth-child(3) {
    order: 4;
}

.p-navi dl dd:nth-child(4) {
    order: 3;
    margin: 0 1em 0 auto;
}

/* ********************************************************

  05.個別ページのレイアウト

******************************************************** */
/****************************************
     404ページ(.error404)
****************************************/
.error404 .error404-content h1 {
    padding: 1.5em 0 1.5em 45px;
    position: relative;
}

.error404 .error404-content h1::before {
    content: "\f071";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 38px;
    left: 5px;
}

.error404 .error404-content h3 {
    border: none;
    margin: 0;
    padding: 0;
}

.error404 .error404-content p {
    margin: 10px 0;
    line-height: 1.5;
}

.error404 .error404-content .blk {
    margin-top: 30px;
}

/*カスタム著作情報*/
.custom_author_info {
    border: 1px solid #dcdcdc;
    padding: 2em;
    clear: both;
}

.custom_author_info h3 {
    margin-top: 0;
}

.custom_author_info .cai_wrapper {
    display: flex;
}

.custom_author_info .cai_column:nth-child(2) {
    padding-left: 1em;
}

.custom_author_info .custom_author_photo img {
    max-width: 100px;
    width: 100px;
    border-radius: 100px;
}

.custom_author_info .custom_author_text {
    margin-bottom: 0;
}

@media screen and (max-width: 680px) {
    .custom_author_info .cai_wrapper {
        flex-direction: column;
    }

    .custom_author_info .cai_column:nth-child(2) {
        padding-left: 0;
    }

    .custom_author_info .custom_author_photo, .custom_author_info .cai_column:nth-child(2) .custom_author {
        text-align: center;
    }

    .custom_author_info .custom_author_photo img {
        max-width: 150px;
        width: 100%;
    }
}

/* (max-width: 680px) */
/* ********************************************************

  06.カテゴリページのレイアウト

******************************************************** */
/*リクルート*/
.category .cat_recruit_table {
    margin: 15px 0 0 0px;
}

/****************************************
     共通部分
****************************************/
.category .post-cat, .archive .post-cat, .search-results .post-cat {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.category .post-cat .post-cat-col, .archive .post-cat .post-cat-col, .search-results .post-cat .post-cat-col {
    width: 49%;
    padding: 0;
    margin: 0 2% 15px 0;
}

.category .post-cat .post-cat-col:nth-child(2n), .archive .post-cat .post-cat-col:nth-child(2n), .search-results .post-cat .post-cat-col:nth-child(2n) {
    margin-right: 0;
}

.col10 .category .post-cat .post-cat-col, .colfull .category .post-cat .post-cat-col, .col10 .archive .post-cat .post-cat-col, .colfull .archive .post-cat .post-cat-col {
    width: 32.5%;
    margin-right: 1.25%;
}

.col10 .category .post-cat .post-cat-col:nth-child(3n), .colfull .category .post-cat .post-cat-col:nth-child(3n), .col10 .archive .post-cat .post-cat-col:nth-child(3n), .colfull .archive .post-cat .post-cat-col:nth-child(3n) {
    margin-right: 0;
}

.category .post-cat .post-cat-col .blog_info, .archive .post-cat .post-cat-col .blog_info, .search-results .post-cat .post-cat-col .blog_info {
    font-size: 75%;
    text-align: right;
    margin: 9px 0 0;
    width: 100%;
}

.category .post-cat .post-cat-col>a, .archive .post-cat .post-cat-col>a, .search-results .post-cat .post-cat-col>a {
    display: block;
}

.category .post-cat .post-cat-col img, .archive .post-cat .post-cat-col img, .search-results .post-cat .post-cat-col img {
    margin: 0 auto;
    object-fit: cover;
    width: 100%;
    max-height: 200px;
}

.category .post-cat .post-cat-col div, .archive .post-cat .post-cat-col div, .search-results .post-cat .post-cat-col div {
    /*max-width: 420px;*/
    /*comment out 2021.08.31*/
    margin: 10px auto 0;
}

.category .post-cat .post-cat-col div a, .archive .post-cat .post-cat-col div a, .search-results .post-cat .post-cat-col div a {
    font-size: 95%;
    font-weight: bold;
}

.category .post-cat .post-cat-col h4, .archive .post-cat .post-cat-col h4, .search-results .post-cat .post-cat-col h4 {
    margin: 20px auto 5px;
    font-size: 100%;
    background: none;
    padding: 0;
}

.category .post-cat .post-cat-col div .cat-ex, .archive .post-cat .post-cat-col div .cat-ex, .search-results .post-cat .post-cat-col div .cat-ex {
    font-size: 90%;
}

.category .post-cat .post-cat-col p:first-child, .archive .post-cat .post-cat-col p:first-child, .search-results .post-cat .post-cat-col p:first-child {
    font-size: 90%;
}

.category .post-cat .post-cat-col p, .archive .post-cat .post-cat-col p, .search-results .post-cat .post-cat-col p {
    line-height: 1.4;
    width: 100%;
    margin: 0;
}

.category .post-cat .post-cat-col .cat_link, .archive .post-cat .post-cat-col .cat_link, .search-results .post-cat .post-cat-col .cat_link {
    text-align: right;
    max-width: 400px;
    margin: 0 auto;
}

.category .post-cat .post-cat-col .cat_link a, .archive .post-cat .post-cat-col .cat_link a, .search-results .post-cat .post-cat-col .cat_link a {
    color: #000;
    text-shadow: none;
    font-size: 85%;
    display: inline-block;
    margin: 10px 0;
    padding: 2px 0;
    line-height: 2.5;
    text-decoration: none;
}

.category .post-cat .post-cat-col .cat_link a::before, .archive .post-cat .post-cat-col .cat_link a::before, .search-results .post-cat .post-cat-col .cat_link a::before {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    width: 1.5em;
    padding-right: 0.5em;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}

.category .post-cat .post-cat-col .cat_link a:hover, .archive .post-cat .post-cat-col .cat_link a:hover, .search-results .post-cat .post-cat-col .cat_link a:hover {
    opacity: 0.8;
}

.category .post-cat .post-cat-col .cat_link a:hover::before, .archive .post-cat .post-cat-col .cat_link a:hover::before, .search-results .post-cat .post-cat-col .cat_link a:hover::before {
    padding-right: 0.1em;
}

@media screen and (max-width: 680px) {
    .category .post-cat, .archive .post-cat, .search-results .post-cat {
        min-height: 400px;
    }

    .col10 .category .post-cat .post-cat-col, .colfull .category .post-cat .post-cat-col, .col10 .archive .post-cat .post-cat-col, .colfull .archive .post-cat .post-cat-col {
        width: 49%;
        margin-right: 2%;
    }

    .col10 .category .post-cat .post-cat-col:nth-child(3n), .colfull .category .post-cat .post-cat-col:nth-child(3n), .col10 .archive .post-cat .post-cat-col:nth-child(3n), .colfull .archive .post-cat .post-cat-col:nth-child(3n) {
        margin-right: 2%;
    }

    .col10 .category .post-cat .post-cat-col:nth-child(2n), .colfull .category .post-cat .post-cat-col:nth-child(2n), .col10 .archive .post-cat .post-cat-col:nth-child(2n), .colfull .archive .post-cat .post-cat-col:nth-child(2n) {
        margin-right: 0;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    .category .post-cat .post-cat-col, .col10 .category .post-cat .post-cat-col, .colfull .category .post-cat .post-cat-col, .archive .post-cat .post-cat-col, .col10 .archive .post-cat .post-cat-col, .colfull .archive .post-cat .post-cat-col, .search-results .post-cat .post-cat-col {
        width: 100%;
        margin: 0 auto !important;
    }

    .category .post-cat .post-cat-col img, .archive .post-cat .post-cat-col img, .search-results .post-cat .post-cat-col img {
        margin: 0 auto;
        max-width: 420px;
    }

    .category .post-cat .post-cat-col div, .archive .post-cat .post-cat-col div, .search-results .post-cat .post-cat-col div {
        width: 100%;
    }
}

/* (max-width: 480px) */
/****************************************
     ページネーション
****************************************/
.category div.pagination, .archive div.pagination, .search-results div.pagination {
    clear: both;
    position: relative;
    font-size: 14px;
    padding: 2px;
    background-color: initial;
}

.category div.pagination a, .archive div.pagination a, .search-results div.pagination a {
    padding: 2px 7px;
    margin: 2px;
    border: solid #eee 1px;
    background-color: #fff;
    text-decoration: none;
}

.category div.pagination a:hover, .archive div.pagination a:hover, div.pagination a:active {
    background-color: #444444;
    color: #fff;
}

.category div.pagination span.current, .archive div.pagination span.current, .search-results div.pagination span.current {
    padding: 2px 7px;
    margin: 2px;
    font-weight: bold;
    background-color: #000;
    color: #fff;
}

.category div.pagination span.disabled, .archive div.pagination span.disabled, .search-results div.pagination span.disabled {
    padding: 2px 5px;
    margin: 2px;
    background-color: #c1c1c1;
    color: #797979;
}

/* ********************************************************

  07.投稿ページのレイアウト

******************************************************** */
/****************************************
     アイキャッチ(#eyecatch)
****************************************/
.single #eyecatch-in img {
    height: auto;
    max-height: 300px;
}

/* (max-width: 960px) */
/****************************************
     ブログページ(#blog)
****************************************/
#blog dd h4 {
    font-size: 100%;
    font-weight: bold;
    padding: 0px;
    margin: 0 0 5px;
    clear: none;
    line-height: 1.2;
    border: none;
    text-align: left;
}

#blog dd h4 a {
    text-decoration: none;
}

#blog dt {
    float: left;
    width: 100px;
    border: none;
    margin: 0;
    padding: 0 20px 0 0;
}

#blog dt img {
    width: 100px;
}

#blog dd {
    padding: 5px 0 0 110px;
    line-height: 1.2;
    border: none;
}

.main #blog dd {
    padding: 5px 0 0 120px;
}

.main #blog dd h4 {
    text-decoration: underline;
    font-weight: normal;
}

#blog dd p {
    margin: 0;
    text-align: left;
}

#blog dl {
    margin: 0 0 10px;
    padding: 0 0 10px;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #e7e5e4;
}

#blog dl:last-child {
    margin-bottom: 20px;
    border-style: none;
}

/* ********************************************************

  08.ウィジェット関連のレイアウト

******************************************************** */
/******************************
     ウィジェット - 共通
******************************/
.main .widget {
    position: relative;
    margin: 100px 0 0 0;
    padding: 20px 0;
}

.my_widget_subtitle {
    margin: 0 0 15px;
}

.sidebar .widget {
    margin: 20px 0 20px;
}

.main .widget:first-child, .sidebar .widget:first-child {
    margin: 0 0 20px;
    padding: 0;
}

.main .widget:first-child, .sidebar .widget:first-child .contact_in {
    margin: 0 auto 0;
}

.main .widget h4, .sidebar .widget h4 {
    background: none;
    font-weight: normal;
    font-size: 110%;
    padding: 0;
    margin: 5px 0;
}

.widget_nav_menu span {
    display: none;
}

.col10 .widget.widget-full-width {
    margin-left: calc(((100vw - 100%) / 2) * -1) !important;
    margin-right: calc(((100vw - 100%) / 2) * -1) !important;
    max-width: none !important;
    width: auto !important;
}

.custom-field:empty {
    margin: 0;
}

/******************************
     #01モジュールページ挿入(My_Widget14)
******************************/
.home .colfull .widget_my_widget14 {
    max-width: 1000px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 960px) {
    .home .colfull .widget_pageContent {
        /*width: 95%;*/ max-width: initial;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .home .colfull .widget_pageContent {
        float: none;
        /*width: 98%;*/
        /*max-width: 650px;*/
        margin: 0 auto;
    }
}

/* (max-width: 680px) */
/******************************
     #03投稿リスト(My_Widget02)
******************************/
.widget_my_widget02 ul li {
    list-style: none;
    margin: 10px 0;
    padding: 0 0 0 0;
}

/*.widget_my_widget02 ul li a {*/
.widget_my_widget02 a {
    color: #000;
}

/*.widget_my_widget02 ul li a:hover {*/
.widget_my_widget02 a:hover {
    text-decoration: none;
}

.widget_my_widget02 ul li::after {
    content: "";
    display: block;
    clear: both;
}

.widget_my_widget02 ul li::before {
    content: none;
}

.sidebar .widget_my_widget02 ul.template3 .wd_title, .sidebar .widget_my_widget02 ul.template4 .wd_title {
    font-size: 85%;
    /*line-height: 1.2;*/
}

.sidebar .widget_my_widget02 h3 {
    margin: 20px 0 0;
    padding: 0;
    font-size: 110%;
    font-weight: bold;
    background-color: initial;
    border: none;
    clear: both;
}

.col7_3 .entry .widget_my_widget02 ul.template1, .col7_3 .entry .widget_my_widget02 ul.template3, .col7_3 .entry .widget_my_widget02 ul.template4, .col7_3 .entry .widget_my_widget02 ul.template5, .col7_3 .entry .widget_my_widget02 ul.template6, .col7_3 .entry .widget_my_widget02 ul.template7, .col10 .entry .widget_my_widget02 ul.template1, .col10 .entry .widget_my_widget02 ul.template3, .col10 .entry .widget_my_widget02 ul.template4, .col10 .entry .widget_my_widget02 ul.template5, .col10 .entry .widget_my_widget02 ul.template6, .col10 .entry .widget_my_widget02 ul.template7, .colfull .entry .widget_my_widget02 ul.template1, .colfull .entry .widget_my_widget02 ul.template3, .colfull .entry .widget_my_widget02 ul.template4, .colfull .entry .widget_my_widget02 ul.template5, .colfull .entry .widget_my_widget02 ul.template6, .colfull .entry .widget_my_widget02 ul.template7 {
    margin: 0 0 18px 0;
    padding: 0;
    -moz-column-count: 2;
    -moz-column-gap: 40px;
    -moz-column-rule: 1px solid #ccc;
    -webkit-column-count: 2;
    -webkit-column-gap: 40px;
    -webkit-column-rule: 1px solid #ccc;
    column-count: 2;
    column-gap: 40px;
    column-rule: 1px solid #ccc;
}

.col5_5 .entry .widget_my_widget02 ul.template1 li, .col5_5 .entry .widget_my_widget02 ul.template3 li, .col5_5 .entry .widget_my_widget02 ul.template4 li, .col7_3 .entry .widget_my_widget02 ul.template1 li, .col7_3 .entry .widget_my_widget02 ul.template3 li, .col7_3 .entry .widget_my_widget02 ul.template4 li, .col7_3 .entry .widget_my_widget02 ul.template5 li, .col7_3 .entry .widget_my_widget02 ul.template6 li, .col7_3 .entry .widget_my_widget02 ul.template7 li, .col10 .entry .widget_my_widget02 ul.template1 li, .col10 .entry .widget_my_widget02 ul.template3 li, .col10 .entry .widget_my_widget02 ul.template4 li, .col10 .entry .widget_my_widget02 ul.template5 li, .col10 .entry .widget_my_widget02 ul.template6 li, .col10 .entry .widget_my_widget02 ul.template7 li, .colfull .entry .widget_my_widget02 ul.template1 li, .colfull .entry .widget_my_widget02 ul.template3 li, .colfull .entry .widget_my_widget02 ul.template4 li, .colfull .entry .widget_my_widget02 ul.template5 li, .colfull .entry .widget_my_widget02 ul.template6 li, .colfull .entry .widget_my_widget02 ul.template7 li {
    overflow: hidden;
    list-style: none;
    margin: 0 0 15px 0;
    padding: 5px 0 0 0;
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    break-inside: avoid-column;
}

.col5_5 .entry .widget_my_widget02 ul.template1 li img, .col5_5 .entry .widget_my_widget02 ul.template3 li img, .col5_5 .entry .widget_my_widget02 ul.template4 li img, .col7_3 .entry .widget_my_widget02 ul.template1 li img, .col7_3 .entry .widget_my_widget02 ul.template3 li img, .col7_3 .entry .widget_my_widget02 ul.template4 li img, .col10 .entry .widget_my_widget02 ul.template1 li img, .col10 .entry .widget_my_widget02 ul.template3 li img, .col10 .entry .widget_my_widget02 ul.template4 li img, .colfull .entry .widget_my_widget02 ul.template1 li img, .colfull .entry .widget_my_widget02 ul.template3 li img, .colfull .entry .widget_my_widget02 ul.template4 li img {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    float: none;
    border-radius: 3px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .2);
}

.col7_3 .entry .widget_my_widget02 ul.template1 li .wd_thumbnail, .col7_3 .entry .widget_my_widget02 ul.template3 li .wd_thumbnail, .col7_3 .entry .widget_my_widget02 ul.template4 li .wd_thumbnail, .col10 .entry .widget_my_widget02 ul.template1 li .wd_thumbnail, .col10 .entry .widget_my_widget02 ul.template3 li .wd_thumbnail, .col10 .entry .widget_my_widget02 ul.template4 li .wd_thumbnail, .colfull .entry .widget_my_widget02 ul.template1 li .wd_thumbnail, .colfull .entry .widget_my_widget02 ul.template3 li .wd_thumbnail, .colfull .entry .widget_my_widget02 ul.template4 li .wd_thumbnail {
    display: block;
    width: 75px;
    height: 75px;
    overflow: hidden;
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
}

.sidebar .widget_my_widget02 ul.template1 li, .sidebar .widget_my_widget02 ul.template3 li, .sidebar .widget_my_widget02 ul.template4 li {
    position: relative;
    min-height: 60px;
    list-style: none;
    margin: 0;
    padding: 15px 0;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    clear: both;
}

.sidebar .widget_my_widget02 ul.template1 li img, .sidebar .widget_my_widget02 ul.template3 li img, .sidebar .widget_my_widget02 ul.template4 li img {
    width: 60px;
    height: 60px;
    float: left;
    margin: 0 10px 0 0;
    padding: 0;
    max-width: 100%;
}

.col5_5 .entry .widget_my_widget02 ul.template1 li a.wd_thumnail, .col5_5 .entry .widget_my_widget02 ul.template3 li a.wd_thumnail, .col5_5 .entry .widget_my_widget02 ul.template4 li a.wd_thumnail, .sidebar .widget_my_widget02 ul.template1 li a.wd_thumnail, .sidebar .widget_my_widget02 ul.template3 li a.wd_thumnail, .sidebar .widget_my_widget02 ul.template4 li a.wd_thumnail {
    float: left;
    margin-right: 10px;
    padding: 0;
}

.col5_5 .entry .widget_my_widget02 ul.template1 li a.wd_thumnail img, .col5_5 .entry .widget_my_widget02 ul.template3 li a.wd_thumnail img, .col5_5 .entry .widget_my_widget02 ul.template4 li a.wd_thumnail img, .sidebar .widget_my_widget02 ul.template1 li a.wd_thumnail img, .sidebar .widget_my_widget02 ul.template3 li a.wd_thumnail img, .sidebar .widget_my_widget02 ul.template4 li a.wd_thumnail img {
    float: none;
    margin-right: 10px;
    display: block;
}

.widget_my_widget02 ul.template1 .wd_excerpt {
    display: block;
}

.widget_my_widget02 ul.template1 small.wd_excerpt, .widget_my_widget02 ul.template4 small.wd_excerpt, .widget_my_widget02 ul.template6 small.wd_excerpt {
    font-size: 80%;
}

.sidebar .widget_my_widget02 ul.template1 .wd_excerpt, .sidebar .widget_my_widget02 ul.template4 .wd_excerpt, .sidebar .widget_my_widget02 ul.template6 .wd_excerpt {
    font-size: 85%;
    line-height: 1.2;
}

@media screen and (max-width: 680px) {
    .col7_3 .entry .widget_my_widget02 ul.template1, .col7_3 .entry .widget_my_widget02 ul.template3, .col7_3 .entry .widget_my_widget02 ul.template4, .col10 .entry .widget_my_widget02 ul.template1, .col10 .entry .widget_my_widget02 ul.template3, .col10 .entry .widget_my_widget02 ul.template4, .colfull .entry .widget_my_widget02 ul.template1, .colfull .entry .widget_my_widget02 ul.template3, .colfull .entry .widget_my_widget02 ul.template4 {
        -webkit-column-count: auto;
        column-count: auto;
        -webkit-column-gap: normal;
        column-gap: normal;
        -webkit-column-rule: none;
        column-rule: none;
    }
}

/* (max-width: 680px) */
/* 投稿リストパーツ */
.widget_my_widget02 .post_new {
    border: 1px solid #da3e5a;
    display: inline-block;
    padding: 0px 5px 3px;
    line-height: 1.2;
    border-radius: 3px;
    margin-right: 4px;
    letter-spacing: -0.03em;
    color: #da3e5a;
    border-color: #da3e5a;
    font-size: 11px;
}

.widget_my_widget02 ul.template2 .post_new, .widget_my_widget02 ul.template3 .post_new, .widget_my_widget02 ul.template5 .post_new, .widget_my_widget02 ul.template8 .post_new {
    margin-left: 4px;
}

.widget_my_widget02 ul.template4 .post_new {
    font-size: 11px;
    vertical-align: 3px;
}

.widget_my_widget02 li .title, .widget_my_widget02 div .title {
    line-height: 1.2;
    margin: 0 0 5px;
}

.widget_my_widget02 li .date, .widget_my_widget02 div .date {
    font-size: 85%;
    line-height: 1;
    margin: 0 0 4px;
}

.widget_my_widget02 li .categories, .widget_my_widget02 div .categories {
    font-size: 85%;
    line-height: 1;
    margin: 0 30px 0 0;
}

.widget_my_widget02 .categories .cate {
    display: inline-block;
    background-color: #e0e0e0;
    border-radius: 5px;
    padding: 5px;
    margin-right: 5px;
    margin-bottom: 4px;
}

.widget_my_widget02 li .wd_excerpt, .widget_my_widget02 div .wd_excerpt {
    line-height: 1.2;
}

/* テンプレート1(templete1) */
/*.col5_5 .template1 li:first-child {
  padding: 0 0 10px;
}*/
/*.col5_5 .template1 li {
  position: relative;
  min-height: 120px;
  list-style: none;
  margin: 0;
  padding: 15px 0 10px;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
  clear: both;
}*/
.col5_5 .template1 li a, .sidebar .template1 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

/*.col5_5 .template1 li img {*/
.col5_5 .entry .widget_my_widget02 ul.template1 li .wd_thumbnail, .col5_5 .entry .widget_my_widget02 ul.template3 li .wd_thumbnail, .col5_5 .entry .widget_my_widget02 ul.template4 li .wd_thumbnail {
    display: block;
    width: 75px;
    height: 75px;
    overflow: hidden;
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
}

/* テンプレート2(templete2) */
.widget_my_widget02 ul.template2 {
    max-width: 1000px;
    margin: 0 auto;
}

.widget_my_widget02 .template2 li {
    border-top: 1px solid #000;
    margin: 0;
}

.widget_my_widget02 .template2 li:last-child {
    border-bottom: 1px solid #000;
}

.widget_my_widget02 .template2 li a {
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 30px 15px 0;
}

.widget_my_widget02 ul.template2 li .date {
    margin: 0;
    font-size: 1em;
    min-width: 15%;
}

.widget_my_widget02 ul.template2 li .categories {
    font-size: 1em;
}

.widget_my_widget02 ul.template2 li .categories .cate {
    margin-bottom: 0;
}

.widget_my_widget02 ul.template2 li .title {
    margin: 0;
    line-height: 1.0;
}

@media screen and (max-width: 960px) {
    .widget_my_widget02 .template2 li a {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .widget_my_widget02 ul.template2 li .title {
        width: 100%;
        line-height: 1.5;
    }
}

/* (max-width: 480px) */
/* テンプレート3(templete3) */
.widget_my_widget02 .template3 li .title {
}

.col5_5 .entry .template3 li:first-child {
    padding: 0 0 10px;
}

/*.col5_5 .entry .template3 li {
  position: relative;
  min-height: 120px;
  list-style: none;
  margin: 0;
  padding: 15px 0 10px;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
  clear: both;
}*/
.widget_my_widget02 .template3 li a, .sidebar .widget_my_widget02 .template3 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

/*.col5_5 .widget_my_widget02 .template3 li img {
  width: 110px;
  height: 110px;
  float: left;
  margin: 0 10px 10px 0;
  padding: 0;
  max-width: 100%;
}*/
/* テンプレート4(templete4) */
.widget_my_widget02 .template4 li .wd_excerpt, .widget_my_widget02 .template6 li .wd_excerpt {
    line-height: 1.2;
    display: block;
}

.col5_5 .entry .template4 li:first-child {
    padding: 0 0 10px;
}

ul.template4 li:nth-last-of-type(2), ul.template4 li:last-of-type {
    border: none;
}

.col5_5 .template4 li a, .sidebar .template4 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

.col5_5 .template4 li img {
    width: 110px;
    height: 110px;
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
    max-width: 100%;
}

/*@media screen and (max-width: 680px) {
  ul.template4 li:nth-last-of-type(2){
    border-bottom: 1px solid rgba(0, 0, 0, .1);
  }
}*/
@media screen and (max-width: 480px) {
    ul.template4 li {
        min-height: 140px;
    }
}

/* テンプレート5(templete5) */
.col5_5 .entry .template5 li:first-child {
    padding: 0 0 10px;
}

ul.template5 li {
    position: relative;
    min-height: 120px;
    list-style: none;
    margin: 0;
    padding: 15px 0 10px;
    clear: both;
}

ul.template5 li img {
    width: 100%;
}

ul.template5 li .wd_title {
    margin: 10px 0 0;
    line-height: 1.2;
    display: inline-block;
}

ul.template5 li:nth-last-of-type(2), ul.template5 li:last-of-type {
    border: none;
}

.col5_5 .template5 li a, .sidebar .template5 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

/*.col5_5 .template5 li img {
  width: 110px;
  height: 110px;
  float: left;
  margin: 0 10px 10px 0;
  padding: 0;
  max-width: 100%;
}*/
/*@media screen and (max-width: 680px) {
  ul.template5 li:nth-last-of-type(2){
    border-bottom: 1px solid rgba(0, 0, 0, .1);
  }
}*/
@media screen and (max-width: 480px) {
    ul.template5 li {
        min-height: 140px;
    }
}

/* テンプレート6(templete6) */
.col5_5 .entry .template6 li:first-child {
    padding: 0 0 10px;
}

ul.template6 li {
    position: relative;
    min-height: 120px;
    list-style: none;
    margin: 0;
    padding: 15px 0 10px;
    clear: both;
}

ul.template6 li img {
    width: 100%;
}

ul.template6 li .wd_title {
    margin: 10px 0 0;
    line-height: 1.2;
    display: inline-block;
}

.col5_5 .template6 li a, .sidebar .template6 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

/*.col5_5 .template6 li img {
  width: 110px;
  height: 110px;
  float: left;
  margin: 0 10px 10px 0;
  padding: 0;
  max-width: 100%;
}*/
/*@media screen and (max-width: 680px) {
  ul.template6 li:nth-last-of-type(2){
    border-bottom: 1px solid rgba(0, 0, 0, .1);
  }
}*/
@media screen and (max-width: 480px) {
    ul.template6 li {
        min-height: 140px;
    }
}

/* テンプレート6(templete6) */
ul.template6 li .wd_excerpt {
    margin: 10px 0 1em 0;
    font-size: 80%;
}

/* テンプレート7(templete7) */
.col5_5 .entry .template7 li:first-child {
    padding: 0 0 10px;
}

ul.template7 li {
    position: relative;
    min-height: 120px;
    list-style: none;
    margin: 0;
    padding: 15px 0 10px;
    clear: both;
}

ul.template7 li img {
    width: 100%;
}

ul.template7 li .wd_title, div.template7 .wd_title {
    margin: 10px 0;
    line-height: 1.2;
    display: inline-block;
}

ul.template7 li:nth-last-of-type(2), ul.template7 li:last-of-type {
    border: none;
}

ul.template7 tbody th, ul.template7 tbody td {
    padding: 10px;
    font-size: 85%;
}

.col5_5 .template7 li a, .sidebar .template7 li a {
    position: relative;
    text-decoration: none;
    text-indent: 0;
}

@media screen and (max-width: 680px) {
    .col7_3 .entry .widget_my_widget02 ul.template7, .col10 .entry .widget_my_widget02 ul.template7, .colfull .entry .widget_my_widget02 ul.template7 {
        -moz-column-count: 1;
        -webkit-column-count: 1;
        column-count: 1;
    }

    ul.template7 tbody th, ul.template7 tbody td {
        font-size: 100%;
    }
}

@media screen and (max-width: 480px) {
    ul.template7 li {
        min-height: 140px;
    }
}

/* テンプレート8(templete8) */
.widget_my_widget02 ul.template8 {
    max-width: 1000px;
    margin: 0 auto;
}

.widget_my_widget02 ul.template8 li {
    position: relative;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #231815;
    clear: both;
    overflow: hidden;
    list-style: none;
}

.widget_my_widget02 ul.template8 li:first-of-type {
    border-top: 1px solid #231815;
}

.widget_my_widget02 ul.template8 li::after, .sidebar .widget_my_widget02 ul.template8 li::after {
    content: "\f105";
    font-size: 40px;
    line-height: 1;
    height: 1em;
    color: #000;
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    top: 0px;
    bottom: 0;
    right: 10px;
    margin: auto;
    visibility: initial;
}

.widget_my_widget02 .template8 li a {
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 15px 30px 15px 0;
}

.widget_my_widget02 ul.template8 li .date {
    margin: 0;
    font-size: 1em;
    min-width: 15%;
}

.widget_my_widget02 ul.template8 li .categories {
    font-size: 1em;
}

.widget_my_widget02 ul.template8 li .categories .cate {
    margin-bottom: 0;
}

.widget_my_widget02 ul.template8 li .title {
    margin: 0;
    line-height: 1.0;
}

@media screen and (max-width: 960px) {
    .widget_my_widget02 .template8 li a {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .widget_my_widget02 ul.template8 li .title {
        width: 100%;
        line-height: 1.5;
    }
}

@media screen and (max-width: 480px) {
    .widget_my_widget02 ul.template8 li {
        font-size: 95%;
    }
}

/******************************
     投稿リスト（スライダー形式）
******************************/
/*slickスライダーデフォルトcssの上書き*/
.widget_my_widget02 .slick-track {
    display: flex;
}

.widget_my_widget02 .slick-slider {
    margin: 0 25px;
    /*進む・戻るボタン分のマージン*/
}

.widget_my_widget02 .slick-slider .slick-slide {
    margin: 0 5px;
    position: relative;
    /*flexボックスで内コンテナーの縦幅をフィットさせるため*/
    float: none;
    height: auto;
}

/*共通*/
.widget_my_widget02 .slick-slider .wd_excerpt {
    font-size: 80%;
    display: block;
}

.widget_my_widget02 .slick-slider .post_new {
    margin-left: 4px;
}

.widget_my_widget02 .slick-slider .wd_thumbnail img {
    width: 100%;
}

/*template1,3,4*/
.widget_my_widget02 .template1.slick-slider .wd_thumbnail, .widget_my_widget02 .template3.slick-slider .wd_thumbnail, .widget_my_widget02 .template4.slick-slider .wd_thumbnail {
    width: 75px;
    height: 75px;
    overflow: hidden;
    float: left;
    margin: 0 10px 5px 0;
}

/*template2,8*/
.widget_my_widget02 .template2.slick-slider .slick-slide, .widget_my_widget02 .template8.slick-slider .slick-slide {
    margin: 0 10px;
}

.widget_my_widget02 .template2.slick-slider .slick-slide:after, .widget_my_widget02 .template8.slick-slider .slick-slide:after {
    position: absolute;
    top: 0;
    right: -10px;
    height: 100%;
    content: '';
    border-right: 1px solid #ccc;
}

/*template7*/
.widget_my_widget02 .template7.slick-slider .recruit_table {
    font-size: 80%;
}

.widget_my_widget02 .template7.slick-slider .recruit_table th, .widget_my_widget02 .template7.slick-slider .recruit_table td {
    padding: 5%;
}

.widget_my_widget02 .template7.slick-slider .recruit_table th {
    min-width: 6em;
}

/******************************
     投稿リスト（タブ形式）
******************************/
.tab-link-list {
    max-width: 1000px;
    margin: 0 auto 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.tab-link:first-child {
    margin: 0 0 0 0;
}

.tab-link {
    display: block;
    background: #f1f1f1;
    color: #000;
    border: none;
    border-bottom: none;
    outline: none;
    cursor: pointer;
    margin: 0 0 0 0.7em;
    padding: 1em 1.5em;
    transition: 0.3s;
    font-size: 85%;
    font-weight: 600;
    line-height: 1.4;
    -webkit-flex-grow: 1;
    -ms-flex-grow: 1;
    flex-grow: 1;
}

.tab-link:hover {
    opacity: 0.8;
}

.tab-link.active {
    background: #5c6266;
    color: #fff;
}

.tab-panel {
    display: none;
}

.tab-panel.active {
    display: block;
}

.col5_5 .tab-link {
    float: none;
    display: inline-block;
}

.col5_5 .tab-link-list {
    white-space: nowrap;
    height: 50px;
    overflow-y: hidden;
}

@media screen and (max-width: 680px) {
    .tab-link {
        float: none;
        display: inline-block;
    }

    .tab-link-list {
        white-space: nowrap;
        height: 50px;
        overflow-y: hidden;
    }
}

/* (max-width: 680px) */
/******************************
     #04関連投稿(My_Widget06)
******************************/
.widget_my_widget06 {
}

.widget_my_widget06 a {
    color: #000;
}

.sidebar .widget_my_widget06 ul {
}

.sidebar .widget_my_widget06 ul li {
    padding: 0;
    margin: 0 0 15px 0;
}

.sidebar .widget_my_widget06 ul li::after {
    content: "";
    display: block;
    clear: both;
}

.col5_5 .entry .widget_my_widget06 ul li, .col7_3 .entry .widget_my_widget06 ul li, .col10 .entry .widget_my_widget06 ul li, .colfull .entry .widget_my_widget06 ul li, .colfull-no-margin .entry .widget_my_widget06 ul li {
    overflow: hidden;
    list-style: none;
    margin: 0 0 15px 0;
    padding: 0;
    -moz-column-break-inside: avoid;
    -webkit-column-break-inside: avoid;
    break-inside: avoid-column;
}

.col7_3 .entry .widget_my_widget06 ul li .wd_thumbnail, .col10 .entry .widget_my_widget06 ul li .wd_thumbnail, .colfull .entry .widget_my_widget06 ul li .wd_thumbnail, .colfull-no-margin .entry .widget_my_widget06 ul li .wd_thumbnail {
    display: block;
    width: 75px;
    height: 75px;
    overflow: hidden;
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
}

.widget_my_widget06 .wp_rp_title {
    display: block;
    line-height: 1.2;
    margin: 0 0 10px 0;
    padding: 0;
}

.widget_my_widget06 .wp_rp_thumbnail img {
    /* width: 110px; */
    /* height: 110px; */
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
    max-width: 100%;
}

.widget_my_widget06 ul .wp_rp_excerpt {
    display: block;
    line-height: 1.2;
    font-size: 80%;
}

.widget_my_widget06 a.wp_rp_thumbnail {
    display: block;
    width: 75px;
    height: 75px;
    overflow: hidden;
    float: left;
    margin: 0 10px 10px 0;
    padding: 0;
}

/********************
  #05お問い合わせ(My_Widget03)
********************/
.widget_my_widget03 p.lead span {
    white-space: nowrap;
    display: inline-block;
}

/********************
  #06会社情報(My_Widget04)
********************/
.widget_my_widget04 th span {
    white-space: nowrap;
    display: inline-block;
}

.widget_my_widget04 [itemprop="telephone"] a[href ^="tel:"]::after {
    content: "";
    /*telアイコンを表示しない*/
}

/********************
  #07バナー(My_Widget05)
********************/
.widget_my_widget05 .banner-align-center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.widget_my_widget05 .banner-align-center .banner-wrapper {
    width: auto;
    max-width: 220px;
    margin: 0 calc((99.9% - 220px * 4) / 3) 10px 0;
    position: relative;
    border: 1px solid #333;
}

.widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(4n) {
    margin-right: 0;
}

.widget_my_widget05 .banner-align-center .banner-wrapper a {
    position: relative;
    display: block;
}

.widget_my_widget05 .banner-align-center .banner-wrapper img {
    width: 100%;
    display: block;
}

.widget_my_widget05 .banner-wrapper .overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #5c6266;
    overflow: hidden;
    width: 0;
    height: 100%;
    -webkit-transition: .5s ease;
    transition: .5s ease;
}

.widget_my_widget05 .banner-align-center .banner-wrapper .banner-info .text-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    /*max-width: 100%;*/
    /* 真ん中にテキストを表示させたい場合*/
    /*white-space: nowrap;*/
    /* これを有効にするとホバー時にテキストが動かないが、その代わりテキストが折り返さない */
    width: 100%;
    /*max-height: 100%;*/
    padding: 10px;
    line-height: 1.4;
    text-align: left;
    font-size: 80%;
    color: #fff;
    opacity: 0;
    /*  -webkit-transition: opacity .5s ease .3;
  transition: opacity .5s ease .3;*/
    -webkit-transition: opacity .5s ease, width .5s ease;
    transition: opacity .5s ease, width .5s ease;
}

.widget_my_widget05 .banner-align-center .banner-wrapper .banner-info .text-overlay h4 {
    margin: 0;
    padding: 0;
}

.widget_my_widget05 .banner-align-center .banner-wrapper .banner-info .text-overlay h4+small {
    margin-top: 0.5em;
    display: inline-block;
    line-height: 1.4;
}

.widget_my_widget05 .banner-align-center .banner-wrapper:hover .banner-info .overlay {
    width: 100%;
}

.widget_my_widget05 .banner-align-center .banner-wrapper:hover .banner-info .text-overlay {
    opacity: 1;
}

.widget_my_widget05 .banner-align-center .edit {
    width: 100% !important;
}

@media screen and (max-width: 940px) {
    .widget_my_widget05 .banner-align-center .banner-wrapper, .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(4n) {
        margin: 0 calc((99.9% - 220px * 3) / 2) 15px 0;
    }

    .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(3n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 710px) {
    .widget_my_widget05 .banner-align-center .banner-wrapper, .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n), .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(3n) {
        margin: 0 calc((99.9% - 220px * 2) / 4) 15px;
    }
}

@media screen and (max-width: 480px) {
    .widget_my_widget05 .banner-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .widget_my_widget05 .banner-align-center .banner-wrapper {
        margin: 0 1% 15px !important;
    }
}

/* (max-width: 480px) */
.col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper {
    margin: 0 calc((99.9% - 270px * 3) / 2) 15px 0;
}

.col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(3n) {
    margin-right: 0;
}

@media screen and (max-width: 1060px) {
    .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper, .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(3n) {
        margin: 0 calc((99.9% - 220px * 2) / 4) 15px;
    }

    .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n) {
        margin-right: 0;
    }
}

@media screen and (max-width: 710px) {
    .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper, .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n), .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(3n) {
        margin: 0 calc((99.9% - 220px * 2) / 4) 15px;
    }
}

@media screen and (max-width: 480px) {
    .col7_3 .widget_my_widget05 .banner-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .col7_3 .widget_my_widget05 .banner-align-center .banner-wrapper {
        margin: 0 1% 15px !important;
    }
}

/* (max-width: 480px) */
.col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper {
    margin: 0 calc(99.9% - 220px * 2) 15px 0;
}

.col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n) {
    margin-right: 0;
}

@media screen and (max-width: 960px) {
    .col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper, .col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n) {
        margin: 0 auto 15px;
    }
}

/* (max-width: 960px) */
@media screen and (max-width: 680px) {
    .col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper {
        margin: 0 calc(99.9% - 220px * 2) 15px 0;
    }

    .col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper:nth-of-type(2n) {
        margin-right: 0;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    .col5_5 .widget_my_widget05 .banner-align-center {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .col5_5 .widget_my_widget05 .banner-align-center .banner-wrapper {
        margin: 0 1% 15px !important;
    }
}

/* (max-width: 480px) */
.sidebar .widget_my_widget05 .banner-align-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sidebar .widget_my_widget05 .banner-align-center .banner-wrapper {
    margin: 0 auto 10px !important;
}

/********************
  #09RSS購読ボタン(My_Widget07)
********************/
.widget_my_widget07 .rssbox {
    letter-spacing: 0;
    text-align: center;
}

.widget_my_widget07 .rssbox a.banner-btn {
    font-size: 0.9em;
    letter-spacing: 0.1em;
    color: #000;
    border: 1px solid #000;
    text-align: center;
    position: relative;
    padding: 0.5em 0;
    text-decoration: none;
    display: block;
    width: 180px;
}

.sidebar .widget_my_widget07 .rssbox a.banner-btn {
    width: 100%;
}

.widget_my_widget07 .rssbox a.banner-btn::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 0;
    height: 100%;
    transition: 0.3s ease all;
    background: #5c6266;
}

.widget_my_widget07 .rssbox a.banner-btn::after {
    content: "\f09e";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin: 0 -5px 0 5px;
    display: inline-block;
}

.widget_my_widget07 .rssbox a.banner-btn:hover {
    color: #fff;
}

.widget_my_widget07 .rssbox a.banner-btn:hover::before {
    width: 100%;
}

/********************
  #10グーグルマップ(My_Widget09)
********************/
.widget_my_widget09 .embed-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px;
}

.widget_my_widget09 .embed-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.widget_my_widget09 .embed-container .mce-preview-object {
    position: static;
}

/********************
  #11ソーシャルボタン(My_Widget10)
********************/
.widget_my_widget10 .sns {
    margin: 30px auto;
}

.widget_my_widget10 .sns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.widget_my_widget10 .sns li {
    margin: 5px 0;
}

.widget_my_widget10 .sns .snsb li {
    margin: 0 10px 0 0;
    padding: 0px;
    list-style-type: none;
}

.widget_my_widget10 .sns .snsb li::before {
    padding: 0;
    margin: 0;
    content: none;
}

.widget_my_widget10 .sns .snsb.clearfix {
    padding-top: 20px 0;
}

/********************
  #12カテゴリ一覧(My_Widget15)
********************/
.widget_my_widget15 ul {
    text-align: center;
}

.widget_my_widget15 ul li {
    display: inline-block;
    margin: 0 5px 10px;
}

.widget_my_widget15 ul li::before {
    content: none;
}

.widget_my_widget15 ul li a {
    display: block;
    font-size: 0.9em;
    color: #333;
    border: 1px solid #333;
    min-width: 145px;
    line-height: 1.4;
    position: relative;
    margin: 0 auto;
    padding: 0.5em 2.5em;
    text-decoration: none;
    z-index: 1;
}

.widget_my_widget15 li a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    transition: 0.3s ease all;
    background: #000;
    z-index: -1;
}

.widget_my_widget15 li a::after {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    margin: 0 -0.5em 0 0.5em;
    line-height: 1.0;
}

.widget_my_widget15 ul li a:hover {
    color: #fff;
}

.widget_my_widget15 ul li a:hover::before {
    width: 100%;
}

/******************************
  #13タイルレイアウトカテゴリ一覧(My_Widget16)
******************************/
.widget_my_widget16 small {
    display: block;
    line-height: 1.2;
}

/******************************
  #14投稿リスト(カテゴリー)(My_Widget19)
******************************/
.widget_my_widget19 .post-cat-widget li::before {
    content: none;
}

.widget_my_widget19 .post-cat-widget li::after {
    content: "";
    display: block;
    clear: both;
}

.widget_my_widget19 .post-cat-widget li {
    padding-left: 0;
    margin: 10px 0;
    clear: both;
}

.widget_my_widget19 .wd_thumbnail img {
    max-width: 80px;
    margin: 0;
    padding: 0 20px 10px 0;
    float: left;
}

.widget_my_widget19 a.wd_title {
    margin-left: 1em;
}

.widget_my_widget19 .wd_postdate, .widget_my_widget19 .wd_title, .widget_my_widget19 .wd_excerpt {
    font-size: 85%;
    line-height: 1.6;
}

/******************************
  #15投稿リスト(My_Widget20)
******************************/
.widget_my_widget20 .post-list-cols {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.widget_my_widget20 .post-list-cols>* {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.widget_my_widget20 .post-list-cols li {
    width: 48%;
    padding: 0;
    margin: 0 2% 15px 0;
    line-height: 1.5;
    list-style: none;
}

.widget_my_widget20 .post-list-cols li img {
    width: 100%;
    max-height: 200px;
    object-fit: cover;
}

.widget_my_widget20 .post-list-cols .wd_title {
    color: #000;
    font-size: 100%;
    display: block;
    font-weight: bold;
    line-height: 1.3;
}

.widget_my_widget20 .post-list-cols .wd_postdate {
    display: block;
    text-align: left;
    margin: 10px 0;
}

.widget_my_widget20 ul li::before {
    content: none;
}

.widget_my_widget20 ul li .wd_title {
    font-size: 120%;
    letter-spacing: 0.2px;
    margin: 15px 0 5px;
}

.widget_my_widget20 ul li .read-more {
    float: right;
    margin: 0 0 30px 0;
}

.widget_my_widget20 ul li .read-more a {
    font-size: 90%;
    font-weight: normal;
    letter-spacing: 0.2px;
    color: #000;
}

.widget_my_widget20 ul li .read-more a::before {
    padding: 0 4px 0 0;
    content: "\f0da";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.widget_my_widget20 .custom-field li {
    margin: 0;
}

.widget_my_widget20 .custom-field p {
    font-size: 80%;
    letter-spacing: 0.2px;
    font-weight: normal;
    float: left;
    margin: 0;
}

.widget_my_widget20 .custom-field .custom-field-ttl {
    width: 50px;
}

.widget_my_widget20 .custom-field .custom-field-cont {
    width: calc(100% - 50px);
}

@media screen and (max-width: 680px) {
    .widget_my_widget20 .post-list-cols img {
        width: 385px;
        height: 257px;
        object-fit: cover;
    }

    .widget_my_widget20 .post-list-cols>* {
        width: calc(50% - .5em);
        float: left;
        padding-left: 0px;
        margin-right: 1em;
    }

    .widget_my_widget20 .post-list-cols>*:nth-child(2n) {
        margin-right: 0px;
    }

    .widget_my_widget20 .post-list-cols>*:nth-child(2n + 1) {
        clear: both;
    }
}

/* (max-width: 680px) */
@media screen and (max-width: 480px) {
    .widget_my_widget20 .post-list-cols li {
        width: 100%;
        padding: 0;
        margin: 0 2% 0 0;
        line-height: 1.5;
        list-style: none;
    }

    .widget_my_widget20 .post-list-cols li img {
        margin: 0 auto;
        max-width: 420px;
    }

    .widget_my_widget20 div {
        width: 100%;
    }
}

/* (max-width: 480px) */
/******************************
  #16カテゴリリスト(My_Widget20)
******************************/
/* ********************************************************

  09.印刷用スタイル

******************************************************** */
@media print {
    #all {
        width: 198mm;
        font-size: 50%;
        margin: 0 auto;
    }

    #gnavi {
        width: 198mm;
        /* 余白を左右6ミリずつに設定*/
        margin: 0 auto 2mm;
    }

    #mega-menu-wrap-navbar #mega-menu-navbar>li.mega-menu-item>a.mega-menu-link {
        font-size: 50% !important;
        letter-spacing: 0;
        padding: 0 1px !important;
    }

    .page #eyecatch-in img, .single #eyecatch-in img, .category #eyecatch-in img {
        width: 198mm;
    }

    .page #eyecatch-in img, .single #eyecatch-in img, .category #eyecatch-in img {
        margin: 0 auto;
    }

    .home #eyecatch-in .metaslider {
        margin: 0 auto;
    }

    .metaslider ul.slides {
        transform: translate3d(0px, 0px, 0px) !important;
    }

    .home .metaslider li {
        width: calc(198mm / 2) !important;
    }

    .home .metaslider li img {
        max-width: 100%;
        height: auto;
    }

    .main {
        width: 140mm;
    }

    .col7_3 .main, .col5_5 .main, .col10 .main, .colfull .main {
        margin-right: 3mm;
    }

    .colfull .main {
        width: 100%;
    }

    .col5_5 .main.col-r {
        margin-right: 0;
    }

    .sidebar {
        width: 55mm;
    }

    ul.post-meta {
        display: none;
    }

    .p-navi dl dt, .p-navi dl dd {
        font-size: 7px;
    }

    table.headline-table td {
        border: 1px solid #ddd;
    }

    .wp_rp_footer, #sns {
        display: none;
    }

    #page-top {
        display: none !important;
    }

    #footer, .map, #copyright, .p-navi, .widget_my_widget06 {
        display: none !important;
    }
}

/* 

  10.その他スタイル

******************************************************** */
/* 検索画面と検索結果画面 */
.search form.search-form {
    margin-bottom: 15px;
}

.result-view {
    display: flex;
}

.result-view .sub-result-view {
    width: 250px;
    min-width: 250px;
    margin-right: 25px;
    overflow: scroll;
/*    height: 500px;*/
    position: relative;
    /*    top: 47px;*/
}

.result-view .sub-result-view  h5{
    font-size:0.9em;
    margin: 30px 0 10px;
    padding-bottom: 5px;
    border-bottom: 1px solid;
}

.result-view .sub-result-view .related_link a{
    text-decoration:underline;
    font-weight: bold;
}

.result-view .main-result-view {
    flex-grow: 1;
}

.search-results .entry h1 {
    margin: 0;
}

.sub-result-view li.current {
    font-weight: 700;
}

.sub-result-view li {
    line-height: 150%;
    margin-top: 0.5rem;
}

.sub-result-view li ul {
    margin: 0 0 0 0.5em;
}

.sub-result-view li li {
    font-size: 90%;
}

.sub-result-view ul li li:before {
    content: '';
    background: #b9b7ac;
    width: 5px;
    height: 5px;
    display: inline-block;
    border-radius: 50%;
    margin-right: 7px;
}

/* サイドエリア開閉ボタン（スマホ表示時のみ）*/
.sm.toggle-view-button {
    width: 100%;
    padding: 8px;
    background-color: #f5f5f5;
    text-align: center;
    cursor: pointer;
    margin-top: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

@media screen and (max-width: 680px) {
    .result-view {
        display: block;
    }
    .result-view .sub-result-view {
        width: 100%;
        min-height: 100px; 
        max-height: 130px; /* スマホ表示時の最大高さを制限 */
        overflow-x: auto;
        overflow-y: hidden; /* 初期状態では隠す */
        position: relative;
        transition: max-height 0.3s ease; /* アニメーション効果 */
    }
    .result-view .sub-result-view::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 50px;
        background: linear-gradient(
            to bottom, /* 縦方向のグラデーション */
            rgba(250, 250, 250, 0), /* 上部は半透明 */
            rgba(250, 250, 250, 1)    /* 下部は不透明 */
        );
    }
    .result-view .sub-result-view.expanded {
        max-height: 400px;
        overflow-y: auto; /* 縦スクロールにする */
    }
    .result-view .sub-result-view.expanded::after {
        content: '';
        height: 0;
    }
    .result-view .sub-result-view.sp-no-showing {
        display: none;
    }
    .sm.toggle-view-button.sp-no-showing {
        display: none!important;
    }
    .result-view .sub-result-view.sp-no-expand {
        max-height: none;
    }
    .result-view .sub-result-view.sp-no-expand::after {
        content: none;
        width: 0;
        height: 0;
    }
}

/* ローディング画面 */
#loading {
    width: 100vw;
    height: 100vh;
    transition: all 1s;
    position: fixed;
    z-index: 10000;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
}

#loading.loaded {
    opacity: 0;
    /*   display: none; */
    visibility: hidden;
}

/****************************************
 ? ? 動画埋め込み
****************************************/
.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px;
}

.embed-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/****************************************
 ? ? 動画モーダル表示
****************************************/
.video-container {
    text-align: center;
}

.video-container a {
    display: inline-block;
    position: relative;
}

.video-container img.video-thumbnail {
    max-width: 100%;
}

.video-container a::before {
    /*background: url(../sw/img/video_play.png) center center / 64px 64px no-repeat;*/
    content: url(../sw/img/video_play.png);
    display: block;
    width: 64px;
    height: 64px;
    margin: -32px auto 0;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 1;
}

.video-container a:hover::before {
    opacity: 0.8;
}

/****************************************
    XO Event Calendar - イベントリスト用CSS
    参考URL：https://xakuro.com/blog/wordpress/1376/
******************************************************** */
.xo-event-list * {
    font-size: 1rem;
}

.xo-event-list {
    list-style: none;
    display: block;
    margin: 30px 0;
    /*  前後余白  */
}

.main .entry .xo-event-list p {
    margin: 0 0 0.5rem;
    padding: 0;
    line-height: 1.2;
}

.xo-event-list>dl {
    display: block;
    margin: .7rem 0 0 0;
    padding: 0 0 .1rem 0;
    overflow: hidden;
    color: #444;
    border-bottom: dotted 1px #ccc;
}

.xo-event-list>dl>dt, .xo-event-list>dl>dd {
    display: table-cell;
    vertical-align: top;
    border: none;
    padding: 0;
}

.xo-event-calendar table.xo-month>thead th {
    /*  base.cssの影響を受ける部分を調整*/
    line-height: 2.0;
    width: auto;
}

.xo-event-list>dl>dt>span, .xo-event-list>dl>dd>span {
    float: left;
    margin: 0 1rem 0 0;
    padding: 0;
    vertical-align: middle;
}

.xo-event-list .thumbnail {
    margin: .2rem 0;
}

.xo-event-list .thumbnail img {
    padding-right: 15px;
    width: 110px;
    min-width: 110px;
    height: auto;
    object-fit: cover;
}

.xo-event-list .date {
    margin-top: .1rem;
    font-size: .9rem;
}

.xo-event-list.type-short .date, .xo-event-list.type-standard .date {
    width: 7.5rem;
}

.xo-event-list .category {
    margin-top: .2rem;
    margin-bottom: .1rem;
    padding: 0 .5rem;
    text-align: center;
    font-size: .8rem;
    color: #fff;
    border-radius: 2px;
}

.xo-event-list.type-short .category, .xo-event-list.type-standard .category {
    width: 8.5rem;
}

.xo-event-list.type-detail .category {
    margin-left: 0.5rem;
}

.xo-event-list .title {
    margin-top: .1rem;
}

.xo-event-list .event-date {
    font-size: .9rem;
}

.xo-event-list li br {
    display: block;
}

.xo-event-list.type-custom .event-date {
    width: 16rem;
    margin-top: .2rem;
}

/****************************************
    Google カレンダー    
****************************************/
.simcal-default-calendar-grid .simcal-calendar-head .simcal-nav {
    width: auto;
    /* base.cssの影響を受ける部分を調整 */
}

.simcal-default-calendar-grid>table thead th {
    padding: 0.5em;
    width: auto;
}

.simcal-default-calendar .simcal-current h3 {
    background: inherit;
    color: #333;
}

/****************************************
     ビジュアルエディタの標準リストマーク重複解消
****************************************/
.entry ul[style="list-style-type: circle;"] li::before, .entry ul[style="list-style-type: disc;"] li::before, .entry ul[style="list-style-type: square;"] li::before {
    content: none;
}

/********************
  編集ボタン
********************/
.edit {
    clear: both;
    position: relative;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    z-index: 1;
}

.edit a {
    font-size: 85% !important;
    color: #fff !important;
    display: block !important;
    width: 4.5em !important;
    height: auto !important;
    line-height: 3.0 !important;
    text-align: center;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    position: absolute;
}

.sidebar .edit {
    position: relative;
    margin: 0 !important;
    right: -285px;
    top: -50px;
}

.sidebar .widget_my_widget17 .edit {
    position: relative;
    margin: 0 !important;
    right: -5px;
    top: 211px;
}

/********************
  サンプルページ用
********************/
p.sample {
    position: relative;
    color: #fff;
    max-width: 60%;
    font-size: 100%;
    padding: 5px 15px;
    margin: 100px auto;
    background-color: #1e73be;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    text-align: center;
}

p.sample2 {
    position: relative;
    color: #1e73be;
    max-width: 50%;
    font-size: 100%;
    padding: 5px 25px;
    margin: 60px 0px 10px;
    border-bottom: #1e73be 1px solid;
    text-align: left;
}

p.sample2::before {
    content: "\f02d";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 6px;
    left: 5px;
}

p.sample3 {
    position: relative;
    color: #1e73be;
    max-width: 50%;
    font-size: 100%;
    padding: 5px 5px;
    margin: 30px 0px;
    text-align: left;
}

@media print, screen and (max-width: 680px) {
    p.sample {
        max-width: 70%;
        padding: 5px 15px;
        margin: 50px auto 30px;
    }

    p.sample2, p.sample3 {
        max-width: 100%;
    }
}

/* (max-width: 680px) */
.sample-edit #slide-layer, .sample-edit #slide-menu, .sample-edit #hd-ex, .sample-edit #header, .sample-edit #eyecatch, .sample-edit #breadcrumb, .sample-edit .post-meta, .sample-edit #footer-info, .sample-edit #footer, .sample-edit #copyright, .sample-edit .map, .sample-edit .widget, .sample-edit .p-navi, .shopify-edit #slide-layer, .shopify-edit #slide-menu, .shopify-edit #hd-ex, .shopify-edit #header, .shopify-edit #eyecatch, .shopify-edit #breadcrumb, .shopify-edit .post-meta, .shopify-edit #footer-info, .shopify-edit #footer, .shopify-edit #copyright, .shopify-edit .map, .shopify-edit .widget, .shopify-edit .p-navi, .sample #slide-layer, .sample #slide-menu, .sample #hd-ex, .sample #header, .sample #eyecatch, .sample #breadcrumb:first-child, .sample #footer-info, .sample #footer, .sample #copyright, .sample .map, .sample .widget, .sample .p-navi, .sample-fullwidth #slide-layer, .sample-fullwidth #slide-menu, .sample-fullwidth #hd-ex, .sample-fullwidth #header, .sample-fullwidth #eyecatch, .sample-fullwidth #breadcrumb, .sample-fullwidth .post-meta, .sample-fullwidth #footer-info, .sample-fullwidth #footer, .sample-fullwidth #copyright, .sample-fullwidth .map, .sample-fullwidth .widget, .sample-fullwidth .p-navi, .sample-sliderparts #slide-layer, .sample-sliderparts #slide-menu, .sample-sliderparts #hd-ex, .sample-sliderparts #header, .sample-sliderparts #eyecatch, .sample-sliderparts #breadcrumb, .sample-sliderparts .post-meta, .sample-sliderparts #footer-info, .sample-sliderparts #footer, .sample-sliderparts #copyright, .sample-sliderparts .map, .sample-sliderparts .widget, .sample-sliderparts .p-navi {
    display: none !important;
}

/********************
   HTMLコード表示用
********************/
pre.htmlcopy {
    margin: 20px 0;
}

pre.htmlcopy input:checked~label::after {
    color: #fff;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: " \f077";
}

pre.htmlcopy code {
    white-space: pre-wrap;
    overflow-wrap: break-word;
    height: 0px;
    padding: 0px;
    overflow: hidden;
    opacity: 0;
    transition: 0.5s;
}

pre.htmlcopy input:checked~code {
    overflow: auto;
    height: auto;
    padding: 5px;
    opacity: 1;
}

/****************************************
     未分類
****************************************/
.col10 #blog {
    width: 67%;
    max-width: 640px;
    margin: 30px auto;
}

.col10 .shopinfo {
    width: 67%;
    max-width: 640px;
    margin: 0 auto;
    padding: 20px 0;
}

@media screen and (max-width: 680px) {
    .col10 .shopinfo {
        width: 100%;
    }
}

/* スクロールアニメーション */
.target_of_scroll_action_on_title, .target_of_scroll_action_on_subtitle, .target_of_scroll_action_on_elements, .target_parent_of_scroll_action_on_elements {
    /*position: relative;:*/
    opacity: 0;
}

/*
.scroll_action_top_anime, .scroll_action_bottom_anime, .scroll_action_left_anime, .scroll_action_right_anime, .scroll_action_fadein_anime, .scroll_action_reducing_anime, .scroll_action_expanding_anime{
  opacity: 0;
}
*/
.scroll_action_top_anime {
    -webkit-animation: scroll_action_top 0.5s linear -0.15s forwards;
    animation: scroll_action_top 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_top {
    0% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

.scroll_action_bottom_anime {
    -webkit-animation: scroll_action_bottom 0.5s linear -0.15s forwards;
    animation: scroll_action_bottom 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_bottom {
    0% {
        -webkit-transform: translateY(20px);
        transform: translateY(20px);
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
    }
}

.scroll_action_left_anime {
    -webkit-animation: scroll_action_left 0.5s linear -0.15s forwards;
    animation: scroll_action_left 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_left {
    0% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

.scroll_action_right_anime {
    -webkit-animation: scroll_action_right 0.5s linear -0.15s forwards;
    animation: scroll_action_right 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_right {
    0% {
        -webkit-transform: translateX(20px);
        transform: translateX(20px);
    }

    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
        opacity: 1;
    }
}

.scroll_action_fadein_anime {
    -webkit-animation: scroll_action_fadein 0.6s linear forwards;
    animation: scroll_action_fadein 0.6s linear forwards;
}

@keyframes scroll_action_fadein {
    100% {
        opacity: 1;
    }
}

.scroll_action_reducing_anime {
    -webkit-animation: scroll_action_reducing 0.5s linear -0.15s forwards;
    animation: scroll_action_reducing 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_reducing {
    0% {
        -webkit-transform: scale(1.2, 1.2);
        transform: scale(1.2, 1.2);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.scroll_action_expanding_anime {
    -webkit-animation: scroll_action_expanding 0.5s linear -0.15s forwards;
    animation: scroll_action_expanding 0.5s linear -0.15s forwards;
}

@keyframes scroll_action_expanding {
    0% {
        -webkit-transform: scale(0.8, 0.8);
        transform: scale(0.8, 0.8);
    }

    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}
