/* Elementor各要素のマージン */
.elementor-top-section{
  margin-bottom: 30px;
}

/* リストのポイント非表示 */
ul { 
  list-style: none;
  padding: 0px;
  margin-top: 0px;
}

.ul-disc {
  list-style-type: disc;
  padding-left: 10px;
}

/* 各ページのヘッダー項目*/
.page-header_pageTitle{
  text-align: center;
}

/* 表のレイアウト設定 */
td, th {
	font-size: 16px;
}

/* h3カスタム設定 */
.h3-custom{
  position:relative;
  margin:0 -1px;
  font:bold 40px/1.6 Arial, Helvetica, sans-serif;
  text-align:center;
  color:#333;
  background:#d9edf7;
  -webkit-transform: rotate(-3deg) skew(-3deg);
  -moz-transform: rotate(-3deg) skew(-3deg);
  -o-transform: rotate(-3deg) skew(-3deg);
  -ms-transform: rotate(-3deg) skew(-3deg);
  transform: rotate(-3deg) skew(-3deg);
  
  /*text-shadow:1px 1px 0 rgba(255,255,255,1);*/
  text-shadow: 0 3px 6px rgba(0, 0, 0, .5),
  2px 2px 0 #FFF, -2px -2px 0 #FFF,
  -2px 2px 0 #FFF, 2px -2px 0 #FFF,
  0px 2px 0 #FFF,  0-2px 0 #FFF,
  -2px 0 0 #FFF, 2px 0 0 #FFF;
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.2),
  30px 0 0 0 #d9edf7,
  -30px 0 0 0 #d9edf7;
}

/* h3カスタム設定 ver.2 */
.h3-custom2{
  font-family: monospace;
  font-size: xx-large;
  font-weight:bold;
  padding-bottom: 0;
  border-bottom: solid 4px #cce4ff;
  position: relative;
}

.h3-custom2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 4px #337ab7;
  bottom: -4px;
  width: 20%;
}
/* h4カスタム設定 */
.h4-custom{
  font-weight: bold;
  font-size: 22px;
  text-align: center;
  padding: 0.25em 0;
  margin-bottom: 0px;
  background-color: transparent;
}

.h4-custom:after {
  content: "";
  margin: auto;
  width: 40%;
  display: block;
  height: 4px;
  background: -webkit-linear-gradient(to right, rgb(51, 122, 183), transparent);
  background: linear-gradient(to right, rgb(51, 122, 183), transparent);
}

.h4-custom2 {
  font-style: italic;
  font-weight: bold;
  color: #337ab7;
  position: relative;
  display: inline-block;
  padding: 0 55px 0 0;
  background-color: transparent;
}

.h4-custom2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: #337ab7;
}

.h4-custom2:after {
  right: 0;
}

/* h5カスタム設定 */
.h5-custom {
  margin:  0;                     /* デフォルトCSS打ち消し */
  font-size:  23px;               /* 文字サイズ指定 */
  position:  relative;            /* 位置調整 */
  font-weight:  normal;           /* 文字の太さ調整 */
  margin-bottom: 15px;            /* 周りの余白指定 */
  padding-top: 50px;              /* 余白指定 */
  padding-left: 40px;             /* 余白指定 */
  text-shadow: 0 0 2px #fff, 0 0 3px #fff; /* ぼかし */
}

.h5-custom:before {
  content:  '';                   /* 空白の要素を作る */
  width: 0;                       /* 幅指定 */
  height: 0;                      /* 高さ指定 */
  border-style: solid;            /* 三角を作る */
  border-width: 0px 0 110px 80px; /* 三角を作る */
  border-color: transparent transparent #a3d0e4 transparent;  /* 三角を作る */
  position:  absolute;            /* 位置調整 */
  z-index:  -1;                   /* 重なり調整 */
  transform: rotate(40deg);       /* 回転 */
  top: -20px;                     /* 位置調整 */
  left: 30px;                     /* 位置調整 */
}

/* h6カスタム設定 */
.h6-custom {
  margin:  0;             /* デフォルトCSS打ち消し */
  position:  relative;    /* 位置調整 */
  font-weight:  normal;   /* 文字の太さ調整 */
  margin-bottom: 35px;    /* 周りの余白指定 */
  font-size: 22px;        /* 文字サイズ指定 */
  padding-top: 20px;      /* 余白指定 */
}

