/* =======================================
	共通
======================================= */

/* 共通 */

body {
    background-color: #fff; color: #111;font-size:95%; margin-top:0px; font-weight: 500;
    font-family:  -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, 
    "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", 
    "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", 
    "MS PGothic", sans-serif;
   }

/*
body {
    background-color: #fff; color: #111; font-size: 95% ; margin-top:0px; font-weight: 500;
    font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
   }
*/
  

@media (min-width: 992px) {
  
     /* サイト全体の横幅 */
    .siteContent > .container {
        width: 1000px;
        max-width: 1000px;
        padding: 0;
        margin-top: 35px;
    }
    
  .siteContent {
        padding: 0rem 0 2.5rem;
  }
  
  .mainSection-col-one {
        width: 870px;
        max-width: 870px;
        padding: 0;
        margin: 0 auto;
  }
  .mainSection-col-two {
        float: left;
        width: 730px;
        padding: 0 20px 0 0;
        margin: 0 auto;
    }
    .sideSection-col-two {
        width: 270px;
        padding: 0;
        text-align: center;
    }

  
}

/* -------------------------------
　　見出し
　------------------------------- */
   
.entry-header { border-bottom: none;}

h1, h2, h3, h4, h4, h5, h6 {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

h1 {line-height: 1.6;}
p {line-height: 1.6; margin-bottom: 20px;}

.page-header_pageTitle, h1.page-header_pageTitle:first-child {
    margin: 0.9em 0;
    font-size: 2rem;
    line-height: 1.1;
    font-family: unset;
}

h1.archive-header_title::before {
    font: var(--fa-font-solid);
    content: "\f5ae";
    margin-right: 0.4em;
    color: #63abb7;
    font-size: 0.85em;
}

h2, h1.subSection-titl, h1.entry-title, h1.widget_postlist .subSection-title {
    font-size: 20px;
    padding: 10px 12px 8px 12px;
    margin: 0px 0px 25px;
    font-weight: bold;
    color: #333;
    border: 1px solid #ccc;
    border-bottom: 2px solid #31acbf;
    position: relative;
    line-height: 114.3%;
    box-shadow: inset 0 1px 0 #fff;
    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e5e5e5), to(#fff));
}

h1.widget-title.subSection-title {
    font-size: 14px;
    padding: 13px 10px 10px;
    font-weight: bold;
    text-align: left;
    margin: 0;
    color: #333;
    border: 1px solid #ccc;
    border-bottom: 2px solid #31acbf;
    line-height: 1.2;
    box-shadow: inset 0 1px 0 #fff;
    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#e5e5e5), to(#fff));
}

h2 {
  margin: 30px 0px 25px;
}

h3 {
  clear: both;
  font-size: 17px;
  font-weight:600;
  margin: 30px 0px 25px;
  padding: 8px 15px;
  border-left: 3px solid #31acbf;
  border-bottom:0;
  color: #333;
  background-color: #f0f0f0;
  }

.entry-body h3::after {
  content: none;
}

h4 {
    clear: both;
    color: #31acbf;
    font-size: 16px;
    font-weight:600;
    margin: 30px 0px 10px 20px;
    padding: 0px 0px 2px;
    border-bottom: 1px dotted #ccc;
}
  
h5 {
    font-size: 18px;
    background: #31acbf;
    color: #fff;
    display: inline-block;
    padding: 5px 18px 5px;
    border-radius: 6px;
}

h6 {
    font-size: 18px;
    color: #31acbf;
    display: inline-block;
    padding: 5px 18px 5px;
    border-radius: 6px;
    border: 2px solid #0da9d8;
}

h2 ~ p, h3 ~ p, h4 ~ p {margin-left: 20px!important;}
h2 ~ ol li, h3 ~ ol li, h4 ~ ol li {margin-bottom: 12px;margin-left: 20px!important;}
h2 ~ ul li, h3 ~ ul li, h4 ~ ul li {margin-bottom: 12px;margin-left: 20px!important;}
h2 ~ h4, h3 ~ h4 {margin-left: 20px!important;}
.hmleft40 h4 ~ p {margin-left: 40px!important;}

   a:hover img {
       opacity: 0.8;
       transition: 0.4s ;
       filter: alpha(opacity=80);
       -moz-opacity: 0.7;
   }

dt,dd {
    border-left: none;
    margin: 0;
    padding: 0;
}

/* search枠の整形 */
[type="search"] {
  outline-offset: revert;
  -webkit-appearance: revert;
}

   /* ---------------------------------
       印刷用（共通）
   --------------------------------- */
   /* print setting */
   @media print {
       body,#wrap,#container {
           margin: 0; padding: 0; width: 100%;
       }
       #headerTop,#header,#panList,.gMenu,#pagetop,
       #sideTower,#footMenu,#footer,#siteBottom {
           display:block !important;
       }
   }
   

   /* ---------------------------------
       ヘッダー（共通）
   --------------------------------- */
  
  .siteHeader_logo img {
        max-height: 58px;
        margin: 0 0 10px 30px;
    }
   

.navbar-header {
    position: relative;
}

.header-right-widget {
    position: absolute;
    top: 20px;
    right: 20px;
}

