@charset "utf-8";

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

INDEX

新着情報・カスタム投稿・お問い合わせの基本設定ファイル
カラー等のカスタマイズは、mystyle/my-style.cssで上書き

=採用情報
=製品案内

=お知らせ・新着情報
=お問い合わせ：共通
=よくある質問
=アクション
=ページナビ（スタイル設定）

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


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

=採用情報

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


/* 採用情報シングル */
body.single-recruit  h1.entry-title{
  color: #ffffff!important;
  padding: 0.8em!important;
}
a.entrylink{
  color: #ffffff!important;
}

/* 採用検索ボックス
-------------------------------------------------------------- */

/* 採用検索ボックス枠 */
.recruit-block .cusblock-box {
  background-color: #eeeeee;
  padding: 20px;
  margin-bottom: 24px;
  text-align: center;
}

/* セレクトボックス */
.rectag-box{
  margin-bottom: 10px;
}
.rectag-box form{
  display: inline-block;
  position: relative;
  width: 200px;
  height: 38px;
}
select.rectag-select{
  position: absolute;
  top:0;
  left: 0;
  width: calc(100% - 45px);
  padding: 5px;
  border-radius: 3px 0 0 3px;
  border-color: #bbb;
  border-right: 0;
  height: 38px;
  box-sizing: border-box;
}
.rectag-btm{
  position: absolute;
  top:0;
  right: 0;
  width: 45px;
  padding: 5px;
  border-radius: 0 3px 3px 0;
  height: 38px;
  background-color: #777;
  color: #fff;
  border-color: transparent;
  box-sizing: border-box;
  cursor:pointer;
  text-align: center;
}

