/*
Theme Name: hirotsujobs
Author: hirotsujobs
Description: 広津産業求人サイト
Version: 1.0
*/

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

INDEX

=基本設定反映
=画面サイズ設定
=基本フォーマット
=スタイル調整
=ヘッダー
=フッター
=トップイメージ｜コンテンツイメージ
=コンテンツタイトル
=ウィジェット

=検索
=閲覧パスワード制限
=モバイル用画面高さ調整
=スクリプト
=ショートコード
=プラグイン・jQuery
=ヘルプ
=プリント

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


/* ==============================================================

=基本設定反映

============================================================== */



/*
.koteiin2 .header-title-box{
  transition: all 0.5s;
  will-change: opacity;
}
*/

.koteiin2 .header-title-box.hid{
  max-width:200px;
}

/* ブログホーム見出し消去 */
.home.blog .entry-header-contents{
  display:none;
}


/* ==============================================================

=画面サイズ設定

============================================================== */

.site{
  position: relative;
  overflow: hidden;
}

/* 基本枠幅 */
.site-width-box{
  max-width:1280px;
  margin: 0 auto;
  padding: 20px 30px 0 30px;
  box-sizing: inherit;
}
.all-full1 .site-width-box{
  max-width:90%;
  padding: 0 30px;
}
.all-full2 .site-width-box{
  max-width:100%;
  padding: 0 30px;
  box-sizing: border-box;
}
.all-full3 .site-width-box{
  max-width:100%;
  padding: 0;
  box-sizing: border-box;
}
.all-full3 .site-width-box.sidein{
  padding: 0 30px;
}
@media screen and (max-width: 1279px) {
  .site-width-box{
    box-sizing: border-box;
  }
  .all-full1 .site-width-box{
    max-width:100%;
  }
}

@media screen and (max-width: 991px) {
  .sidewidget-right .site-width-box{
    
  }
  .widget-area{
    margin-top: 2em;
  }
}
@media screen and (min-width: 992px) {
  .site-width-box .site-content{
    width:100%;
  }
  .sidewidget-left .site-width-box.sidein .site-content,
  .sidewidget-right .site-width-box.sidein .site-content{
    width:calc(100% - 330px);
  }
  .sidewidget-foot .site-width-box.sidein .site-content{
    width:100%;
  }
  .sidewidget-left .site-width-box.sidein,
  .sidewidget-right .site-width-box.sidein{
    display: flex;
    gap:30px;
  }
  .sidewidget-left .site-width-box.sidein .widget-area,
  .sidewidget-right .site-width-box.sidein .widget-area{
    width: 300px;
  }
  .sidewidget-left .site-width-box.sidein{
    flex-direction: row-reverse;
  }
}


/* ==============================================================

=基本フォーマット

============================================================== */


/* 基本ベース
-------------------------------------------------------------- */

/* 画面調整 */
html {
  -webkit-overflow-scrolling: touch;
}

/* Webフォント ちらつき調整 */
html {
  visibility: hidden;
}
html.wf-active,
html.loading-delay {
  visibility: visible;
}

@media screen and (min-width: 992px) {
  html {
    overflow-y: scroll;
  }
}
/* IE対策 */
@media all and (-ms-high-contrast: none) {
  html{
    overflow-x: hidden;
  }
}

body{
  overflow-x: hidden;
}

/* スクロール時ホバー無効 */
.disable-hover {
  pointer-events: none;
}

/* ==============================================================

=スタイル調整

============================================================== */

/* 表示クリア */
.view-none{
  display: none;
}
@media only screen and (max-width:599px){
  /* 表示クリア：スマホ以下 */
  .view-none-sp{
    display: none;
  }
}
@media only screen and (max-width:991px){
  /* 表示クリア：タブレット以下 */
  .view-none-tb{
    display: none;
  }
}

/* ==============================================================

=ヘッダー

============================================================== */


/* 基本ヘッダー枠 */
.site-header{
  position: relative;
  width: 100%;
  /*min-height: 82px;*/
  z-index: 10;
  box-sizing: border-box;
  background-color:rgba(255,255,255,0.9);
}
@media only screen and (max-width:991px){
  .site-header{
    /*min-height: 47px;*/
  }
}
.site-header.hid{
  /*min-height:0;*/
}


.site-header-dummy{
  display: none;
}
body:not(.home).conview2 .site-header-dummy{
  display: none;
}

@media only screen and (max-width:991px){
  
  .home.imgview-3 .site-header,
  .home.imgview-2 .site-header{
    position: absolute;
    top:0;
    left: 0;
  }
  
  .koteimb1 .site-content-dummy{
    display: block;
    min-height: 47px;
  }
  .koteimb1 .site-header{
    position: fixed;
    top:0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
  }
}
@media only screen and (min-width:992px){
  
  .home.koteiin0.imgview-3 .site-header,
  .home.koteiin0.imgview-2 .site-header{
    position: absolute;
    top:0;
    left: 0;
  }
  .home.koteiin3.imgview-3 .site-header,
  .home.koteiin3.imgview-2 .site-header,
  .home.koteiin2.imgview-3 .site-header,
  .home.koteiin2.imgview-2 .site-header{
    position: fixed;
    top:0;
    left: 0;
  }
  
  .koteiin2 .header-sub-pc.hid{
    position: absolute;
    top:-100%;
    right: 20px;
  }
  
  .koteiin1 .site-header-dummy,
  .koteiin2 .site-header-dummy{
    display: block;
    min-height: 82px;
  }
  /* 基本ヘッダー枠：固定 */
  .koteiin1 .site-header,
  .koteiin2 .site-header{
    position: fixed;
    min-height: 82px;
    top:0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
  }

  .header-obi-box{
    min-height: 82px;
  }
  .koteiin2 .header-obi-box.hid,
  .koteiin2 .site-header-dummy.hid,
  .koteiin2 .site-header.hid{
    min-height: auto;
  }
}

/* 最上部ミニヘッダー */
.header-minititle{
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  background-color: #cccccc;
  padding: 8px 0;
  z-index: 10;
  position: relative;
}
/*
.koteiin2 .header-minititle.hide,
.header-minititle.minihead-set{
  position: fixed;
  top: -100%;
}
*/
.header-minititle .site-description,
.header-minititle .site-title,
.header-minititle .site-title a{
  color: #000000;
  line-height: 1.2;
  text-decoration: none;
  display: inline-block;
  margin: 0;
}

/* ヘッダー帯ベース */
.header-obi-area{
  background-color:rgba(0,0,0,0);
  position: relative;
}