.header-links {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 25px;
    margin-right: 25px;
}

.header-links a {
    font-size: 14px;
    text-decoration: underline;
    white-space: nowrap;
}
   
/* =========================================================
   グローバルメニュー
   ========================================================= */

/* ---------- メニュー背景 ---------- */

.gMenu_outer {
    width: 100%;
    background: linear-gradient(
        to bottom,
        #09a4bc 0%,
        #1d946b 50%,
        #169644 100%
    );
    box-shadow: none;
}

@media (min-width: 1201px) {
  .gMenu_outer {
    min-height: 57px;
  }
}

/* ---------- ヘッダー幅 ---------- */

header.siteHeader .container.siteHeadContainer {
    max-width: 100%;
    padding: 10px 0 0;
}


/* ---------- メニュー文字 ---------- */

.gMenu > li .gMenu_name {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
                 "メイリオ", Meiryo, Osaka,
                 "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #fff;
    font-weight: 400;
    font-size: clamp(11px, 1.05vw, 14px);
    line-height: 1.3;
    white-space: nowrap;
}


/* ---------- 第一階層メニュー ---------- */

.gMenu > li {
    border-left: 1px solid #19897e;
    padding-left: 0;
    padding-right: 0;
}
.gMenu > li:last-child {
border-right: 1px solid #19897e;
}

.gMenu > li::before {
    bottom: 0;
}


/* ---------- サブメニュー ---------- */

.gMenu .sub-menu li {
    font-size: 1em;
    padding-left: 0;
    padding-right: 0;
}


/* ---------- 特定メニューの背景色 ---------- */

.gMenu li#menu-item-9049 > a {
    background: linear-gradient(
        to bottom,
        #fcc600 0%,
        #c94708 100%
    ) !important;
}

.gMenu li#menu-item-9049 > a:hover {
        background: linear-gradient(to bottom, #f1c902 0%, #d33100 100%) !important;
}


