@charset "Shift_JIS";

/*--------------------------------------------------------
  フルCSSプロフェッショナルテンプレート部品設定
--------------------------------------------------------*/

.hpb-parts-cnt-style{
    border-color: #cccccc;
}

.hpb-parts-hl-style{
    padding-left: 20px !important;
		margin-top: 5px;
		margin-bottom: 10px;
    border-color: #cccccc;
}

.hpb-parts-cbox-style{
    border-color: #cccccc;
}

.hpb-parts-hr-style{
    border-color: #cccccc;
}

.hpb-parts-pbox-style{
    border-color: #cccccc;
}
.hpb-parts-pbox-style h4{
    padding: 0px !important;
}

.hpb-parts-blist-style{
    background-color: #DFDFDF;
    border-color: #BBBBBB;
}
a:link.hpb-parts-blist-style{
    color: #000000;
}
a:visited.hpb-parts-blist-style{
    color: #000000;
}
a:hover.hpb-parts-blist-style{
    color: #92B459;
}
a:active.hpb-parts-blist-style{
    color: #92B459;
}

/*--------------------------------------------------------
  ユーザー設定スタイル
--------------------------------------------------------*/

/*--------------------------------------------------------
  Moreボタン
--------------------------------------------------------*/
.btnMore01{
  display: inline-block;
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #043673;
  border: 2px solid #043673;
  padding: 1em 2em;
  font-weight: bold;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-family: "Noto Sans Japanese";
}

.btnMore01:hover{
  background: #ffffff;
  color: #043673;
}

.btnMore02{
  display: inline-block;
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #a20206;
  border: 2px solid #a20206;
  padding: 1em 2em;
  font-weight: bold;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-family: "Noto Sans Japanese";
}

.btnMore02:hover{
  background: #ffffff;
  color: #a20206;
}

.btnMore03{
  display: inline-block;
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #69BD83;
  border: 2px solid #69BD83;
  padding: 1em 2em;
  font-weight: bold;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-family: "Noto Sans Japanese";
}

.btnMore03:hover{
  background: #ffffff;
  color: #69BD83;
}

.btnMore04{
  display: inline-block;
  width: 100%;
  max-width: 350px; /* ボタン幅 */
  position: relative;
  background: #008080;
  border: 2px solid #008080;
  padding: 1em 2em;
  font-weight: bold;
  color: #ffffff;
  text-decoration: none;
  text-align: center;
  font-family: "Noto Sans Japanese";
}

.btnMore04:hover{
  background: #ffffff;
  color: #008080;
}

/*--------------------------------------------------------
  横並び
--------------------------------------------------------*/
.box{
	width: 200px;
	height: 200px;
	float: left;
	background-color: #BBBBBB;
	margin-top: 10px;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 10px;
}
.box2{
	width: 400px;
	height: 200px;
	float: left;
	background-color: #C7EDD4;
	margin-top: 10px;
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 20px;
	border-top-left-radius: 20px 20px;
	border-top-right-radius: 20px 20px;
	border-bottom-right-radius: 20px 20px;
	border-bottom-left-radius: 20px 20px;
	text-align: center;
}