.h6-custom:before {
  content: '';            /* 空の要素を作る */
  width: 30px;            /* 幅指定 */
  height: 30px;           /* 高さ指定 */
  border-radius:  50%;    /* 丸くする */
  border: solid #d4dcda;  /* 枠線指定 */
  display:  block;        /* ブロック要素にする */
  position:  absolute;    /* 位置調整 */
  left:  0;               /* 位置調整 */
  right:  0;              /* 位置調整 */
  margin:  12px 0px;      /* 位置調整 */
  top: 0;                 /* 位置調整 */
  z-index: -1;            /* 重なり調整 */
}

.h6-custom:after {
  content: '';            /* 空の要素を作る */
  width: 30px;            /* 幅指定 */
  height: 30px;           /* 高さ指定 */
  border-radius:  50%;    /* 丸くする */
  border: 1px solid #ccc; /* 枠線指定 */
  display:  block;        /* ブロック要素にする */
  position:  absolute;    /* 位置調整 */
  left:  0;               /* 位置調整 */
  right:  0;              /* 位置調整 */
  margin:  1px 5px;       /* 位置調整 */
  top: 7px;               /* 位置調整 */
  z-index: -1;            /* 重なり調整 */
}

/* マーカーラインテキスト*/
.highlight {
    background: linear-gradient(transparent 50%, #ffff66 0%);
    line-height: 1.3em;
}

/* スマホ向け画像は非表示 */
.pc {
    display: inline-block;
}
.sp {
    display: none;
}
/*PCでは無効な改行*/
.br_sp{
    display: none;
}

/* id指定のリンクのジャンプ位置調整*/
.id_link{
  padding-top: 70px;
}

/*reCAPTCHAのロゴを非表示*/
.grecaptcha-badge {
	visibility: hidden; 
}

/* タブレットスマホ対応 */
@media screen and (max-width: 1024px) {
  
  /* 折り返し表示を右から変更 */
	.flex-wrap-reverse .elementor-row {
		flex-wrap: wrap-reverse;
	}
	
	/* 文字サイズ調整 */
	body, html {
	  font-size: 14px;
	}
	
	/* 表のレイアウト設定 */
	td, th {
	  font-size: 14px;
	}

  .h3-custom {
    font-size: 22px;
  }
	
	.h4-custom {
    font-size: 20px;
  }
  
  .h5-custom {
    font-size: 20px;
  }
  
  .h6-custom {
    font-size: 20px;
  }
}

/* スマホ対応 */
@media screen and (max-width: 767px) {
  
  /* PC向け画像は非表示 */
  .pc {
    display: none;
  }
  .sp {
    display: inline-block;
  }
	
	/* スマホのみ改行 */
  .br_sp{
      display: block;
  }
	
	/* 文字サイズ調整 */
	body, html {
      font-size: 13px;
	}
	
	/* 表のレイアウト設定 */
 td, th {
	 font-size: 13px;
  }

  .h3-custom {
    font-size: 20px;
  }
	
	.h4-custom {
    font-size: 18px;
  }
  
  .h5-custom {
    font-size: 16px;
  }
  
  .h5-custom:before {
  border-width: 0px 0 77px 56px; /* 三角を作る */
  border-color: transparent transparent #a3d0e4 transparent; /* 三角を作る */
  top:  0px;                     /* 位置調整 */
  }

  .h6-custom {
    font-size: 16px;
  }
}

/* 非表示コンテンツ */
.display_none {
  display: none;
}

/* --- コンタクトフォーム装飾--- */

/* 全体幅 調整*/
#cf7-area {
  width:100%;
  margin: 0 auto;
}

/* ラベルと入力欄を横並び */
.cf7-row {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0 0 1.75em;
}

/* 項目ラベル幅調整 */
.cf7-col-label {
  width: 30%;
  margin: 0 0 0 10px;
}

/* 入力エリア幅調整 */
.cf7-col-content {
  width: 60%;
}

/* スマホ対応(コンタクトフォーム) */
@media screen and (max-width: 767px) {
  
  /* ラベルと入力欄を縦並び */
  .cf7-row {
    display: block;
  }
  #cf7-area label{
    display: block;
    margin-bottom: 10px;
  }

  /* ラベル幅調整 */
  .cf7-col-label {
    width: 100%;
    margin: 0;
  }

  /* 入力欄を幅調整 */
    .cf7-col-content {
    width: 100%;
  }

  /* 選択項目縦並び調整 */  
  .CF7Radio, .CF7CheckBox {
    display: block;
  } 

}