/* マウスオーバー */
.gMenu > li > a:hover {
  background: linear-gradient(to bottom, #2fb9ce 0%, #22ab53 50%, #31b81b 100%) !important;
}

/* 現在ページ */
.gMenu > li.current_page_item > a,
.gMenu > li.current-menu-item > a,
.gMenu > li.current_page_ancestor > a,
.gMenu > li.current-page-ancestor > a {
    background: linear-gradient(to bottom, #2fb9ce 0%, #22ab53 50%, #31b81b 100%) !important;
}


/* =========================================================
   タブレット以上
   ========================================================= */

@media (min-width: 768px) {

    .gMenu > li::before,
    .gMenu > li.menu-item-has-children::after {
        border-bottom: none;
    }

}


/* =========================================================
   PC表示
   ========================================================= */

@media (min-width: 992px) {

    .gMenu {
        display: flex;
        justify-content: center;
        width: 100%;
        margin: 0 auto;
        padding: 0 15px;
        box-sizing: border-box;
    }

    .gMenu > li {
        flex: 0 1 auto;
        text-align: center;
    }

    .gMenu > li > a {
        padding:12px 9px !important;
        white-space: nowrap;
    }

    .header_scrolled .gMenu>li {
        width: 50%;
        border-left: 1px solid #3da776;
    }
    .header_scrolled .gMenu>li:last-child {
        border-right: 1px solid #3da776;
    }

}  
   

/* ---------------------------------
   投稿ページ（共通）
--------------------------------- */

/* メタ情報：基本は非表示 */
.entry-meta {
    display: none;
}

/* 個別投稿：タイトル → 投稿日の順に表示 */
.single .entry-header {
    display: flex;
    flex-direction: column;
}

.single .entry-header .entry-title {
    order: 1;
}

/* 投稿日エリア */
.single .entry-header .entry-meta {
    display: block !important;
    order: 2;
    text-align: right;
    margin-top: -20px;
    margin-bottom: -10px;
}

.single .entry-header .published {
    font-size: 0.85em;
    color: #777;
}

.single .entry-header .published::before {
    font: var(--fa-font-regular);
    content: "\f073";
    margin-right: 0.4em;
}

/* 投稿本文 */
.entry-body {
    margin-bottom: 8em;
    padding: 0 5px;
}

/* 投稿フッター */
.entry-footer {
    display: none;
}
   
   /* ---------------------------------
       サイドバー（共通）
   --------------------------------- */
   
   .sideSection-col-two li {text-align:left;}
   
   /*
   .subBtn{
     margin: 0 auto;
     padding: 20px 0 0;
   }
   
   .subBtn img{
     margin: 8px 0;
   }
   
   .group{
     margin: 0 auto;
     padding: 20px 0;
   }
   
   .group img{
     margin: 5px 0;
   }
   
   .sideTower .sideWidget .textwidget {
     padding-top: 0;
     padding-bottom: 0;
   }
*/
   

   /* ---------------------------------
       新着情報アーカイブ（共通）
   --------------------------------- */
/* サムネイル・抜粋・カテゴリー・不要なメタ情報を非表示 */
.postList_thumbnail,
.media-body_excerpt,
.entry-meta_items_term,
.entry-meta_hidden {
    display: none !important;
}

/* 1記事を「日付｜タイトル」の2列にする */
.media-body {
    display: grid;
    grid-template-columns: 90px 1fr;
    column-gap: 12px;
    align-items: start;
    width: 100%;
}

/* 日付 */
.media-body .entry-meta {
    display: block !important;
    margin: 0;
}

.media-body .published {
    display: block !important;
    white-space: nowrap;
}

/* タイトル */
.media-body .entry-title {
    margin: 0;
    min-width: 0;
}

.postList .media .media-body .media-heading {
    font-size: 16px;
    line-height: 1.4;
    margin: 0;
    padding: 0;
    border: none;
    border-bottom: none;
}

.media .media-body .media-heading a {
    color: #31acbf;
    text-decoration: underline;
}

.media {
    border-bottom: 1px dotted rgba(0, 0, 0, .2);
    padding: 0.7rem 0;
    margin-top: 0;
}

.entry-meta_items {
    font-size: 15px;
}


/* 前の記事・次の記事*/
.vk_posts.postNextPrev .card-img-outer {
    display: none;
 }

 .vk_posts.postNextPrev .vk_post-col-7.col-7 {
    flex: 0 0 100%;
    max-width: 100%;
}

.vk_posts.postNextPrev h5.vk_post_title {
    font-size: 12px !important;
    font-weight: 500;
    background: none;
}



/* ---------------------------------
       会誌（共通）
--------------------------------- */
   
 .info-cat-kaishi ul {margin-left:45px;}
   
/* ---------------------------------
       フッター（共通）
--------------------------------- */

.siteFooter {
  background: #f7f7f7;
  background: linear-gradient(to bottom, #efebeb 10%, #bcbdbc 100%);
}

.siteFooter .copySection p:nth-child(2) {
    display: none;
}

.footerWidget {
    padding-top: 1em;
    padding-bottom: 1em;
    display: block;
    color: #808080;
}

.copySection {
    margin-top: -20px;
    color: #808080;
}
.copySection p {
    font-size: 14px;
    font-weight: 600;
}


.footerMenu {
     background-color: #31acbf;
     padding: 0px;
     margin-top: -10px;
     display: block;
     overflow: hidden;
     width: 100%;
     z-index: 10;
     position: relative;
   }
   
.footerMenu li a {
	color: #efefef;
	background: url(images/icon_arrow1_white.gif) left 2px no-repeat;
	border: none;
	padding: 0px 20px 0px 18px;
	line-height: 110%;
	text-decoration: none;
}

.siteFooter dl#footerOutline dt {
    border-left: none;
    font-weight: 700;
   }
.siteFooter dl#footerOutline dd {
    border-left: none;
}
#footerOutline .madr {margin: 2px 0 3px 0;}


/* PC */
@media (min-width: 768px) {
  
.footerWidget .widget_nav_menu #menu-sitemap li {
  display: inline-block;
  width: 30%;
  margin-bottom: 0px;
  color: #808080;
  background-position: left 2px;
  padding: 0px 8px;
  font-size: 12px;
  white-space: nowrap;
  line-height: 0.6;
   }

.footerMenu ul {
        margin: 12px 0 6px;
    }
  .footerMenu li:last-child a {
        border-right: none;
    }
    
.siteFooter .widget_nav_menu ul li a {
    box-shadow: inset 0 1px 0 #f6f6f6;
}
.siteFooter .widget_nav_menu ul > li:nth-child(-n+3) > a {
    box-shadow: none;
}

/* 最後の3件の下線を消す */
.siteFooter .widget_nav_menu ul > li:nth-last-child(-n+3) > a {
    border-bottom: none;
}

}


/* mobile */
@media (max-width: 767px) {
    .footerMenu .nav {
        display: flex;
    }
    .footerMenu li {
        padding: .2em 0;
    }
    .copySection p {
    width: 100%;
}


}
 
   /* -------------------------------
       テーブル（共通）
   ------------------------------- */
   
table, table.tablepress {
    border-top: 1px solid #ccc;
    text-align: left;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom:30px;
    font-size:1em
    }
    
table tr th, table.tablepress tr th {
    border: 1px solid #ccc;
    border-bottom: 1px solid #ccc!important;
    padding: 10px 15px;
    vertical-align: top;
    background-color: #d6e0e9;
    box-shadow: inset 1px 1px 0px #ffffff;
    font-weight: 400;
    font-size:1em
}

table tr td, table.tablepress tr td {
    border: 1px solid #ccc;
    border-bottom: 1px solid #ccc!important;
    padding: 10px 15px;
    vertical-align: top;
    font-size:1em
}

table.per100 { width:100%;}
table.per90 { width:90%;margin:0 auto 30px;}
table.per80 { width:80%;margin:0 auto 30px;}
   
table.mobile-block th {
       box-shadow: inset 1px 1px 0px #fff;
   }
   
   /* 偶数行の背景色を変更 */  
 table.bgE tr:nth-child(even) td {
     background-color: #f1f7f9;   
   }
     
   /* 奇数行の背景色を変更 */  
table.bgO tr:nth-child(odd) td {   
     background-color: #f1f7f9;   
   }   
     
   /* 任意の行数毎に背景色を変更(この例だと4nと指定しているので4行ごと) */  