/* ヘッダー幅 */
.mainmenu-box,
.header-size{
  max-width:1280px;
  margin: 0 auto;
  padding: 0 20px;
}
.hdftsize1 .mainmenu-box,
.hdftsize1 .header-size{
  max-width:90%;
  padding: 0 20px;
  box-sizing: border-box;
}
.hdftsize2 .mainmenu-box,
.hdftsize2 .header-size{
  max-width:100%;
  padding: 0 20px;
  box-sizing: border-box;
}
@media screen and (max-width: 1279px) {
  .header-size{
    box-sizing: border-box;
  }
  .hdftsize2 .header-size{
    max-width:100%;
  }
}

/* モバイルウィジェット用 */
@media only screen and (max-width:991px){
  
  .mbwjput{
    display: block;
  }
  
  .header-sub-pc{
    display: none;
  }

  .header-sub-mb{
    display: flex;
    align-items: center;
    gap:1em;
    padding: 10px 10px 10px 10px;
    box-sizing: border-box;
  }
  
  .toggle-top{
    position: relative;
    width: 30px;
    height: 30px;
    margin-top: -9px;
  }
}
@media only screen and (min-width:992px){
  
  
  .header-sub-pc{
    display: block;
    position: absolute;
    top:0;
    right: 0;
    padding: 0 0 0 0;
  }
  
  .header-widget-box{
    display: flex;
    justify-content: flex-end;
    margin: 0 0 0 0;
  }
  
  .header-sub-mb{
    display: none;
  }
  
  /* トグルボタン */
  .toggle-top{
    display: none;
  }
}


.header-title-box{
  display: flex;
  align-items: center;
  padding: 10px 0;
  z-index: 10;
}

.header-title-box.title-image{
  width: 50%;
  max-width: 300px;

}

@media only screen and (min-width:390px) and (max-width:991px){
  .header-title-box.title-image{
    width: 50%;
    max-width: 200px;
  }
}

.header-title-box.title-text{
  gap:0.5em;
}
/* サイト：ロゴマーク */
.header-title-box.title-text .header-logo-mark{
  width: 50px;
  height: auto;
}
/* サイト：タイトル+キャッチ */
.header-title-box.title-text h1.site-title{
  margin: 0 0 0 0;
}
.header-title-box.title-text h1.site-title a{
  color: #222222;
}

@media only screen and (min-width:992px){
  
  /* サイト：ロゴマーク */
  .header-title-box.title-text .header-logo-mark{
    width: 90px;
    height: auto;
  }
}

.header-obi-box{
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  gap:0;
  box-sizing: border-box;
}
@media only screen and (max-width:991px){
  .header-obi-box.title-center{
    justify-content: center;
  }
  
  .header-obi-box.title-center .header-sub-mb{
    position: absolute;
    top:50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    right: 10px;
  }
}

/* ==============================================================

=フッター

============================================================== */

/* 基本要素
-------------------------------------------------------------- */

/* PC フッター固定 */
.footer-block-padding{
  height: 50px;
}
.footer-block{
  /*
  position: absolute;
  left: 0;
  bottom: 0;
  width:100%;
  */
}

/* フッター幅 */
.footer-size{
  max-width:1280px;
  margin: 0 auto;
  padding: 0 20px;
}
.hdftsize1 .footer-size{
  max-width:90%;
  padding: 0 20px;
  box-sizing: border-box;
}
.hdftsize2 .footer-size{
  max-width:100%;
  padding: 0 20px;
  box-sizing: border-box;
}
@media screen and (max-width: 1279px) {
  .footer-size{
    box-sizing: border-box;
  }
  .hdftsize2 .footer-size{
    max-width:100%;
  }
}

/* フッター基本枠 */
footer#colophon{
  background-color:rgba(0,0,0,0.1);
  position:relative;
  margin:0 0 0 0;
  padding:0 0 0 0;
  width:100%;
  z-index: 1;
}

/* フッター情報枠 */
.footer-area{
  position:relative;
  margin:0 auto;
  padding:30px 0 30px 0;
  line-height: 1.5em;
}


/* フッターメニュー
-------------------------------------------------------------- */

/* モバイル時非表示 */
@media only screen and (max-width:991px){
  .sitemap{
    display: none;
  }
}

/* ナビゲーションメニュー：footer */
.menu-footer-container ul{
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  letter-spacing: -4em;
  
}
.menu-footer-container>ul{
  margin-bottom: 1.5em;
  display: flex;
  flex-wrap:wrap;
  gap:1em;
}
.menu-footer-container>ul>li{
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  display: block;
  letter-spacing: normal;
  list-style-type: none;
  vertical-align: top;
}
@media only screen and (max-width:830px){
  
  .menu-footer-container>ul{
    gap:1em 2%;
  }
  .menu-footer-container>ul>li{
    margin: 0 0 0 0;
    width: 32%;
  }
}
@media only screen and (max-width:599px){
  .menu-footer-container>ul{
    gap:1em 2%;
  }
  .menu-footer-container>ul>li{
    margin: 0 0 0 0;
    width: 49%;
  }
}

@media only screen and (min-width:1230px){
  .menu-footer-container>ul>li{
    line-height: 1.8;
    margin: 0 0 1em 0;
  }
}

.menu-footer-container>ul>li>ul>li{
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  display: block;
  letter-spacing: normal;
  list-style-type: none;
}


/* ナビゲーションメニュー：footer：マーク */
.menu-footer-container ul li a{
  position: relative;
  color: #333;
  text-decoration: none;
  font-size: 90%;
  box-sizing: border-box;
  padding-left: 1em;
  display: block;
}
.menu-footer-container ul li a::before{
  content: '';
  position: absolute;
  left: 0;
  top:0.5em;
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
  background-color: #30b1e0;
}


/* ナビゲーションメニュー：footer：マーク */
.menu-footer-container>ul>li>ul>li.sitemap-midashi>a,
.menu-footer-container>ul>li.sitemap-midashi>a{
  position: relative;
  color: #333;
  text-decoration: none;
  font-size: 90%;
  box-sizing: border-box;
  margin-bottom: 5px;
  padding-left: 1em;
  display: block;
  border-bottom: dotted 1px #ccc;
}
.menu-footer-container>ul>li>ul>li.sitemap-midashi.ftbtm-set>a,
.menu-footer-container>ul>li.sitemap-midashi.ftbtm-set>a{
  margin-bottom: 15px;
}
.menu-footer-container>ul>li>ul>li.sitemap-midashi>a::before,
.menu-footer-container>ul>li.sitemap-midashi>a::before{
  content: '';
  position: absolute;
  left: 0;
  top:0.5em;
  width: 0;
  height: 0;
  border-radius:0;
  background: none;
  border-left: 0.25em solid transparent;
  border-right: 0.25em solid transparent;
  border-top: 0.5em solid #104280;
}