/* 検索窓 */
.recruit-block .searchform {
  position: relative;
  width: 90%;
  max-width: 600px;
  margin: 0 auto;
}
.recruit-block .searchfield {
  width: 100%;
  margin: 0;
  padding: 10px;
  border: solid 1px #bbb;
  border-radius: 4px;
  background-color: #ffffff;
  box-sizing: border-box;
}
.recruit-block .searchsubmit {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 0;
  cursor: pointer;
  color: #555;
  border: none;
  display: block;
  width: 20px;
  height: 20px;
  background: transparent;
  background-image: url("../img/kensaku-icon-b.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.recruit-block .searchsubmit:hover {
  opacity: 0.6;
}


@media screen and (min-width: 768px) {
  .recbox-all{
    display: flex;
    width: 100%;
  }
  .rectag-box{
    width: 200px;
    margin: 0 5px;
  }
  .recform-box{
    width: 100%;
  }
  .recform-box.hide{
    width: calc(100% - 210px);
  }
  .recruit-block .searchform {
    width: 98%;
    max-width: 800px;
    
  }
  .recruit-block .searchform input{
    box-sizing: border-box;
  }
}

/* 採用情報カテゴリー */
.recruit-block .recruit-box {
  margin: 20px auto 0 auto;
  padding: 0;
  display: flex;
  justify-content: center;
}
.recruit-block .recruit-box div {
  margin: 0;
  padding: 0;
  list-style-type: none;
  width: 50%;
}
.recruit-block .recruit-box div a {
  display: block;
  padding: 10px 20px;
  margin: 0 5px;
  border-radius: 5px;
  background-color: #ccc;
  text-decoration: none;
  color: #ffffff;
}
.recruit-block .recruit-box div a:hover {
  opacity: 0.7;
}

/* 一覧タイトル */
.recruit-block.set-block-a .entry-header{
	margin-bottom: 0.5em;
}
.recruit-block.set-block-a .entry-header a,
.recruit-block.set-block-a .entry-header h1 a{
	position: relative;
	display: block;
	text-decoration: none;
	border: solid 1px #ccc;
	padding: 0.4em 0.5em 0.4em 0.5em;
	vertical-align: middle;
	color: #333333;
	background-color: ffffff;
	transition: all 0.6s;
}

.recruit-block.set-block-a .entry-header a:hover,
.recruit-block.set-block-a .entry-header h1 a:hover{
	color: #333333;
	background-color: #f5f5f5;
}
.recruit-block.set-block-a .entry-header h1{
	font-size: 1em;
	line-height: 1.2;
}

@media screen and (min-width: 500px) {
  .recruit-block.set-block-a .entry-header a,
	.recruit-block.set-block-a .entry-header h1 a{
		padding: 0.4em 7em 0.4em 0.5em;
	}
}


/* 採用情報リスト一覧枠 */

.recruit-block .entry-header a.recbox{
  padding: 20px 20px 20px 20px;
}
.recruit-block .entry-header a.recbox span.rectitle{
  display: block;
	color: #000000;
  font-size: 1.3em;
  font-weight: bold;
}
.recruit-block .entry-header a.recbox span.recadd{
  display: block;
}
.recruit-block .entry-header a.recbox p{
	margin: 5px 0;
	color: #555555;
	font-weight: normal;
  line-height: 1.5;
}
@media screen and (min-width: 501px) {
  .recruit-block .entry-header a.recbox{
    padding: 20px 120px 20px 20px;

  }
}


/*  採用情報詳細
-------------------------------------------------------------- */

/* 詳細タイトル */

.recruit-block.set-block-s .entry-header{
	margin-bottom: 1em;
}
.recruit-block.set-block-s .entry-header h1{
	position: relative;
	border: solid 1px #aaaaaa;
	padding: 0.4em 0.5em 0.4em 0.5em;
	font-size: 1.5em;
	line-height: 1.2;
}

@media screen and (min-width: 500px) {
	.recruit-block.set-block-s .entry-header h1{
		padding: 0.4em 7em 0.4em 0.5em;
	}
}


/* 募集要項見出し */
h2.jobs-h2 {
  font-size: 1.3em;
  margin: 20px 0 15px 0;
  padding-bottom: 5px;
  border-bottom: solid 3px #777777;
}
/* 募集要項ボックス */
.jobs-area dl:first-child {
  border-top: solid 1px #ccc;
}
.jobs-area dl {
  border-bottom: solid 1px #ccc;
  border-left: solid 1px #ccc;
  border-right: solid 1px #ccc;
}
.jobs-area dl dt {
  padding: 10px;
  background-color: #eeeeee;
}
.jobs-area dl dd {
  padding: 10px;
  background-color: #ffffff;
}
@media screen and (min-width: 768px) {
  .jobs-area dl {
    display: flex;
    width: 100%;
  }
  .jobs-area dl dt {
    margin: 0%;
    width: 25%;
  }
  .jobs-area dl dd {
    margin: 0;
    width: 70%;
  }
}

/* エントリーリンク */
a.entrylink {
  text-align: center;
  margin: 30px auto;
  max-width: 600px;
  display: block;
  padding: 15px;
  background-color: #777;
  color: #fff ;
  text-decoration: none;
  border-radius: 5px;
}
a.entrylink:hover {
  opacity: 0.7;
}
a.entrylink.el-bottom {
  margin-top: 50px;
}

/* 検索エラー時 */
.recbox-sc{
  padding: 20px 20px 20px 20px;
  border: solid 1px #ccc;
}
.recbox-sc h3{
  margin: 10px 0 10px 0;
}



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

=製品案内

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


.menu-customhead-container ul#menu-customhead{
  list-style-type: none;
  display: flex;
  gap:10px 2%;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 2.5em 0;
  padding: 0;
}
.menu-customhead-container ul#menu-customhead li{
  margin: 0;
  padding: 0;
  width: 49%;
}
.menu-customhead-container ul#menu-customhead li a{
  display: block;
  border: solid 1px #512568;
  padding: 0.5em;
  font-size: 20px;
  text-align: center;
  color: #222222;
}
.menu-customhead-container ul#menu-customhead li a:hover{
  background-color: #f8f4f9;
}
.menu-customhead-container ul#menu-customhead li.current-menu-item a{
  color: #ffffff;
  background-color: #512568;
}

@media screen and (max-width: 599px){
  .menu-customhead-container ul#menu-customhead li{
    width: 100%;
  }
}