table.bg4 tr:nth-child(4n) td {   
     background-color: #f1f7f9;   
   }  
   
   .cell {}
   .cell .center {text-align: center;}
   .cell .right {text-align: right;}
   .cell .middle {vertical-align: middle;}
   .cell .double {border-bottom:3px #ccc double;}
   .cell .nowrap {white-space: nowrap}
   
 /* Tableの線を消す */
.no_border,.no_border th,.no_border td {border:none!important;}
   
   /* ---------------------------------
       オリジナル（共通）
   --------------------------------- */
   
   .clear { clear: both; }
   .clearfix {min-height: 1px;}
   .clearfix:after {
     content: "."; 
     display: block;
     clear: both;
     height: 0;
     visibility: hidden;
   }
   .left {	text-align: left; }
   .center {text-align: center;}
   .right {text-align: right;}
   
   .font1em {font-size:1em !important;}
   .font8px {font-size:8px;}
   .font9px {font-size:9px;}
   .font10px {font-size:10px;}
   .font11px {font-size:11px;}
   .font12px {font-size:12px;}
   .font13px {font-size:13px;}
   .font14px {font-size:14px;}
   .font15px {font-size:15px;}
   .font16px {font-size:16px;}
   .font18px {font-size:18px;}
   .font20px {font-size:20px!important;;}
   .fontB {font-weight:700;}
   .att_red { color: #f00;font-weight: 600;}
   .att_green { color: #3A9923;font-weight: 600;}
   .att_blue { color: #32acbf;font-weight: 600;}
   .red { color: #F00;}
   .blue { color:#1D73E1;}
   
   h1.ex {
     font-size: 20px;
     color: #7E4E12;
     line-height: 1.5;
   }
   
 h2.bex {
    background: -webkit-gradient(linear, 0 0, 0 bottom, from(#31acbf), to(#fff));
    background: -moz-linear-gradient(#31acbf, #fff);
   }
   
   /* 1文字字下げ */
   .jisage {
     text-indent: -1em;
     padding-left: 1em;}
     
    /* 1文字字下げ margin入り */
   .jisage1 {
     text-indent: -1em;
     padding-left: 1em;
     margin-left: 1em;
   }
     
   /* 2文字字下げ */
   .jisage2 {
     text-indent: -2em;
     padding-left: 1em;
     margin-left:2em;
   }
   
   .jisage3 {
     text-indent: -3em;
     padding-left: 1em;
     margin-left:3em;
   }
   
   .jisage4 {
     text-indent: -4em;
     padding-left: 1em;
     margin-left:4em;
   }
   
   .mleft1em {margin-left: 1em;}
   
   /* アンダーライン */
   .uline {text-decoration:underline;}

/* 蛍光ペン風ライン */
/* イエロー */
.uLine {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.5em;
    text-decoration-color: rgba(255, 228, 0, 0.4);
    text-decoration-skip-ink: none;
  }
/* ピンク */  
.pline {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.5em;
    text-decoration-color: rgb(215 48 113 / 16%);;
    text-decoration-skip-ink: none;
}   

   /* 取消線 */
   .torikeshi {text-decoration: line-through 1px #22222290; }
   
  .guideDl {margin: 35px 0;}
  
   .guideDl dl {
     margin:0px 0px 20px 25px;
     display: flex;
     flex-wrap: wrap;
   }
   .guideDl dt {
     margin: 0 20px 0 0;
     border: none;
     font-weight: normal;
     width:auto;
     color: #111;
   }
   .guideDl dd {
       margin:0;
       border: none;
       width:85%;
   }
  
  /* 引用 */ 
   .scBox {
  border: 1px solid #ccc;
  padding: 50px 50px 30px 50px;
  border-radius: 15px;
  background: #fcfcfc;
  margin: 30px auto;
}

/* リストの様な表 */
.guideDl2 {margin:25px 0px 25px 20px;}
.guideDl2 dl {
  margin: 0 0 5px 0;
  display: flex;
  flex-wrap: wrap;
  line-height: 1.5;
  width:100%;
}
.guideDl2 dt {
  font-weight: normal;
  white-space: nowrap;
  padding: 10px 0;
  color:#000!important;
  margin-bottom:0;
}
.guideDl2 dd {
  margin: 0;
  padding: 10px 0;
}
/* サイズ */
.guideDl2 dt {width: 14%;}
.guideDl2 dd {width: 86%;}
/* border */ 
.guideDl2.brd dt,.guideDl2.brd dd {border-bottom: 1px dotted #ccc;}

/* リスト表カラム下に */
.flcolumn {flex-direction: column;}
.guideDl2 .flcolumn dd {
  padding-left: 4.4em;
  margin-top: -10px;
}

.double-border {
    text-decoration:underline double blue
}

/* リストのような表（flex版）*/
.flexDl dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-top: 35px;
  margin-bottom: 35px;
}

.flexDl dt {
  font-weight: normal;
  white-space: nowrap;
  color:#000!important;
  width: 10%;
  padding: 5px 15px 5px 10px;
  margin-bottom: 0;
  margin-right: 10px;
}

.flexDl dd {
  margin-left: 0;
  padding: 5px 0 5px 10px;
  margin-bottom: 0;
  width: calc(100% - 35px - 10%);
}


  /* Hを使った時のpやulのインデント */ 
.hText p {margin-left:10px;}
.hText ul {margin:25px 0px 25px 40px;}
/*
.hText ul {margin:25px 0px 25px 10px;}
.hText li {list-style: none;}*/


/* ページ内リンク調整 */
a.jump_point {
  height: 1px;
  display: block;
  padding-top: 40px;
  margin-top: -40px;
}

/* 整形用 */
.mleft0 {margin-left:0px!important;}
.mleft10 {margin-left:10px!important;}
.mleft20 {margin-left:20px!important;}
.mleft30 {margin-left:30px!important;}
.mleft40 {margin-left:40px!important;}
.mleft50 {margin-left:50px!important;}
.mleft60 {margin-left:60px!important;}
.mleft70 {margin-left:70px!important;}
.mleft80 {margin-left:80px!important;}

.mtop-40 {margin-top:-40px!important;}
.mtop-30 {margin-top:-30px!important;}
.mtop-20 {margin-top:-20px!important;}
.mtop-10 {margin-top:-10px!important;}
.mtop0 {margin-top:0px!important;}
.mtop10 {margin-top:10px!important;}
.mtop20 {margin-top:20px!important;}
.mtop30 {margin-top:30px!important;}
.mtop40 {margin-top:40px!important;}
.mtop50 {margin-top:50px!important;}
.mtop60 {margin-top:60px!important;}
.mtop70 {margin-top:70px!important;}
.mtop80 {margin-top:80px!important;}


.mbtm0 {margin-bottom:0px!important;}
.mbtm10 {margin-bottom:10px!important;}
.mbtm20 {margin-bottom:20px!important;}
.mbtm30 {margin-bottom:30px!important;}
.mbtm40 {margin-bottom:40px!important;}
.mbtm50 {margin-bottom:50px!important;}
.mbtm60 {margin-bottom:60px!important;}
.mbtm70 {margin-bottom:70px!important;}
.mbtm80 {margin-bottom:80px!important;}

.mright0 {margin-right:0px!important;}
.mright10 {margin-right:10px!important;}
.mright20 {margin-right:20px!important;}
.mright30 {margin-right:30px!important;}
.mright40 {margin-right:40px!important;}
.mright50 {margin-right:50px!important;}
.mright60 {margin-right:60px!important;}
.mright70 {margin-right:70px!important;}
.mright80 {margin-right:80px!important;}

.margin10 {margin:10px!important;}
.margin20 {margin:20px!important;}
.margin30 {margin:30px!important;}
.margin40 {margin:40px!important;}
.margin50 {margin:50px!important;}

.m0a { margin: 0 auto!important;}

/* 疑似li */
.plist {
  text-indent: -0.6em;
  padding-left: 1.2em !important;
}

.plist::before {
  content: "\25CF";
  display: inline-block;
  width: 10px;
  height: 10px;
  font-size: 8px;
}

/* リストのインデント */
ul.li_indent ,
ol.li_indent {
   margin-left: 3em;
}

ul.li_indent li ,
ol.li_indent li {
  text-indent: -5em;
  padding-left: 5em;
}


/* =========================================================
   各種マーク
   ========================================================= */

.mMAIL::before, .mTEL::before, .mFAX::before, .mURL::before, .mv::before {
    font-family: "FontAwesome";
    font-weight: normal;
    padding: 0 0.3em;
}

.mMAIL::before {content: "\f003";}
.mTEL::before {content: "\f095";font-size: 1.2em;}
.mFAX::before {content: "\f1ac";}
.mURL::before {content: "\f015";font-size: 1.2em;}
.mv::before {
    content: "\f03d";
    font-size: 1.2em;
    color: #068eae;
}

p.mMAIL, p.mTEL, p.mURL, p.mFAX {
    line-height: 1;
    font-size: 1em;
}

/* =========================================================
   添付ファイルリンク 共通
   ※記事本文内のみ適用
   ========================================================= */

.entry-body a[href*=".pdf"],
.entry-body a[href*=".doc"],
.entry-body a[href*=".xls"] {
    display: inline-block;
    margin: 8px;
    padding: 3px 12px 3px 2.5em !important;
    border-width: 2px;
    border-style: solid;
    border-radius: 5px;
    line-height: 1.3;
    text-indent: -1.8em;
    text-decoration: none;
    transition: .4s;
}


/* PDF */

.entry-body a[href*=".pdf"] {
    color: #c71825 !important;
    border-color: #ecc5c8;
}

.entry-body a[href*=".pdf"]:hover {
    background: #ecc5c8;
}

.entry-body a[href*=".pdf"]::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    content: "\f1c1";
    color: #d64317;
}


/* Word */

.entry-body a[href*=".doc"] {
    color: #0f48ae !important;
    border-color: #bccde2;
}

.entry-body a[href*=".doc"]:hover {
    background: #bccde2;
}

.entry-body a[href*=".doc"]::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    content: "\f1c2";
    color: #4675de;
}


/* Excel */

.entry-body a[href*=".xls"] {
    color: #3f8d23 !important;
    border-color: #c2e2bc;
}

.entry-body a[href*=".xls"]:hover {
    background: #c2e2bc;
}

.entry-body a[href*=".xls"]::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    content: "\f1c3";
    color: #1cab20;
}


/* 添付ファイルアイコン共通 */

.entry-body a[href*=".pdf"]::before,
.entry-body a[href*=".doc"]::before,
.entry-body a[href*=".xls"]::before {
    font-size: 1.2em;
    padding: 0 0.3em;
}

/* =========================================================
   注意マーク
   ========================================================= */

.exclamation::before {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background: url(/wp/wp-content/uploads/2020/01/kiken.png) no-repeat;
    background-size: contain;
    vertical-align: middle;
}


/* =========================================================
   別窓リンク
   ========================================================= */

/* 別窓アイコン　-画像リンク・noiconは除外 */
a[target="_blank"]:not(.noicon):not(:has(img))::after {
/*
    font: var(--fa-font-regular);
    content: "\f2d2";
    font-size: 0.8em;
    margin: 0 0.4em;
*/
    font-family: "Font Awesome 6 Free";
    content: "\f2d2";
    text-decoration: none;
    margin: 0 3px;
    font-weight: normal;
    font-size: 11px;
    
}

/* 通常URLの別窓リンクだけ下線  -PDF・Word・Excel・画像・noiconは除外 */

/*通常バージョン
a[target="_blank"]:not([href*=".pdf"]):not([href*=".doc"]):not([href*=".xls"]):not(.noicon):not(:has(img)) {
    text-decoration: underline !important;
}
*/

/*ボタンも除外*/
a[target="_blank"]:not([href*=".pdf"]):not([href*=".doc"]):not([href*=".xls"]):not(.noicon):not(:has(img)):not(.btnYellow, .btnBlue, .btnBlues, .btnBDyellow, .btnBDblue, .btnBDpink) {
    text-decoration: underline !important;
}


/* ---------------------------------
   ボタン（共通）
--------------------------------- */
a.btnYellow,
a.btnBlue,
a.btnBlues,
a.btnBDyellow,
a.btnBDblue,
a.btnBDpink {
	display: inline-block;
	text-decoration: none !important;
	transition: .4s;
}

/* 角丸：背景イエロー以外 */
a.btnBlue,
a.btnBlues,
a.btnBDyellow,
a.btnBDblue,
a.btnBDpink {
	border-radius: 5px;
}

/* 文字の太さ */
a.btnBlue,
a.btnBlues,
a.btnBDblue,
a.btnBDpink {
	font-weight: 400;
}

/* ---------------------------------
   背景色付きボタン
--------------------------------- */
a.btnYellow,
a.btnBlue,
a.btnBlues {
	position: relative;
	text-align: center;
	color: #fff;
}

/* 右側の矢印 */
a.btnYellow::after,
a.btnBlue::after,
a.btnBlues::after {
	position: absolute;
	content: "\f105";
	font-family: 'FontAwesome';
	right: 10px;
}

/* 背景イエロー */
a.btnYellow {
	font-weight: bold;
	padding: 15px 30px;
	background-color: #ffb100;
}

/* 背景ブルー */
a.btnBlue {
	padding: 8px 35px 8px 20px;
	background-color: #0188b1;
	border: 2px solid #2c7fc0;
}

/* 背景ブルー（小） */
a.btnBlues {
	padding: 2px 20px 2px 10px;
	background-color: #0188b1;
	font-size: 12px;
}

/* ホバー */
a.btnYellow:hover,
a.btnBlue:hover,
a.btnBlues:hover {
	background-color: #EBEBEB;
}

a.btnYellow:hover {
	color: #ffb100;
}

a.btnBlue:hover,
a.btnBlues:hover {
	color: #2C7FC0;
}

/* ---------------------------------
   枠線ボタン
--------------------------------- */
a.btnBDyellow,
a.btnBDblue,
a.btnBDpink {
	border: solid 2px;
}

a.btnBDblue,
a.btnBDpink {
	padding: 8px 15px;
}

/* 枠線イエロー */
a.btnBDyellow {
	padding: 6px 15px;
	color: #ffb100;
	border-color: #ffb100;
}

/* 枠線ブルー */
a.btnBDblue {
	color: #0188b1;
	border-color: #0188b1;
	background-color: #f6fdff;
}

/* 枠線ピンク */
a.btnBDpink {
	color: #a0459e;
	border-color: #ad5ea3;
	background-color: #f3dcee;
}

/* ホバー */
a.btnBDyellow:hover,
a.btnBDblue:hover,
a.btnBDpink:hover {
	color: #fff;
}

a.btnBDyellow:hover {
	background: #ffb100;
}

a.btnBDblue:hover {
	background: #0188b1;
}

a.btnBDpink:hover {
	background: #ad5ea3;
}

/*マーカー風ライン*/
.marker01 {
background:linear-gradient(transparent 75%, #ff9393 75%);
}

.ulinePink {
  background: linear-gradient(transparent 70%, #f8cfe4 70%);
}
/* 疑似li */
.plist {
	text-indent: -0.6em;
	padding-left: 1.6em;
}

.plist::before {
	content: "\25CF";
	display: inline-block;
	width: 10px;
	height: 10px;
	font-size: 10px;
}



   /* -------------------------------
       画像（共通）
   ------------------------------- */
   
   img.floatL { float:left; }
   img.mid { vertical-align:middle; }
   img.LR5px{ margin: auto 5px; }
   img.LR10px{ margin: auto 10px; }
   img.LR20px{ margin: auto 20px; }
   img.img_grow {
       box-shadow: 0px 0px 6px #333;
       text-align: center;
       margin-top: 10px;
       border-radius: 5px;
       }
   img.img_grow2 {box-shadow: 0px 0px 6px #666;}
   
   
   /* ---------------------------------
       ページINDEX（共通）
   --------------------------------- */
   
   .pageIndex {
       position: relative;
       width: 77%;
       margin: 0 auto 40px;
       padding: 70px 30px 30px;
       background-color: #eee;
       border-radius: 10px;
       -webkit-border-radius: 10px;
       -moz-border-radius: 10px;
   }
   
   .pageIndex .index {
       position: absolute;
       margin: 0 auto;
       padding: 5px 30px;
       background: #0089b1;
       color: white;
       font-size: 1.3em;
       letter-spacing: 2px;
       display: inline-block;
       top: 20px;
       left: -15px;
       background-image: linear-gradient(-45deg, #02afe2 25%, #0089b1 25%,
         #0089b1 50%, #02afe2 50%, #02afe2 75%,#0089b1 75%, #0089b1 );
       background-size: 5px 5px;
   }
   
   .pageIndex .index::before {
     position: absolute;
     content: '';
     top: 100%;
     left: 0;
     border: none;
     border-bottom: solid 10px transparent;
     border-right: solid 15px rgb(149, 158, 155);
   }
   
   .pageIndex ul {
       margin-bottom: 0;
   }
   
   .pageIndex li {
       margin-bottom: 6px;
       font-size: 1.05em;
       line-height: 1.4;
   }
   
   .pageIndex ul ul {
       margin-top: 0;
       margin-bottom: 0;
   }
   .pageIndex ul ul li {
       margin-bottom: 5px;
   }
   
    .pageIndex li a {
       text-decoration: underline;
   }
   

/* フレーム */   
.siteContent blockquote, .siteContent .sectionFrame {
    border-radius: 5px;
    box-shadow: inset 1px 1px 0px rgba(255, 255, 255, 1.0);
    margin-bottom: 20px;
}

.siteContent blockquote, .siteContent .sectionFrame {
    border: 1px solid #ccc;
    background-color: #f5f5f5;
    padding: 25px 25px 5px;
    clear: both;
}
   
   
   /* =======================================
       PC用
   ======================================= */
   
   
   @media (min-width: 768px) {
   .nopc { display:none; }
   }
   
   @media print, screen and (min-width: 768px) {
   
   /* -------------------------------
       ナビメニュー（PC）
   ------------------------------- */
   /* メニューの横幅 */
   .gMenu .gMenuInner.innerBox {
    width: 1100px;
   /*  margin: 0 auto !important;*/
   }
   /*
   メニューの横幅を100perからautoにする
   .gMenu .menu > li {
       width: auto !important;
   } 
   .gMenu .menu li:first-child {width: 60%}
   */
   
   .gMenu .menu > li {
    width: auto;
    white-space: nowrap;
    background: none;
    zoom: 1;
    }
   
   /* サブメニューデザイン */
   .gMenu .sub-menu li a {
    font-size: 15px;
    background-color: rgba(24, 24, 24 ,0.9);
    color:#fff;
    border-bottom:#333;
    padding:10px 7px;
   }
   
   /* メニュー横幅変更 */
    #header #headerInner.innerBox,
    .gMenu .gMenuInner.innerBox {
        width: 94%;
        max-width: 1500px;
        margin: 0px auto;
    }
    
    .gMenu .menu li a strong {
        font-size: 1.1vw;
    }
   

   
   /* -------------------------------
       レイアウト（PC）
   ------------------------------- */

  
   /* メインエリアの横幅
   #container { width:690px; } */
   
   /* サイドバーの横幅
   #container #sideTower {width:270px;} */
   
   /* スライドの高さ
   #topMainBnrFrame { min-height: 200px; } */
   
   .w100per {
     width: 100%;
     margin: 0 auto;
   }
   .w1100 {
     width: 1100px;
     margin: 0 auto;
   }
   .w1000 {
     width: 1000px;
     margin: 0 auto;
   }
   .w950 {
     width: 950px;
     margin: 0 auto;
   }
   .w900 {
     width: 900px;
     margin: 0 auto;
   }
   .w850 {
     width: 850px;
     margin: 0 auto;
   }
   .w800 {
     width: 800px;
     margin: 0 auto;
   }
   .w750 {
     width: 750px;
     margin: 0 auto;
   }
   .w700 {
     width: 700px;
     margin: 0 auto;
   }
   .w600 {
     width: 600px;
     margin: 0 auto;
   }
   .w500 {
     width: 500px;
     margin: 0 auto;
   }
   .w400 {
     width: 400px;
     margin: 0 auto;
   }
   
   
   /* -------------------------------
       テーブル（PC）
   ------------------------------- */
   
   table.per100 { width:100%;}
   table.per90 { width:90%;}
   table.per80 { width:80%;}
   table.per70 { width:70%;}
   table.per60 { width:60%;}
   table.per50 { width:50%;}
   
   
   /* ---------------------------------
       ページINDEX（PC）
   --------------------------------- */
   
   .pageIndex ul {
       /*margin-left: 10%;*/
       margin-top: 10px;
   }
   
   .col2 ul {
       margin-left: -20px;

   }
   
   .col2 li {
       margin: 4px 2%;
       width: 46%;
       float: left;
       line-height: 1.5;
   }
   

   }/* PC用ここまで970px*/
   
   
   /* =======================================
       モバイル用（スマホ・タブレット）
   ======================================= */
   
@media (max-width: 480px) {
  body {font-size:120%;}

h2 ~ p, h3 ~ p, h4 ~ p {margin-left: 10px!important;}
h2 ~ ol li, h3 ~ ol li, h4 ~ ol li {margin-left: 10px!important;}
h2 ~ ul li, h3 ~ ul li, h4 ~ ul li {margin-left: 10px!important;}
h2 ~ h4, h3 ~ h4 {margin-left: 10px!important;}
.hmleft40 h4 ~ p {margin-left: 20px!important;}
     
    .scBox {padding: 50px 28px 30px 28px;}
    .guideDl2 dl {display: block;}
    .guideDl2 dt {width: 100%;font-weight: 600;padding:0;}
    .guideDl2 dd {width: 100%;padding-bottom:15px;}
   
    .flexDl dt {
    font-weight: 900;
    padding: 10px 0 0px 15px;
    border-bottom: 1px dotted #aaa;
    width: 98%!important;
    }
    .flexDl dd {
    width: 98%!important;
    margin-left: 20px;
    padding: 10px 0 30px 15px;
    }
     
   }/* モバイル用480pxここまで */
   
   
   @media (max-width: 969px) and (min-width: 768px) {
   
   .gMenu .menu li a { padding: 12px 0.3vw;}
   .gMenu .menu li a strong { font-size: 1.2vw;}
   
      .guideDl dl {
    margin: 0px 0px 17px 25px;
}

   }
   

   @media (max-width: 769px) {
   
   /* モバイルで画像を折り返す */
   img.spBL {
    float: none;
    display: block;
    margin: 10px auto;
   }
   
   
   
   /* -------------------------------
       ヘッダー（モバイル）
   ------------------------------- */
  

.header-right-widget {
	position: relative;
	background: #338f8f;
	width: 100%;
	top: 0;
	right: 0;
	background: linear-gradient(#31acbf, #007e9e);
}

.header-links {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 25px;
    margin-right: 0px;
    justify-content: center;
    padding: 5px 0;
}

.header-links a {
    font-size: 18px;
    text-decoration: none;
    color: #fff;
}
   
.siteHeader {padding: 0;}
.siteHeader_logo {padding: 5px 0; margin: 0 auto; text-align: center;}
.siteHeader_logo a img { max-width: 90%; margin: 0 auto; }

   .nosp { display:none; }
   img.fclear { display:block;float: none;margin: auto;text-align:center; }
   
   
   /* -------------------------------
       ナビメニュー（モバイル）
   ------------------------------- */
.vk-mobile-nav {
    background: transparent;
    padding-right: 0 !important;
}

.vk-mobile-nav-menu-outer {
  margin-top: -45px;
  padding-top: 20px;
  background-color: #000000cc !important;
  position: relative;
  left: auto;
  width: 90%;
  margin-left: auto;
  margin-right: 0;
  box-sizing: border-box;
}

.vk-mobile-nav nav>ul {
    border-top: none;
}

.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
    color: #fff;
    border-bottom: none;
    padding-left: 30px;
}
.vk-mobile-nav-menu-btn {border: 2px solid #333;}
   

   /* -------------------------------
       テーブル（モバイル）
   ------------------------------- */
   .mbscroll{
    overflow: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
   }
   .mbscroll::-webkit-scrollbar{
    height: 5px;
   }
   .mbscroll::-webkit-scrollbar-track{
    background: #F1F1F1;
   }
   .mbscroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
   }
     
   
   
   /* -------------------------------
       サイドバー（モバイル）
   ------------------------------- */
 .sideSection-col-two {
        width: 90%;
        padding: 0;
        text-align: center;
        margin:0 auto;
}


   /* -------------------------------
       ページINDEX（モバイル）
   ------------------------------- */
   
   .pageIndex {
       width: 98%;
       margin: 10px auto;
       padding: 60px 5% 10px;
   }
   
   
   /* ---------------------------------
       フッター（モバイル）
   --------------------------------- */
   
.footerWidget .widget_nav_menu #menu-sitemap li {
       display: inline-block;
       line-height: 1;
       margin-bottom: 0;
       margin-right:10px;
   }
   
   
   .guideDl dl {
    margin: 0px 0px 20px 25px;
}
   
   }/* モバイル用768pxここまで */
   