.menu-footer-container ul li a:hover{
  opacity: 0.7;
  text-decoration: underline;
}
.menu-footer-container ul li a::before:hover{
  text-decoration: none!important;
}

/* ナビゲーションメニュー：footer：ラベル */
.menu-footer-container ul li.sitemap-label>a{
  position: relative;
  pointer-events:none;
  display: inline-block;
  line-height: 1.3em;
  width: 100%;
  border-bottom: solid 1px #000;
  margin-bottom: 0.5em;
  padding-left: 10px;
}
.menu-footer-container ul li.sitemap-label>a::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3px;
  border: 3px solid transparent;
  border-top: 6px solid #555; 
}

/* コピーライト
-------------------------------------------------------------- */

/* コピーライト */
.footer-copyright{
  position: relative;
  display:block;
  margin-top:10px;
  font-size:0.9em;
  line-height:1.5;
  text-align:center;
  padding: 20px 0;
  background-color:rgba(0,0,0,0.2);
  z-index: -1;
}
.footer-copyright span.fcopy-color a,
.footer-copyright span.fcopy-color{
  color:#000;
  text-decoration: none;
}


/* ==============================================================

=トップイメージ｜コンテンツイメージ

============================================================== */

/* トップイメージ
-------------------------------------------------------------- */

/* トップメインベース */
.topimage-bs{
  position: relative;
  margin:0;
  padding: 0;
  width: 100%;
  aspect-ratio:16/7;
  z-index: 1;
  overflow: hidden;
}

/* トップメイン画像 */
.topimage-bs .topvideo video,
.topimage-bs .topimage img{
  width: 100%;
  aspect-ratio:16/7;
  object-fit:cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
  overflow: hidden;
}
@media screen and (max-width: 1281px) {
  .topimage-bs .topvideo video,
  .topimage-bs .topimage img,
  .topimage-bs{
    aspect-ratio:16/10;
  }
}
@media screen and (max-width: 991px) {
  .topimage-bs .topvideo video,
  .topimage-bs .topimage img,
  .topimage-bs{
    aspect-ratio:16/13;
  }
}

@media screen and (min-width: 320px) {
  
  .home .topimage-bs{
    margin-bottom: 0;
  }
  
}

@media screen and (min-width: 992px) {
  .imgview-2 .topimage-bs{
    height: 100vh;
    aspect-ratio:auto;
  }
  .imgview-2 .topimage-bs .topvideo video,
  .imgview-2 .topimage-bs .topimage img{
    height: 100vh;
    aspect-ratio:auto;
  }
}
.imgview-3 .topimage-bs{
  height: 100vh;
  aspect-ratio:auto;
}
.imgview-3 .topimage-bs .topvideo video,
.imgview-3 .topimage-bs .topimage img{
  height: 100vh;
  aspect-ratio:auto;
}




/* ==============================================================

=コンテンツタイトル

============================================================== */

/* コンテンツイメージ
-------------------------------------------------------------- */

.contents-title-box{
  position: relative;
}
.content-image img{
  width: 100%;
  aspect-ratio:16/7;
  object-fit: cover!important;
}
@media only screen and (min-width:768px){
  .content-image img{
    aspect-ratio:16/5;
  }
}
@media only screen and (min-width:992px){
  .content-image img{
    aspect-ratio:16/3;
  }
}