/* 製品一覧 
-------------------------------------------------------------- */

.conlsitimg.is-style-mdimg01{
  position: relative;
  
  
}
.conlsitimg.is-style-mdimg01::after{
  content: '';
  display: block;
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #eeeeee;
  border-radius: 50%;
  z-index: -1;
}

/* 製品一覧－全体枠 */
.loop-block-product{
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap:1em 2%;
}


.loop-block-product article{
  display: block;
  margin-bottom: 10px;
  padding:0;
  box-sizing: border-box;
}

@media screen and (max-width: 767px){
  .loop-block-product article{
    width: 49%;
  }
  .loop-block-product.pview-in1 article{
    width: 100%;
  }
}
@media screen and (min-width: 768px)  and (max-width: 991px) {
  
  .loop-block-product.pview-in1 article{
    width: 100%;
  }

  .loop-block-product.pview-in2 article{
    width: 49%;
  }
  .loop-block-product.pview-in3 article{
    width: 32%;
  }
  .loop-block-product.pview-in4 article{
    width: 32%;
  }
  
  .term-pdcat-obi .loop-block-product article{
    width: 49%;
  }

}
@media screen and (min-width: 992px){

  .loop-block-product.pview-in1 article{
    width: 100%;
  }
  .loop-block-product.pview-in2 article{
    width: 49%;
  }
  .loop-block-product.pview-in3 article{
    width: 32%;
  }
  .loop-block-product.pview-in4 article{
    width: 23.5%;
  }
  
  .term-pdcat-obi .loop-block-product article{
    width: 32%;
  }
}

@media screen and (min-width: 768px){
  .loop-block-product article .product-box.whset-w{
    display: flex;
    justify-content: space-between;
    /*flex-direction: row-reverse;*/
  }
  .loop-block-product article .product-box.whset-w div.product-iamge{
    margin-bottom: 0;
    width: 38%;
    box-sizing: border-box;
  }
  .loop-block-product article .product-box.whset-w div.product-body{
    width: 62%;
  }
}

/* 一覧時詳細レイアウト：画像 */
.loop-block-product article .product-box div.product-iamge{
  box-sizing: border-box;
}
/* 一覧時詳細レイアウト：詳細 */
.loop-block-product article .product-box div.product-body{
  padding: 0px;
  box-sizing: border-box;
}

/* 所蔵品ナンバー（一覧） */
h2.product-title{
  font-size: 16px;
  text-align: center;
  margin: 10px 0 0 0;
}



/* 制作実績詳細
-------------------------------------------------------------- */

/* 制作実績名称 */
h1.product-title-single{
  margin: 0 0 24px 0;
  padding: 0.5em 0;
  text-align: center;
  border-top: dotted 2px #cccccc;
  border-bottom: dotted 2px #cccccc;
}

.product-box-single{
  display: block;
}
@media screen and (min-width: 992px){
  .product-box-single{
    display: flex;
    gap:20px;
    align-items: center;
  }
  .product-box-single .product-img {
    width: 70%;
  }
  .product-box-single .product-txt {
    width: 30%;
  }
}

/* 実績画像 */
.product-img-set{
  display: block;
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
  
}

/* シングル
-------------------------------------------------------------- */

/* 画像縦長時余白 */
.works-single-img .view-h{
  padding: 0 15%;
  box-sizing: border-box;
}

h1.entry-title-works{
  margin-top: 0;
}

dl.wk-single{
  padding: 10px 0;
  border-bottom: solid 1px #ccc;
}
.wk-area dl.wk-single:first-child{
  border-top: solid 1px #ccc;
}
.works-single-box .works-single-img,
.works-single-box .works-single-content,
.wk-area{
  margin-bottom: 20px;
}
dl.wk-single ul{
  margin-top: 0;
  margin-bottom: 0;
}

dl.wk-single dd{
  word-break: break-all;
}