/*--------------------------------------------------------
  点線
--------------------------------------------------------*/
.lineDot{
	border: none;
	border-top: 2px dashed white;
}
/*--------------------------------------------------------
  数字で見るデータアイコン
--------------------------------------------------------*/
.flexbox{
	display:flex;
	justify-content:center;
	width:90%;
	column-gap:10px;
	row-gap:15px;
	flex-wrap:wrap;
}
.f-item{
	background-color: #F5F5F5;
	width:calc(100%/5);
}
.material-symbols-outlined{
  font-size: 48px;
  font-variation-settings:
  'FILL' 0,
  'wght' 400,
  'GRAD' 0,
  'opsz' 48
}
#icon48{
  font-size: 48px;
  font-variation-settings:
  'opsz' 48
}
/*--------------------------------------------------------
  アンダーライン
--------------------------------------------------------*/
.underline {
  background: linear-gradient(transparent 40%, #CEC5F0 60%);
}
.underline-b {
  background: linear-gradient(transparent 40%, #D3DEF1 60%);
}
.underline-r {
  background: linear-gradient(transparent 40%, #F2D9D5 60%);
}
.underline-g {
  background: linear-gradient(transparent 40%, #CCE7D3 60%);
}
/*--------------------------------------------------------
  youtube
--------------------------------------------------------*/
.youtube{
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe{
  width: 100%;
  height: 100%;
}
/*--------------------------------------------------------
  画像リンク
--------------------------------------------------------*/
.image_link{
  display:block;
}
.image_link img{
  transition:0.3s;
  display:block;
  width:300;
}
.image_link:hover img{
  opacity:0.6;
}
/*--------------------------------------------------------
  カッコ
--------------------------------------------------------*/
.emphasis_design1 span {
  position: relative;
  padding: 1em;
  margin: 1em;
}
.emphasis_design1 span::before,
.emphasis_design1 span::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.emphasis_design1 span::before {
  border-left: solid 3px #4d9bc1;
  border-top: solid 3px #4d9bc1;
  top: 0;
  left: 0;
}
.emphasis_design1 span::after {
  border-right: solid 3px #4d9bc1;
  border-bottom: solid 3px #4d9bc1;
  bottom: 0;
  right: 0;
}
.emphasis_design2 span {
  position: relative;
  padding: 1em;
  margin: 1em;
}
.emphasis_design2 span::before,
.emphasis_design2 span::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.emphasis_design2 span::before {
  border-left: solid 3px #a20206;
  border-top: solid 3px #a20206;
  top: 0;
  left: 0;
}
.emphasis_design2 span::after {
  border-right: solid 3px #a20206;
  border-bottom: solid 3px #a20206;
  bottom: 0;
  right: 0;
}
.emphasis_design3 span {
  position: relative;
  padding: 1em;
  margin: 1em;
}
.emphasis_design3 span::before,
.emphasis_design3 span::after {
  position: absolute;
  width: 20px;
  height: 30px;
  content: '';
}
.emphasis_design3 span::before {
  border-left: solid 3px #66a300;
  border-top: solid 3px #66a300;
  top: 0;
  left: 0;
}
.emphasis_design3 span::after {
  border-right: solid 3px #66a300;
  border-bottom: solid 3px #66a300;
  bottom: 0;
  right: 0;
}

/*--------------------------------------------------------
  タイトルロゴ
--------------------------------------------------------*/
.heading-b {
	position: relative;
	padding-top: 40px;
	padding-bottom: 0px;
	font-size: 20px;
	text-align: center;
}

.heading-b span {
	position: relative;
	z-index: 2;
}

.heading-b::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 70%;
	transform: translateX(-50%);
	color: rgba(63,169,217,0.2);
	font-size: 80px;
	font-style: italic;
}
.heading-r {
	position: relative;
	padding-top: 40px;
	padding-bottom: 0px;
	font-size: 20px;
	text-align: center;
}

.heading-r span {
	position: relative;
	z-index: 2;
}

.heading-r::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 70%;
	transform: translateX(-50%);
	color: rgba(217,73,63,0.2);
	font-size: 80px;
	font-style: italic;
}
.heading-g {
	position: relative;
	padding-top: 40px;
	padding-bottom: 0px;
	font-size: 20px;
	text-align: center;
}

.heading-g span {
	position: relative;
	z-index: 2;
}

.heading-g::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 70%;
	transform: translateX(-50%);
	color: rgba(73,192,114,0.2);
	font-size: 80px;
	font-style: italic;
}
.heading-p {
	position: relative;
	padding-top: 40px;
	padding-bottom: 0px;
	font-size: 20px;
	text-align: center;
}

.heading-p span {
	position: relative;
	z-index: 2;
}

.heading-p::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 70%;
	transform: translateX(-50%);
	color: rgba(174,73,192,0.2);
	font-size: 80px;
	font-style: italic;
}
.heading-y {
	position: relative;
	padding-top: 40px;
	padding-bottom: 0px;
	font-size: 20px;
	text-align: center;
}

.heading-y span {
	position: relative;
	z-index: 2;
}

.heading-y::before {
	content: attr(data-en);
	position: absolute;
	top: -20px;
	left: 70%;
	transform: translateX(-50%);
	color: rgba(192,144,73,0.2);
	font-size: 80px;
	font-style: italic;
}