/* コンテンツタイトル */
.contents-title-box .entry-header-contents{
  text-align: center;
  margin: 2em auto;
}
.contents-title-box .entry-header-contents.coniset{
  position: absolute;
  display: inline-block;
  width: 100%;
  left: 50%;
  bottom: 5%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

@media only screen and (max-width:399px){
  .contents-title-box .entry-header-contents.coniset{
    bottom: -15%;
  }
}


/* ==============================================================

=ウィジェット

============================================================== */


/* ウィジェット共通
-------------------------------------------------------------- */

/* 投稿数表示 */
.widget_categories ul li a .post-count,
.widget_archive ul li a .post-count {
  display: inline-block;
  color: #fff;
  background-color: #333;
  font-size: 0.8em;
  padding: 0 6px;
  border-radius: 3px;
  margin:0 0 0 10px;
  vertical-align:middle;
}

 /* ウィジェット：最新投稿・コメント・リスト */
.widget-area .widget_archive ul,
.widget-area .widget_recent_comments ul,
.widget-area .widget_recent_entries ul{
  margin:0;
  padding:0;
}
.widget-area .widget_archive ul li,
.widget-area .widget_recent_comments ul li,
.widget-area .widget_recent_entries ul li{
  margin:0;
  list-style-type:none;
  border-bottom:dotted 1px #aaa;
  position:relative;
  padding:0.5em 0;
}
.widget-area .widget_archive ul li a,
.widget-area .widget_recent_comments ul li a,
.widget-area .widget_recent_entries ul li a{
  text-decoration:none;
  display:block;

}
.widget-area .widget_archive li a:hover,
.widget-area .widget_recent_comments li a:hover,
.widget-area .widget_recent_entries li a:hover{
  text-decoration:underline;
}
.widget-area .widget_archive ul li:last-child,
.widget-area .widget_recent_comments ul li:last-child,
.widget-area .widget_recent_entries ul li:last-child{
  border-bottom:0;
}

/* ウィジェット：ドロップダウン */
.widget-area .widget_archive .screen-reader-text{
  display:none;
}
.widget-area .widget_categories select,
.widget-area .widget_archive select{
  padding:5px;
  display:block;
  width:100%;
}

/* ウィジェット：カテゴリー・メニュー */
.widget-area .widget_nav_menu ul,
.widget-area .widget_categories ul{
  list-style-type:none;
  margin:0;
  padding:0;
}
.widget-area .widget_nav_menu ul li,
.widget-area .widget_categories ul li{
  list-style-type:none;
  margin:0 0 5px 0;
  padding:0;
  position:relative;
}
.widget-area .widget_nav_menu ul li a,
.widget-area .widget_categories ul li a{
  position:relative;
  background-color:#eee;
}
.widget-area .widget_nav_menu ul li a::after,
.widget-area .widget_categories ul li a::after{
  content:"";
  position:absolute;
  display:inline-block;
  width:10px;
  height:10px;
  
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/btn_next.svg");
  background: #555555;
  
  right:10px;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.widget-area .widget_nav_menu ul li.current-menu-parent a::after,
.widget-area .widget_categories ul li.current-cat-parent a::after,
.widget-area .widget_nav_menu ul li.current-menu-item a::after,
.widget-area .widget_categories ul li.current-cat a::after,
.widget-area .widget_nav_menu ul li:hover a::after,
.widget-area .widget_categories ul li:hover a::after{
  background: #ffffff;
}
.widget-area .widget_nav_menu ul li a,
.widget-area .widget_categories ul li a{
  display:block;
  padding:10px 20px 10px 10px;
  color:#000;
  text-decoration:none;
  border:solid 1px #aaa;
  background-color:#f5f5f5;
}
.widget-area .widget_nav_menu ul>li:hover>a,
.widget-area .widget_categories ul>li:hover>a{
  color:#fff;
  background-color:#cccccc;
}
.widget-area .widget_nav_menu ul>li.current-menu-parent>a,
.widget-area .widget_categories ul>li.current-cat-parent>a,
.widget-area .widget_nav_menu ul>li.current-menu-item>a,
.widget-area .widget_categories ul>li.current-cat>a{
  color:#fff;
  background-color:#999999;
}

/* ウィジェット：カテゴリー・サブメニュー */
.widget-area .widget_nav_menu ul.sub-menu,
.widget-area .widget_categories ul.children{
  margin-top:0;
}
.widget-area .widget_nav_menu ul.sub-menu li,
.widget-area .widget_categories ul.children li{
  margin-bottom:0;
}
.widget-area .widget_nav_menu ul.sub-menu li a,
.widget-area .widget_categories ul.children li a{
  display:block;
  line-height:1.5;
  padding:7px 10px;
  color:#000;
  text-decoration:none;
  border:solid 1px #aaa;
  border-top: none;
  background-color:#ffffff;
}
.widget-area .widget_nav_menu ul.sub-menu li a::after,
.widget-area .widget_categories ul.children li a::after{
  content:none;
}
.widget-area .widget_nav_menu ul.sub-menu li a:hover,
.widget-area .widget_categories ul.children li a:hover{
  background-color:#eee;
}
.widget-area .widget_nav_menu ul.sub-menu li.current-menu-item a,
.widget-area .widget_categories ul.children li.current-cat a{
  background-color:#ddd;
}

/* ウィジェット：検索 */
.widget-area .widget_search{
  margin:0 0 20px 0;
  padding:0;
}

/* ウィジェット：メタ */
.widget_meta ul{
  margin:0;
  padding:0;
  margin-left:1.2em;
}

/* ウィジェット：カレンダー */
.widget-area table.wp-calendar-table caption{
  color:#000;
  background-color:#CCC;
  padding:5px;
}
.widget-area table.wp-calendar-table{
  width: 100%;
  border-collapse: collapse;
  border: 0;
}
.widget-area table.wp-calendar-table th{
  height:auto;
  width:auto;
  vertical-align:middle;
  font-weight:bold;
  border: solid 1px #ccc;
  line-height:1.5;
  background-color:#eee;
}
.widget-area table.wp-calendar-table td{
  height:auto;
  width:auto;
  text-align:center;
  vertical-align:middle;
  border: solid 1px #ccc;
  line-height:1.5;
}

/* ウィジェット：タグ */
.widget-area .tagcloud{
  letter-spacing:-4em;
}
.widget-area .tagcloud a{
  letter-spacing:normal;
  display:inline-block;
  border:solid 1px #aaa;
  background-color:#eee;
  padding:8px;
  border-radius:5px;
  text-decoration:none;
  margin:0 5px 5px 0;
}
.widget-area .tagcloud a:hover{
  opacity:0.7;
}


/* カスタムヘッドブロック
-------------------------------------------------------------- */

.sidebar-cusblock-box{
  box-sizing: border-box;
  margin-bottom: 2em;
}

.widget-cusbl.widget_categories{
  
}
.widget-cusbl.widget_categories ul{
  display: flex;
  flex-wrap: wrap;
  gap:0.5em;
  justify-content: center;
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.widget-cusbl.widget_categories ul li{
  
}
.widget-cusbl.widget_categories ul li a{
  padding: 0.6em 1em;
  border: solid 1px #cccccc;
  border-radius: 100vh;
  background-color: #ffffff;
  color: #222222;
}
.widget-cusbl.widget_categories ul li.current-cat a{
  background-color: #777777;
  color: #ffffff;
}



/* ==============================================================

=検索

============================================================== */


/* 通常検索窓
-------------------------------------------------------------- */

/* 検索リストタイトル */
.search article.type-page .entry-header,
.search article.type-post .entry-header{
  border:0;
  padding:0;
  margin:0 0 10px 0;
}
.search article.type-page .entry-header h1.entry-title,
.search article.type-post .entry-header h1.entry-title{
  border-bottom:solid 2px #ccc;
  padding-bottom:5px;
  border:0;
  padding:0;
  margin:0;
  color:initial;
}
.search article.type-page .entry-header h1.entry-title a,
.search article.type-post .entry-header h1.entry-title a{
  text-decoration:none;
}

/* 検索フォーム */
.searchform {
  position: relative;
  max-width:600px;
}
.searchfield {
  width: 100%;
  margin: 0;
  padding: 10px;
  border: solid 1px #bbb;
  border-radius: 4px;
  background-color: #efefef;
  box-sizing:border-box;
}
input[type="text"].searchfield:focus {
  outline: 1px solid #aaa;
}
.searchsubmit {
  position: absolute;
  top:10px;
  right:10px;
  padding: 0;
  cursor: pointer;
  color: #555;
  border: none;
  display:block;
  width:20px;
  height:20px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("./img/icon/mi-kensaku.svg");
  background: #555555;
}


/* ==============================================================

=モバイル用画面高さ調整

============================================================== */


/* モバイル用画面高さ調整 */
/*
@media only screen and (max-width:768px){

  .site{
    display: flex;
    flex-direction: column;
  } 
  footer#colophon {
    margin-top: auto;
  }

}
*/

/* ==============================================================

=スクリプト

============================================================== */

/* アンカーリンク高さ調整
-------------------------------------------------------------- */

/* <a href="#example" class="anchor" >exampleへリンク</a> */
.anchor {
  display: block;
  position: relative;
  top: -90px;
  visibility: hidden;
}

/* アニメーション初期値透過 */
.aniset{
  opacity: 0;
  overflow: hidden;
}

/* アニメーション速さ */
.animate__bounceIn.animate__animated{
  --animate-duration: 2s;
}

/* ==============================================================

=ショートコード

============================================================== */

/* 新着情報タイプ
-------------------------------------------------------------- */

/* 最新NEW */
.new-red{
  color: #ff0000;
  margin-left: 5px;
}

.home-news-box{
  position: relative;
  z-index: 0;
}

/* 新着情報ボックス */
ul.news-area {
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
  box-sizing: border-box;

}
ul.news-area li.news-cbox {
  margin: 0 0 0.5em 0;
  padding: 0 0 0.5em 0;
  list-style-type: none;
  width: 100%;
  border-bottom: dotted 1px #aaa;
  line-height: 1.5;
}
ul.news-area li:first-child{
  border-top: dotted 1px #aaa;
  padding-top: 0.5em!important;
}
ul.news-area li.news-cbox div.news-set1 {
  letter-spacing: -4em;
  margin-bottom: 0.3em;
}
ul.news-area li.news-cbox div.news-set1 a.news-cat {
  letter-spacing: normal;
  display: inline-block;
  line-height: 1.5;
  background-color: #999999;
  color: #fff ;
  text-decoration: none;
  padding: 3px 0 1px 0;
  margin-right: 10px;
  min-width: 120px;
  text-align: center;
  font-size: 0.9em;

}
ul.news-area li.news-cbox div.news-set1 a.news-cat:hover {
  opacity: 0.7;
}
ul.news-area li.news-cbox div.news-set1 span.news-date {
  letter-spacing: normal;
  display: inline-block;
  line-height: 1.5;
}
ul.news-area li.news-cbox div.news-set2 {
  display: block;
  margin-bottom: 0.1em;
}
ul.news-area li.news-cbox div.news-set2 a.news-title {
  line-height: 1.5;
}
@media screen and (min-width: 992px) {
  ul.news-area li.news-cbox {
    display: flex;
    margin: 0 0 0.8em 0;
    padding: 0 0 0.8em 0;
  }
  ul.news-area li:first-child{
    padding-top: 0.8em!important;
  }
  ul.news-area li.news-cbox div.news-set1 {
    width: auto;
    margin-right: 20px;
    margin-bottom: 0.1em;
  }
  ul.news-area li.news-cbox div.news-set1{
    display: flex;
    align-items: flex-start;
    width: 17em;
  }
  ul.news-area li.news-cbox div.news-set1.non-date,
  ul.news-area li.news-cbox div.news-set1.non-cat {
    width: 130px;
  }
  ul.news-area li.news-cbox div.news-set1.non-all {
    display: none;
  }
  ul.news-area li.news-cbox div.news-set2 {
    width: calc(100% - 250px);
  }
  ul.news-area li.news-cbox div.news-set2.non-date,
  ul.news-area li.news-cbox div.news-set2.non-cat {
    width: calc(100% - 130px);
  }
  ul.news-area li.news-cbox div.news-set2.non-all {
    width: 100%;
  }
}

/* 画像タイプ（image）
-------------------------------------------------------------- */

.newsview{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.newsview .pti-box{
  text-align: center;
  position: relative;
}

@media screen and (max-width: 767px) {
  .newsview{
    gap: 16px 16px;
  }
  .newsview.nongap{
    gap:0;
  }
  
  .newsview .imblock{
    width: 100%;
  }
  .newsview.vw245 .imblock,
  .newsview.vw235 .imblock,
  .newsview.vw234 .imblock{
    width: calc((100% - 16px) / 2);
  }
  
  .newsview.vw245.nongap .imblock,
  .newsview.vw235.nongap .imblock,
  .newsview.vw234.nongap .imblock{
    width: calc(100% / 2);
  }
  
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  
  .newsview{
    gap: 20px 20px;
  }
  .newsview.nongap{
    gap:0;
  }
  
  .newsview .imblock{
    width: calc((100% - 20px) / 2);
  }
  .newsview.nongap .imblock{
    width: calc(100% / 2);
  }
  .newsview.vw135 .imblock,
  .newsview.vw235 .imblock,
  .newsview.vw134 .imblock,
  .newsview.vw234 .imblock{
    width: calc((100% - 40px) / 3);
  }
  .newsview.vw135.nongap .imblock,
  .newsview.vw235.nongap .imblock,
  .newsview.vw134.nongap .imblock,
  .newsview.vw234.nongap .imblock{
    width: calc(100% / 3);
  }
  
  .newsview.vw245 .imblock{
    width: calc((100% - 60px) / 4);
  }
  .newsview.vw245.nongap .imblock{
    width: calc(100% / 4);
  }
}
@media screen and (min-width: 992px) {
  
  .newsview{
    gap: 24px 24px;
  }
  .newsview.nongap{
    gap:0;
  }
  .newsview .imblock{
    width: calc((100% - 48px) / 3);
  }
  .newsview.nongap .imblock{
    width: calc(100% / 3);
  }
  .newsview.vw134 .imblock,
  .newsview.vw234 .imblock{
    width: calc((100% - 72px) / 4);
  }
  .newsview.vw134.nongap .imblock,
  .newsview.vw234.nongap .imblock{
    width: calc(100% / 4);
  }
  .newsview.vw245 .imblock,
  .newsview.vw135 .imblock,
  .newsview.vw235 .imblock{
    width: calc((100% - 96px) / 5);
  }
  .newsview.vw245.nongap .imblock,
  .newsview.vw135.nongap .imblock,
  .newsview.vw235.nongap .imblock{
    width: calc(100% / 5);
  }

}

/* --- 画像タイプ：デザイン（normal：未指定） --- */

/* リンクスペース */
.normal .imblock .pti-box a{
  text-decoration: none;
}

/* 画像スペース */
.normal .imblock .pti-box figure{
  overflow: hidden;
  margin-bottom: 10px;
}

/* 投稿日時 */
.normal .imblock .pti-box .pti-date {
  position: absolute;
  top: 5px;
  left:0;
  width: 100%;
  text-align: center;
  right:auto;
  color: #ffffff;
  font-weight: normal;
  padding: 0.2em 0;
}

/* 表示ブロック調整 */
.normal .imblock .pti-box .pti-titlebox .pti-set{
  text-align: center;
}

/* カテゴリー */
.normal .imblock .pti-box a.pti-cat1{
  display: inline-block;
}

/* タイトル */
.normal .imblock .pti-box a.pti-title {

}

/* --- 画像タイプ：デザイン（round） --- */

/* リンクスペース */
.round .imblock .pti-box a{
  text-decoration: none;
}

/* 画像スペース */
.round .imblock .pti-box figure{
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 10px;
}

/* 投稿日時 */
.round .imblock .pti-box .pti-date {
  position: absolute;
  top: 5px;
  left:0;
  width: 100%;
  text-align: center;
  right:auto;
  color: #ffffff;
  font-weight: normal;
  padding: 0.2em 0;
}

/* 表示ブロック調整 */
.round .imblock .pti-box .pti-titlebox .pti-set{
  text-align: center;
}

/* カテゴリー */
.round .imblock .pti-box a.pti-cat1{
  display: inline-block;
}

/* タイトル */
.round .imblock .pti-box a.pti-title {

}

/* --- 画像タイプ：ブロック共通 --- */

/* 社員の声 */
.imblock .pti-box .pti-titlebox .vf-copy-image{
  color: #000000;
}
.imblock .pti-box .pti-titlebox .vf-yakusyoku-image{
  color: #000000;
}


/* 画像タイプ（slide）
-------------------------------------------------------------- */

/* 画像チラつき対応 */
.slider {
  display: none;
}
.slider.slick-initialized {
  display: block;
}

.slick-slider{
  padding: 0 50px;
}


/* スライダーブロック */
.slblock {
  margin-bottom: 0;
}
.slblock .pti-box {
  position: relative;
  display: block;
  margin: 0;
}

/* スライダー間隔 */
.slblock .pti-box.pti-slide {
  margin: 0 15px;
}
.slick-list {
  margin: 0 -15px;
}
@media (max-width: 768px) {
  .slblock .pti-box.pti-slide {
    margin: 0 10px;
  }
  .slick-list {
    margin: 0 -10px;
  }
}
@media (max-width: 599px) {
  .slblock .pti-box.pti-slide {
    margin: 0 5px;
  }
  .slick-list {
    margin: 0 -5px;
  }
}

.slblock .pti-box a.slide-imglink{
  transition: all 0.5s;
  display: block;
  /*background-color: #fff;*/
  overflow: hidden;
}
.slblock .pti-box a.slide-imglink:hover{
  opacity: 1;
}
.slblock .pti-box a.slide-imglink img{
  /*
  transition: all 0.5s;
  transform:scale(1,1);
  */
}
.slblock .pti-box a.slide-imglink img:hover {
  /*
  transform:scale(1.1,1.1);
  */
}

.slblock .pti-box.conlsitimg a.slide-imglink .is-style-mdimg01 img{
  object-fit:contain;
  font-family: 'object-fit: contain;';
}



/* カテゴリー */
.slblock .pti-box .cat-position{
  position: absolute;
  top: 0;
  left: 0;
}
.scbox-slider.type1 .slblock .pti-box .cat-position{
  position:relative;
  bottom: inherit;
  left: inherit;
  transform: none;
}

.slblock .pti-box a.pti-cat1 {
  color: #fff;
  padding: 1em 1.5em;
  display: block;
  text-decoration: none;
  text-align: center;
}
.scbox-slider.type1 .slblock .pti-box a.pti-cat1 {
  width: 100%;
  box-sizing: border-box;
  padding: 1em 0 0.2em 0;
}

/*
.slblock .pti-box a.pti-cat1:hover{
  opacity: 1;
}
*/

/* タイトルブロック */
.slblock .pti-box .pti-titlebox {
  position: absolute;
  display: block;
  width: 80%;
  bottom: 1em;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  text-align: center;
}
.scbox-slider.type1 .slblock .pti-box .pti-titlebox {
  position:relative;
  bottom: inherit;
  left: inherit;
  transform: none;
  width: 100%;
}

/* タイトルブロック調整 */
.slblock .pti-box .pti-titlebox .pti-set{
  text-align: center;
  margin: 0;
}

/* タイトル */
.slblock .pti-box .pti-titlebox a.pti-title {
  display: block;
  width: 100%;
  color: #ffffff;
  text-decoration: none;
  padding: 1em 2em;
  border-radius: 100vh;
  background: rgba(0, 0, 0, 0.5);
  box-sizing: border-box;
}
.scbox-slider.type1 .slblock .pti-box .pti-titlebox a.pti-title {
  background: none;
  color: #222222;
  padding: 0.2em 0 0.2em 0;
  border-radius: 0;
}

/* 投稿日時 */
.slblock .pti-box .pti-date {
  position: absolute;
  top: 0;
  right: 0;
  color: #ffffff;
  font-weight: normal;
  padding: 1em 1.5em;
}
.scbox-slider.type1 .slblock .pti-box .pti-date {
  position:relative;
  text-align: center;
  color: #222222;
  padding: 0 0;
}

/* 社員の声 */
.slblock .pti-box .pti-titlebox .vf-copy-slide{
  color: #ffffff;
}
.slblock .pti-box .pti-titlebox .vf-yakusyoku-slide{
  color: #ffffff;
}

/* Next Prev ボタン */

.slide-arrow{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  width: 30px;
  height: 30px;
}

.slide-arrow.prev-arrow{
  left: 10px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/btn_prev.svg");
  background: #0000ff;
}
.slide-arrow.next-arrow{
  right: 10px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/btn_next.svg");
  background: #0000ff;
}





/* ==============================================================

=プラグイン・jQuery

============================================================== */

/* 一文字づつフェードイン（fadeintext.js）要素クラスに eachTextAnime
-------------------------------------------------------------- */

.eachTextAnime span{
  opacity: 0;
}
.eachTextAnime.appeartext span{
  animation:text_anime_on 1s ease-out forwards;
}
.eachTextAnime span.br::before{
  content: "\A";
  white-space: pre;
}

@keyframes text_anime_on {
  0% {
    opacity:0;
  }
  100% {
    opacity:1;
  }
}

/* フォントサイズ Zeno Font Resizer
-------------------------------------------------------------- */

.font-select{
  margin-top: -0.2em;
  margin-left: 1em;
}
.font-select a{
  text-decoration: none;
  color: #000;
}
p.zeno_font_resizer .screen-reader-text{
  display: none;
}

/* グーグルトランスファー（翻訳）
-------------------------------------------------------------- */

#flags{
  width: auto;
}
.honyaku{
  position: relative;
}
.honyaku-btm{
  display: inline-block;
  width: auto;
  height: 25px;
  padding-left: 25px;
  background-image:url("img/icon/mi-honyaku.svg");
  background-position: left top;
  background-repeat: no-repeat;
  background-size: auto 80%;
  cursor:pointer;
}

/* 下オープン */
.honyaku-view{
  display: none;
  position: absolute;
  box-sizing: border-box;
  /* 下表示 */
  width: 120px;
  top:25px; /* honyaku-btmと高さ合わせる */
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  padding-top: 10px;
  z-index: 2;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

/* 左オープン */
.viewleft .honyaku-view{
  width: 130px;
  top:20%;
  left: -130px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  padding-right: 10px;
}
.honyaku-view-in{
  position: relative;
  margin-top: 1px;
  width: 100%;
  background-color: #999;
  padding: 10px 5px 2px 10px;
  box-sizing: border-box;
}
.honyaku-view-in::before{
  content: "";
  position: absolute;
  box-sizing: border-box;
  /* 下表示 */
  top: -15px;
  left: 50%;
  margin-left: -8px;
  border: 8px solid transparent;
  border-bottom: 8px solid #999;
}
.viewleft .honyaku-view-in::before{
  /* 左表示 */
  top: 50%;
  left: 100%;
  margin-top: -8px;
  margin-left: 0;
  border: 8px solid transparent;
  border-left: 8px solid #999;
}

/* グーグルマップ
-------------------------------------------------------------- */

#g-map {
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
  border:solid 1px #ccc;
}
#g-map .g-inner {
  position: relative;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}
#g-map .g-inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media (max-width: 960px) {
  #g-map .g-inner {
    padding-top: 75%;
  }
}
@media (max-width: 600px) {
  #g-map .g-inner {
    padding-top: 100%;
  }
}