@media screen and (max-width: 767px){
  dl.wk-single dt{
    border-bottom: dotted 1px #ccc;
    padding-bottom: 5px;
    margin-bottom: 5px;
  }

  .works-single-box{
    display: flex;
    flex-wrap: wrap-reverse;
  }
  .works-single-box .works-single-img{
    width: 100%;
  }
  .works-single-box .works-single-content{
    width: 100%;
  }

  h1.entry-title-works{
    text-align: center;
    margin: 0 0 0.8em 0;
    font-size: 1.5em;
  }
}
@media screen and (min-width: 768px){
  .works-single-box{
    display: flex;
    gap: 5%;
  }
  .works-single-box .works-single-img{
    width: 65%;
  }
  .works-single-box .works-single-content{
    width: 30%;
  }
  
  dl.wk-single{
    display: flex;
    gap: 10px;
  }
  dl.wk-single dt{
    width: 5em;
  }
  dl.wk-single dd{
    width:calc(100% - 5em);
    border-left: dotted 1px #ccc;
    padding-left: 10px;
    box-sizing: border-box;
  }
  
  h1.entry-title-works{
    font-size: 1.5em;
  }
}

/* ギャラリー */
.wk-gallery-box{
  margin: 24px 0;
}
.wk-gallery-box #gallery-1 img {
    border: solid 1px #fff!important;
}
.wk-gallery-box #gallery-1 .gallery-item {
    margin-top: 0!important;
}



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

=お知らせ・新着情報

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

/* 一覧ページ枠調整 */
.news-block .wrapper{
  padding-left: 20px;
  padding-right: 20px;
}
.news-block .all-full .wrapper{
  padding-left: 0;
  padding-right: 0;
}

/* 続きを読む */
span.all-next-link a{
  text-decoration: none;
}
span.all-next-link a::before{
  content: '【 ';
}
span.all-next-link a::after{
  content: ' 】';
}


/* ==============================================================
	
=お問い合わせ：共通
	
============================================================== */

/* オートコンプリートクリア */
select:-webkit-autofill, 
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #fff inset ;
  border-width: 1px;
  border-style: solid;
  border-color: -internal-light-dark(rgb(118, 118, 118), rgb(133, 133, 133));
}

/* 確認画面時のフォームスタイル */
textarea.wpcf7c-conf, 
select.wpcf7c-conf, 
input.wpcf7c-conf, 
input.wpcf7c-conf:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #eee inset ;
}
.fm-ckbox input.wpcf7c-conf {
  -webkit-box-shadow: none ;
}
select.wpcf7c-con:focus, 
textarea.wpcf7c-conf:focus, 
input.wpcf7c-conf:focus {
  outline: none;
}
.contact-fm textarea.wpcf7c-conf, 
.contact-fm select.wpcf7c-conf, 
.contact-fm input.wpcf7c-conf {
  border-color: #ddd;
}
.contact-fm 
.wpcf7-list-item input.wpcf7c-conf:-webkit-autofill, 
.contact-fm .wpcf7-list-item input.wpcf7c-conf {
  border-color: transparent ;
  -webkit-box-shadow: none ;
}
.contact-fm .file-box input.wpcf7c-force-hide, 
.contact-fm .file-box input.wpcf7c-conf {
  width: 100% ;
  height: auto ;
  padding: 0 ;
  background: none ;
  border-color: transparent ;
  -webkit-box-shadow: none ;
}

/* フォームボックス */
.contact-box {
  border: solid 1px #ccc;
  padding: 20px;
}
@media screen and (min-width: 992px) {
  .contact-box {
    padding: 50px;
  }
}

.form-block{
  border: solid 1px #cccccc;
  padding: 20px;
  margin-bottom: 24px;
}
.form-block dl:first-child{
  border-top:0;
  margin-top: 0;
  padding-top: 0;
}

/* 送信後表示切替 */
.complete-display {
  display: none;
}
.sent .complete-display {
  display: block;
}
.sent .wpcf7-response-output, 
.sent .formInner {
  display: none;
}

/* フォームスタイル－採用タイトル用 */
.recruit-select select.wpcf7-select {
  width: 100%;
  /*max-width: 500px;*/
}
@media screen and (min-width: 992px) {
  .recruit-select select.wpcf7-select {
    width: auto;
  }
}