/* ページナビ
-------------------------------------------------------------- */

.wp-pagenavi{
  display:block;
  margin-top:25px;
  margin-bottom:15px;
  text-align:center;
  font-size:0.9em;
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  margin-bottom: 0.5em;
  vertical-align:middle;
  box-sizing: border-box;
  padding:3px 7px;
  border-radius:3px;
  border:solid 1px #ccc;
  color:#000;
}
.wp-pagenavi a:hover{
  border:solid 1px #bbb;
}
.wp-pagenavi span.current{
  border:solid 1px #aaa;
  background-color:#aaa;
  color:#fff;
}

/* fancybox
-------------------------------------------------------------- */

@media all and (-ms-high-contrast: none) {
  
  /* IEでのスクロールバー非表示 */
  #fancybox-content{
    -ms-overflow-style: none;
  }
  
}

/* Facebook
-------------------------------------------------------------- */

/* スマホ用 */
.fb-container {
  width: 100%;
  max-width: 500px;
}

/* ダイナミックQRコード
-------------------------------------------------------------- */

/* QRコードスタイル */
.widget_dynamicqrcode h3,
.widget_dynamicqrcode,
.dynqr_emb_icon{
  display:none;
}

@media screen and (min-width: 992px) {
  
  body {
    position: relative;
  }

  .dynqr_emb_icon,
  .widget_dynamicqrcode{
    position:absolute;
    bottom: 90px;
    right: 25px;
    display:block;
    width:60px;
    z-index: 5;
  }
  .dynqr_emb_icon img,
  .widget_dynamicqrcode img{
    width:100%;
    height:auto;
  }

}

/* パンくず （ウィジェットclassにw-sizesetで幅調整）
-------------------------------------------------------------- */


/* 基本枠幅 */
.breadcrumbs-box{
  max-width:1280px;
  margin: 0 auto;
  padding: 0 30px 0 30px;
  box-sizing: inherit;
}
.all-full1 .breadcrumbs-box{
  max-width:90%;
  padding: 0 30px;
}
.all-full2 .breadcrumbs-box{
  max-width:100%;
  padding: 0 30px;
  box-sizing: border-box;
}

/* パンくずボックス調整 */
.widget_breadcrumb_navxt,
.breadcrumbs{
  width: 100%;
  margin: 0.5em auto;
  padding: 0;
  box-sizing: border-box;
}

/* コンテンツイメージ表示時対応 */
/*
.conview-2 .breadcrumbs,
.conview-1 .breadcrumbs{
  margin-top: 5px;
  padding: 0 0 0 0;
}
*/

/* パンくずポジション */
.widget_breadcrumb_navxt span a,
.breadcrumbs span a,
.widget_breadcrumb_navxt span,
.breadcrumbs span{
  display: inline-block;
  vertical-align: middle;
  line-height: 1.2;
  font-size: 12px;
}

/* 最大文字数制限 */
.widget_breadcrumb_navxt span[property="name"] ,
.breadcrumbs span[property="name"] {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.2;
  padding: 0 0 0 0;
  max-width: 12em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 区切りアイコン <span class="pknext"></span> */
span.pknext{
  display: inline-block;
  margin:0;
  width: 0.8em;
  height: 0.8em;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/btn_next.svg");
  background: #aaaaaa;
  
}

/*　パンくずリンク無効 */
.pkuzu-non{
  pointer-events: none;
}


/* 前ページへ戻る
-------------------------------------------------------------- */

.link-back{
  text-align: center;
}
.link-back a{
  position: relative;
  display: inline-block;
  border:solid 2px #ccc;
  border-radius: 5px;
  padding: 10px 20px 10px 42px;
  margin: 30px auto;
  text-decoration: none;
  color: #222;
  background-color: #fff;
}
.lbdesign1 .link-back a{
  border:none;
  background-color: none;
}
.link-back a:hover{
  background-color: #eee;
}
.lbdesign1 .link-back a:hover{
  opacity: 1;
  background-color: transparent;
}
.link-back a::before{
  content:"";
  position:absolute;
  display:inline-block;
  width:1em;
  height:1em;
 
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("./img/icon/back-icon-left.svg");

  background: #777777;
  left:20px;
  top: 48%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.link-back a:hover::before{
  top: calc(50% - 0.55em);
  animation-name: lb-rotate;
  animation-duration: 3s;
  animation-timing-function: cubic-bezier(0.5, 0.51, 0.51, 0.52);
  animation-iteration-count: infinite;
}
@keyframes lb-rotate{
  0% {
    transform: rotateZ(0);
  }
  100% {
    transform: rotateZ(-360deg);
  }
}


/* page-down
-------------------------------------------------------------- */

/* ページダウン：タイプ1 */
#page-down {
  position: absolute;
  bottom: 2em;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 99;
}
#page-down a{
  text-decoration: none;
  color: #000;
  display: block;
  font-size: 0;
}
#page-down a.pfoot-type1{
  width: 50px;
  height: 50px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i16.svg");
  transform: rotate(180deg);
  background: #ffffff;
}
#page-down a.pfoot-type2 {
  height: 50px;
  width: 50px;
  width: 50px;
  height: 50px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i07.svg");
  transform: rotate(180deg);
  background: #0000ff;
}
#page-down a.pfoot-type2 {
  height: 50px;
  width: 50px;
  width: 50px;
  height: 50px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i14.svg");
  transform: rotate(180deg);
  background: #0000ff;
}
#page-down.hide{
  display: none;
}
@media screen and (max-width: 991px) {
  #page-down{
    display: none;
  }
}