/* フォームスタイル－基本 */
dl.contact-fm {
  margin: 5px 0 0 0;
  padding: 15px 0 0 0;
  border-top: dotted 1px #aaa;
}
dl.contact-fm dt {
  margin: 0 0 10px 0;
  padding: 0;
  font-weight: normal;
}
dl.contact-fm dt div {
  margin: 0;
  padding: 0;
}
dl.contact-fm dd {
  margin: 0 0 10px 0;
  padding: 0;
}
dl.contact-fm dd textarea, 
dl.contact-fm dd select, dl.contact-fm dd input {
  padding: 5px;
}
input.fm-add {
  /*width: 95%;*/
}

/* 仕切りライン */
.contents-k-line {
  border-bottom: dotted 1px #999;
  margin: 15px 0;
}

/* 送信・確認ボタン ※mystyle/my-block.cssに記載 */


/* ファイル削除 */
#clear1, #clear2, #clear3, #clear4, #clear5 {
  display: none;
  padding: 2px 5px;
  margin-left: 5px;
}

/* ファイル削除－確認時非表示 */
.custom-wpcf7c-confirmed #clear1, 
.custom-wpcf7c-confirmed #clear2, 
.custom-wpcf7c-confirmed #clear3, 
.custom-wpcf7c-confirmed #clear4, 
.custom-wpcf7c-confirmed #clear5 {
  display: none ;
}
.custom-wpcf7c-confirmed 
.file-1 input.wpcf7c-conf, 
.custom-wpcf7c-confirmed .file-2 input.wpcf7c-conf, 
.custom-wpcf7c-confirmed .file-3 input.wpcf7c-conf, 
.custom-wpcf7c-confirmed .file-4 input.wpcf7c-conf, 
.custom-wpcf7c-confirmed .file-5 input.wpcf7c-conf {
  width: 90% ;
  border: none ;
  padding: 0 ;
  background-color: transparent ;
  box-shadow: 0 0 0 0 #fff inset ;
}

/* 確認画面背景 */
.wpcf7c-conf {
  background-color: #F5F5F5; /* 背景色 */
  color: black; /* 文字色 */
  border: 1px solid #777; /* 周りの線: 太さ　線種 線の色 */
}
div.wpcf7-response-output {
  margin-right: 0;
  margin-left: 0;
}

/* 入力エリア */
input.wpcf7-text, 
input.wpcf7-date, 
input.fm-add, 
input.fm-tel, 
input.fm-kana, 
input.fm-name, 
input.wpcf7-validates-as-email, 
textarea.fm-mess {
  width: 95%;
}
input.fm-yubin {
  width: 100px;
}
input.fm-age{
  width: 100px!important;
}
input.fm-tel, 
input.fm-kana, 
input.fm-name {
  max-width: 300px;
}
input.wpcf7-validates-as-email {
  max-width: 600px;
}
input.fm-recruit {
  max-width: 600px;
}

/* 必須 */
dl.contact-fm dt {
  position: relative;
  margin: 0;
}
dl.contact-fm dt span {
  /*
  position: absolute;
  right:10px;
  display: inline-block;
  background-color: #F00;
  color: #fff;
  font-size: 0.8em;
  padding: 2px 5px;
  margin-left: 8px;
  vertical-align: top;
  */
  
  position:inherit;
  right:10px;
  display: inline-block;
  color: #ff0000;
  font-size: 0.8em;
  padding: 0;
  margin: -0.5em 0 0 0.3em;
  vertical-align: middle;
}