/* page-top
-------------------------------------------------------------- */

/* ページトップ：タイプ2 */
#page-top {
  position: fixed;
  bottom: 20px;
  right: 25px;
  z-index: 1;
  transition: all 0.5s;
}
#page-top a{
  text-decoration: none;
  color: #000;
  display: block;
  font-size: 0;
}
#page-top a.ptop-type1{
  position: relative;
  width: 50px;
  height: 50px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i16.svg");
  background: #777777;
}

#page-top a.ptop-type2{
  width: 60px;
  height: 60px;
  /*
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i07.svg");
  background: #cccccc;
  */
  
  background-image: url("mystyle/img/pagetop-hirotsu.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

#page-top a.ptop-type3{
  width: 50px;
  height: 50px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("img/icon/pageupdown-i14.svg");
  background: #cccccc;

}
#page-top.viewno,
#page-top{
  opacity: 0;
}
#page-top.viewyes{
  opacity: 1;
}
@media screen and (max-width: 991px) {
  #page-top{
    display: none;
  }
}

/* ==============================================================

=プリント

============================================================== */

@page {
  size: A4;
  margin: 12.7mm 9.7mm;
}
@media print {
  
  body {
    zoom: 0.68;
    -webkit-print-color-adjust: exact;
  }
  .contents-bs,
  .to_down,
  .mb-footer,
  .footer-qrcode,
  .footer-sitemap,
  .header-side,
  #secondary.widget-area,
  footer#colophon,
  #to_top_scrollup,
  #site-navigation,
  header.site-header{
    display:none;
  }
  
  /* アニメーション解除 */
  .animein{
    opacity: 1;
  }
  .animated{
    opacity: 1;
    animation: none;
    transform: none;
  }
  
  /* flexカラム変換 */
  .wp-block-columns.print-clm2l,
  .wp-block-columns.print-clm2r,
  .wp-block-columns.print-clm2c,
  .wp-block-columns.print-clm3{
    display: block;
    margin: 0;
    padding: 0;
    letter-spacing: -4em;
  }
  .wp-block-columns.print-clm3 div.wp-block-column{
    display: inline-block;
    letter-spacing: normal;
    flort:left;
    width: 32%;
    margin: 0 2% 0 0;
    padding: 0;
    box-sizing: border-box;
    vertical-align: top;
  }
  .wp-block-columns.print-clm3 div.wp-block-column:nth-child(3n){
    margin: 0 0 0 0;
  }

  .wp-block-columns.print-clm2l div.wp-block-column,
  .wp-block-columns.print-clm2r div.wp-block-column,
  .wp-block-columns.print-clm2c div.wp-block-column{
    display: inline-block;
    letter-spacing: normal;
    flort:left;
    width: 49%;
    margin: 0 2% 0 0;
    padding: 0;
    box-sizing: border-box;
    vertical-align: top;
  }
  .wp-block-columns.print-clm2l div.wp-block-column:nth-child(2),
  .wp-block-columns.print-clm2r div.wp-block-column:nth-child(2),
  .wp-block-columns.print-clm2c div.wp-block-column:nth-child(2){
    margin: 0 0 0 0;
  }
  .wp-block-columns.print-clm2r div.wp-block-column:nth-child(2),
  .wp-block-columns.print-clm2l div.wp-block-column:nth-child(1){
    width: 39%;
  }
  .wp-block-columns.print-clm2r div.wp-block-column:nth-child(1),
  .wp-block-columns.print-clm2l div.wp-block-column:nth-child(2){
    width: 59%;
  }
  .wp-block-columns.print-clm2c div.wp-block-column:nth-child(1),
  .wp-block-columns.print-clm2c div.wp-block-column:nth-child(2){
    width: 49%;
  }
}