/* 項目メッセージ */
.wpcf7 form .wpcf7-response-output {
  margin: 10px 0 0;
  padding: 8px 35px 8px 14px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.wpcf7 form.init .wpcf7-response-output {
  display: none;
}

/* 送信成功 */
.wpcf7 form.sent .wpcf7-response-output {
  color: #3A87AD;
  background-color: #D9EDF7;
  border: 1px solid #BCE8F1;
}

/* 送信失敗 */
.wpcf7 form.failed .wpcf7-response-output, 
.wpcf7 form.aborted .wpcf7-response-output {
  color: #711d26;
  background-color: #f7d7da;
  border: 1px solid #f4c6cb;
}

/* スパム */
.wpcf7 form.spam .wpcf7-response-output {
  color: #846314;
  background-color: #fff2cf;
  border: 1px solid #feedbd;
}

/* 送信NG */
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output {
  color: #B94A48;
  background-color: #F2DEDE;
  border: 1px solid #EED3D7;
}

/* 項目エラー */
.wpcf7-not-valid-tip {
  position: relative;
  display: inline-block ;
  background-color: #dc3232;
  color: #fff ;
  font-size: 1em;
  font-weight: normal;
  padding: 5px;
  margin-top: 5px;
  margin-left: 6px;
  border-radius: 5px;
}
.wpcf7-not-valid-tip::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -12px;
  margin-top: -6px;
  border: 6px solid transparent;
  border-right: 6px solid #dc3232;
}
.viewout .wpcf7-response-output, 
.viewout .wpcf7-not-valid-tip {
  display: none ;
}

/* ローダー */
span.ajax-loader {
  display: block ;
  position: absolute;
  right: 0;
  top: 0;
}
span.wpcf7-spinner{
  display: block ;
  margin: 10px auto 0 auto;
}

/* 確認時リセット非表示 */
.reset-btm.wpcf7c-conf {
  display: none;
}
.fm-btm .reset-btm {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  background: none;
  background-color: transparent ;
  border: none;
  margin: 0;
  padding: 0;
  color: #3e3e3e!important ;
  font-size: 0.9em;
}
.fm-btm .reset-btm:focus {
  outline: none;
}
p.kakunin-mess a {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  input.form-s {
    max-width: 200px;
  }
  input.form-m {
    max-width: 300px;
  }
  input.form-l {
    max-width: 600px;
  }
}
@media screen and (min-width: 992px) {
  
  dl.contact-fm{
    display: flex;
    gap:1em;
  }
  
  dl.contact-fm dt {
    width: 28%;
    margin: 0 0 0 0;
    padding: 0;
  }
  dl.contact-fm dt div {
    margin-top: 10px;
    margin-bottom: 0;
  }
  dl.contact-fm dd {
    width: 72%;
    margin: 0 0 10px 0;
    padding: 0;
  }
  input.wpcf7-text, input.wpcf7-date, input.fm-add, input.fm-tel, input.fm-name, input.wpcf7-validates-as-email, textarea.fm-mess {
    width: 95%;
  }
  input.fm-yubin {
    width: 100px;
  }
  
  dl.contact-fm dt p{
    padding-right: 2em;
  }
  

}

/* 確認画面 */

.custom-wpcf7c-confirmed span.hissu{
  display: none;
}

.custom-wpcf7c-confirmed textarea.wpcf7c-conf,
.custom-wpcf7c-confirmed select.wpcf7c-conf,
.custom-wpcf7c-confirmed input[type="tel"].wpcf7c-conf,
.custom-wpcf7c-confirmed input[type="email"].wpcf7c-conf,
.custom-wpcf7c-confirmed input[type="text"].wpcf7c-conf {
  margin-top: 2px;
  padding: 0;
  border: none;
  -webkit-box-shadow: 0 0 0px 1000px #fff inset ;
  background: none;
}
.custom-wpcf7c-confirmed select.wpcf7c-conf{
  color: #000;
  opacity: 1;
  margin-left: -5px;
}
.custom-wpcf7c-confirmed span.yubin-set{
  display: none;
}

/* エントリー個別渡し */
.cf7-conect-set .post-type,
.cf7-conect-set .post-title{
  display: block;
  margin-top: 2px;
}
.wpcf7 .cf7-conect-set .post-type input,
.wpcf7 .cf7-conect-set .post-title input{
  display: none;
}
.wpcf7-list-item{
  margin-left: 0;
  margin-right: 1em;
}
.cf7-conect-set .wpcf7-list-item{
  margin-right: 0;
}

.contact-fm dt p{
  margin-top: 0;
}


/* 完了画面
-------------------------------------------------------------- */



/* reCAPTCHA 
-------------------------------------------------------------- */


.grecaptcha-badge { 
  visibility: hidden;
}
.captcha-fsize a,
.captcha-fsize {
  font-size: 0.8em;
}
.footer-block .captcha-fsize a,
.footer-block .captcha-fsize{
  text-align: center;
}
.footer-block .captcha-fsize{
  padding: 0 20px;
}

/* reCAPTCHA非表示 */
.recap-box{
  display: none;
}



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

=よくある質問

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

/* 外枠デザイン */
.ewd-ufaq-faq-div {
  margin-bottom: 24px;
  border: solid 1px #ccc;
  padding: 5px 10px 5px 10px;
  border-radius: 5px;
  background-color: #ffffff;
}
.faqset-in .ewd-ufaq-faq-div,
.faqset-in2 .ewd-ufaq-faq-div,
.faqset-in3 .ewd-ufaq-faq-div{
  margin-bottom: 10px;
}

/* Q：質問 */
a.ewd-ufaq-post-margin{
  text-decoration: none;
}
.ewd-ufaq-faq-title-text{
  padding-bottom:0;
}
.ewd-ufaq-faq-title-text h4{
  position: relative;
  padding-left: 30px;
  margin: 5px ;
}
.ewd-ufaq-faq-title-text h4 a,
.ewd-ufaq-faq-title-text h4{
  text-decoration: none;
  color: #000;
  display: block;
}

.faqset-in .ewd-ufaq-faq-title-text h4{
  cursor:pointer;
}
.ewd-ufaq-faq-title-text h4::before{
  position: absolute;
  top: 1px;
  left: -1px;
  content: "Q";
  color: #000000;
}

/* A：答え */
.ewd-ufaq-faq-body{
  border-top: dotted 2px #ddd;
  position: relative;
  padding: 10px 25px 10px 30px;
  margin: 10px 5px 10px 5px;
  box-sizing: border-box;
}
.ewd-ufaq-faq-body p{
  padding: 0;
  margin: 2px 0!important;
}
.ewd-ufaq-faq-body::before {
  position: absolute;
  top: 0.9em;
  left: 0;
  content: "A";
  color:#777777;
}

/* QAフォントサイズ */
.ewd-ufaq-faq-title-text h4,
.ewd-ufaq-faq-body::before {
  font-size: 1.5em;
}
.ewd-ufaq-faq-body::before {
  top: 0.4em;
}

/* デザインタイプ
-------------------------------------------------------------- */

/* 外枠デザイン：タイプ2 */
.ewd-ufaq-faq-div.faq-destype1 {
  margin-bottom: 0;
  border:0;
  padding: 5px 0 5px 0;
  border-radius: 0;
  background-color: #ffffff;
}
.ewd-ufaq-faq-div.faq-destype1 .ewd-ufaq-faq-title-text h4{
  margin: 0 5px ;
}
.ewd-ufaq-faq-div.faq-destype1 .ewd-ufaq-faq-body{
  border: solid 1px #ddd;
  border-radius: 3px;
  padding: 10px 25px 10px 40px;
  margin: 10px 0 10px 0;
  box-sizing: border-box;
}
.ewd-ufaq-faq-div.faq-destype1 .ewd-ufaq-faq-body::before {
  top: 8px;
  left: 10px;
}

/* 外枠デザイン：タイプ2 */
.ewd-ufaq-faq-div.faq-destype2 {
  margin-bottom: 0;
  border:0;
  border-bottom:dotted 1px #aaa;
  padding: 5px 0 5px 0;
  border-radius: 0;
  background-color: #ffffff;
}
.type-faq:first-child .ewd-ufaq-faq-div.faq-destype2{
  border-top:dotted 1px #aaa;
}
.ewd-ufaq-faq-div.faq-destype2 .ewd-ufaq-faq-body{
  border-top: 0;
  padding-top: 1px;
  margin-bottom: 5px;
}
.ewd-ufaq-faq-div.faq-destype2 .ewd-ufaq-faq-body::before {
  top: 0px;
}