@media screen and (min-width: 992px) {
  #menu-main {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin: 0;
    padding: 0;
    margin-bottom: 10px;
    gap: 1.4em;
    box-sizing: border-box;
    list-style-type: none;

    &.no-transition .sub-menu-wrapper {
      transition: none !important;
      transition-property: none !important;
    }

    > .menu-item {
      display: flex;
      flex-wrap: nowrap;

      .mega-menu-title {
        font-size: 1.5em;
        padding-bottom: .5em;
        margin: 0 50px 1.2em;
        color: white;
        border-bottom: 1px solid white;
      }

      .sub-menu-wrapper {
        position: absolute;
        width: 100%;
        background-color: rgba(24, 41, 135, .9);
        box-sizing: border-box;
        max-height: 0vh;
        overflow: hidden;
        left: 0;
        top: calc(100% + 10px);

        /* animetion */
        transition-property: max-height;
        transition-duration: .6s;
        transition-timing-function: ease-in-out;

        &::before {
          content: "✕";
          font-weight: bold;
          cursor: pointer;
          position: absolute;
          top: 10px;
          right: 10px;
          display: block;
          width: fit-content;
          font-size: 1.2rem;
          color: white;
        }
      
        &.open {
          max-height: 100vh;

          /* animetion */
          transition-property: max-height;
          transition-duration: .6s;
          transition-timing-function: ease-in-out;
        }
      }

      .sub-menu {
        display: flex;
        list-style-type: none;
        padding: 150px 50px;
        gap: 20px 2%;

        .menu-item {
          display: flex;
          width: 100%;
        }

        .menu_anchor {
          flex-basis: 100%;
          display: flex;
          background-color: white;
          padding: 2em 1.5em;
          border-radius: 8px;

          &:hover {
            background-color: #eee;
          }
        }
      }

      :is(.main-menu-content, .menu_anchor){
        padding: 0;
      }

      .main-menu-content {
        margin-top: 0;
        font-size: .9em;
        height: auto;
        width: 100%;
        padding-right: 1.15em;

        &::after {
          content: none;
          display: none;
        }
      }

      .icon.tryangle {
        &::after {
          content: url("img/icon/pageupdown-i17b.svg");
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          width: 1em;
          height: 1.5em;
          transform: rotate(180deg) scale(200%);
        }
      }
    }
  }
	

  .wpcf7-form {
    .codedropz-upload-wrapper {
      .codedropz-upload-inner {
        &::before {
          display: block;
          content: "\f0c6";
          font-family: "Font Awesome 6 Free";
          font-weight: 900;
          color: #444;
          font-size: 5rem;
          line-height: 5rem;
          padding: 15px 0 20px;
        }
        > h3 {
          font-size: 20px;
          background-color: Lightblue;
        }
        .cd-upload-btn {
          display: inline-block;
          color: #104280;
          border: solid 2px #333;
          border-radius: 5px;
          padding: 0 .85rem;
          margin: .4rem 0;
          font-size: 1rem;
          font-weight: bold;
        }
      }
    }
  }
}

@media screen and (max-width:768px) {
  .bottom-nav-bar-inner {
    padding-bottom: env(safe-area-inset-bottom);
  }
}

@media screen and (max-width: 991px) {
  .wpcf7-form {
    .codedropz-upload-wrapper {
      .codedropz-upload-inner {
        text-align: left;

        > :not(.codedropz-btn-wrap) {
          display: none;
        }
        .cd-upload-btn {
          border: 4px solid #79b6c9;
          color: #79b6c9;
          font-size: 1.1rem;
          margin: 0;
          padding: .4rem 1rem;
          border-radius: 0;
          display: inline-block;
          font-weight: bold;
        }
      }
    }
    .codedropz-upload-container {
      padding: 0;
    }
    .codedropz-upload-handler {
      border: none;
      margin-top: .4rem;
    }
  }
}