/* 外枠デザイン：タイプ3 */
.ewd-ufaq-faq-div.faq-destype3 {
  margin-bottom: 5px;
  border:0;
  padding: 0;
  border-radius: 0;
  background-color: #ffffff;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-title-text{
  background-color: #777777;
  padding: 0.5em;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-title-text h4{
  color: #ffffff;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-title-text h4 a{
  color: #ffffff;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-title-text h4::before{
  color: #ffffff;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-body{
  border-top: 0;
  padding-top: 0;
  padding-left: 38px;
}
.ewd-ufaq-faq-div.faq-destype3 .ewd-ufaq-faq-body::before {
  top: -2px;
  left: 0.3em;
}


/* 外枠デザイン：タイプ4 */
.type-faq{
  position: relative;
}
.type-faq span.edit-link{
  position: absolute;
  right: 1px;
  bottom: 1px;
}

.ewd-ufaq-faqs .type-faq:first-child{
  border-top:solid 1px #c2d8f2;
}

.ewd-ufaq-faq-div.faq-destype4 {
  padding: 2em 0 1.5em 0!important;
}

.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-title-text h4::before{
  position: absolute;
  top: -0.2em;
  left: 0;
  content: "";
  display: block;
  width: 64px;
  height: 55px;
  background-image: url("../mystyle/img/qaicon-q.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-title-text h4::after{
  position: absolute;
  bottom: 0;
  left: 80px;
  content: "";
  display: block;
  width: calc(100% - 80px);
  height: 3px;
  background-image: url("../mystyle/img/qaicon-line.png");
  background-repeat: no-repeat;
  background-size: auto 3px;
  background-position: left top;
}
.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-body::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 64px;
  height: 41px;
  background-image: url("../mystyle/img/qaicon-a.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.ewd-ufaq-faq-div.faq-destype4 {
  margin-bottom: 0;
  border:0;
  border-bottom:solid 1px #c2d8f2;
  padding: 5px 0 5px 0;
  border-radius: 0;
  background-color: transparent;
}
.type-faq:first-child .ewd-ufaq-faq-div.faq-destype4{
  /*border-top:dotted 1px #aaa;*/
}

.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-title-text h4{
  color: #1835ad;
  padding-left: 80px;
  padding-bottom: 1em;
  margin-bottom: 1em;
}

.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-body{
  border-top: 0;
  padding-top: 1px;
  padding-left: 80px;
  margin-bottom: 5px;
}
.ewd-ufaq-faq-div.faq-destype4 .ewd-ufaq-faq-body::before {
  top: 0px;
}


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

=アクション

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


/* タイピング
-------------------------------------------------------------- */
.tgt4,
.tgt3,
.tgt2,
.tgt {
  opacity: 0;
}
.tgt4 span,
.tgt3 span,
.tgt2 span,
.tgt span{
  display: none;
  float: left;
  position: relative;
}
.tgt4 span.cur,
.tgt3 span.cur,
.tgt2 span.cur,
.tgt span.cur{
  display: block;
  position: absolute;
  bottom: 0;
  right: -0.8em;
}


.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}


/* じわっ
-------------------------------------------------------------- */

.blur{
  opacity: 0;
  animation-delay: 0.5s;
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
 
.blurTrigger{
    opacity: 0;
}


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

=ページナビ

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

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

.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 3px;
  text-align: center;
  min-width: 1em;
	border-radius:3px;
	border:solid 1px #ccc;
	color:#3e3e3e;
}

/* カスタマイズ */
.wp-pagenavi{
  display: flex;
  justify-content: center;
  align-items: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 3em;
  height: 3em;
  padding: 0;
}
.wp-pagenavi span.pages{
  min-width: 5em;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi a,
  .wp-pagenavi span {
    min-width: 2em;
    height: 2em;
  }
  .wp-pagenavi span.pages{
    min-width: 3.5em;
  }
}


.wp-pagenavi a:hover{
	border:solid 1px #1835ad;
}
.wp-pagenavi span.current{
	border:solid 1px #1835ad;
	background-color:#1835ad;
	color:#fff;
}

