@charset "utf-8";
/***************************************************
information
  filename : button_parts.css;
***************************************************/

/*======== button_parts.css ========*/
/************************************ ボタン要素 ************************************/

/* ** buttonBasic start ** */
/****************** 共通設定  ******************/
.BtM {}
.BtM button,
.BtM a,
.BtM span {
	border-radius: var(--BtM-rod);-webkit-border-radius: var(--BtM-rod);-moz-border-radius: var(--BtM-rod);
	position: relative;
	text-align: center;
	text-decoration:none;
	display:block;
	font-weight:bold;
}
.BtM button.next::after,
.BtM a.next::after,
.BtM span.next::after {
	position: absolute;
	top: 50%;
	right: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
}
.BtM button.back::after,
.BtM a.back::after,
.BtM span.back::after {
	position: absolute;
	top: 50%;
	left: .2em;
	content: '';
	margin-top: -5px;
	border: 7px solid transparent;
	border-top-width: 5px;
	border-bottom-width: 5px;
	transform: rotate(180deg);
}
.BtM span.next::after,
.BtM span.back::after {filter: alpha(opacity=40);-moz-opacity:0.40;opacity:0.40;}

.BtM button:hover,
.BtM a:hover {filter: alpha(opacity=75);-moz-opacity:0.75;opacity:0.75;text-decoration:none;}
.BtM span {filter: alpha(opacity=35);-moz-opacity:0.35;opacity:0.35;text-decoration:none;}

 /* ポップアップで一つしかボタンを配置しない時の親枠 */
.BtM.popupSglBt {width: var(--popupSglBt-size);margin-left: auto;margin-right: auto;}

/* グラデボタン矢印（デフォルト） */
.BtM button.whBT.next::after,
.BtM a.whBT.next::after,
.BtM span.whBTN.next::after {border-left-color:  var(--bt-w-txt);}
.BtM button.whBT.back::after,
.BtM a.whBT.back::after,
.BtM span.whBTN.back::after {border-right-color: var(--bt-w-txt);}

/****** ボタン共通指定 ******/
span.blBTN,
span.grBTN,
span.orBTN,
span.rdBTN,
span.bkBTN {filter: alpha(opacity=40);-moz-opacity:0.40;opacity:0.40;}

/*** Flex対応 ***/
/* 横並びボタン */
.flexBtM {display: flex;justify-content: space-between;}
.flexBtM p {width: 100%;padding-right: 0.4rem;}
.flexBtM p:last-child {padding-left: 0.4rem;padding-right: 0;}

/****************** カラー指定  ******************/
/* グラデボタン白 */
a.whBT,
button.whBT,
span.whBTN {
	background: var(--bt-w);/* 背景色 */
	border: var(--bt-w-brd);/* ボーダー指定 */
	color: var(--bt-w-txt);/* テキスト色 */
	box-shadow: var(--bt-w-sd);/* 背景影色 */
}
/* グラデボタン青 */
a.blBT,
button.blBT,
span.blBTN {
	background: var(--bt-bl);/* 背景色 */
	border: var(--bt-bl-brd);/* ボーダー指定 */
	color: var(--bt-bl-txt);/* テキスト色 */
	box-shadow: var(--bt-bl-sd);/* 背景影色 */
}
/* グラデボタン緑 */
a.grBT,
button.grBT,
span.grBTN {
	background: var(--bt-gr);/* 背景色 */
	border: var(--bt-gr-brd);/* ボーダー指定 */
	color: var(--bt-gr-txt);/* テキスト色 */
	box-shadow: var(--bt-gr-sd);/* 背景影色 */
}
/* グラデボタン橙 */
a.orBT,
button.orBT,
span.orBTN {
	background: var(--bt-or);/* 背景色 */
	border: var(--bt-or-brd);/* ボーダー指定 */
	color: var(--bt-or-txt);/* テキスト色 */
	box-shadow: var(--bt-or-sd);/* 背景影色 */
}
/* グラデボタン赤 */
a.rdBT,
button.rdBT,
span.rdBTN {
	background: var(--bt-rd);/* 背景色 */
	border: var(--bt-rd-brd);/* ボーダー指定 */
	color: var(--bt-rd-txt);/* テキスト色 */
	box-shadow: var(--bt-rd-sd);/* 背景影色 */
}
/* グラデボタン黒 */
a.bkBT,
button.bkBT,
span.bkBTN {
	background: var(--bt-bk);/* 背景色 */
	border: var(--bt-bk-brd);/* ボーダー指定 */
	color: var(--bt-bk-txt);/* テキスト色 */
	box-shadow: var(--bt-bk-sd);/* 背景影色 */
}
a.whBT:hover,
button.whBT:hover,
a.blBT:hover,
button.blBT:hover,
a.grBT:hover,
button.grBT:hover,
a.orBT:hover,
button.orBT:hover,
a.rdBT:hover,
button.rdBT:hover,
a.bkBT:hover,
button.bkBT:hover {filter: alpha(opacity=65);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}

/* ** buttonBasic end ** */

/* ** button0101 start ** */
/*** 0101: 前後ボタン共通・次へ進むボタン ***/

/* 前後ボタン共通指定 */
.sbmBNBt,
.sbmNxBt,
.sbmCpBt,
.closePuBt,
.canPuBt {
	margin: 1.2rem auto;
	padding: 2.0rem 1.0rem;
	width: 100%;
	font-size: clamp(1.4rem, 1.8vw, 1.6rem);
	box-shadow: none;
}
/* 前に戻るボタン */
.sbmBNBt {
	color: var(--sbmBNBt-txt); /* テキスト色 */
	background: var(--sbmBNBt-bg); /* 背景色 */
	border: var(--sbmBNBt-brd); /* ボーダー指定 */
}
.BtM button.sbmBNBt.next::after,
.BtM a.sbmBNBt.next::after,
.BtM span.sbmBNBt.next::after,
.BtM button.sbmBNBt.back::after,
.BtM a.sbmBNBt.back::after,
.BtM span.sbmBNBt.back::after {border-left-color: var(--sbmBNBt-txt);}

/* 次へ進むボタン */
.sbmNxBt {
	color: var(--sbmNxBt-txt); /* テキスト色 */
	background: var(--sbmNxBt-bg); /* 背景色 */
	border: var(--sbmNxBt-brd); /* ボーダー指定 */
}
.BtM button.sbmNxBt.next::after,
.BtM a.sbmNxBt.next::after,
.BtM span.sbmNxBt.next::after,
.BtM button.sbmNxBt.back::after,
.BtM a.sbmNxBt.back::after,
.BtM span.sbmNxBt.back::after {border-left-color: var(--sbmNxBt-txt);}
/* ** button0101 end ** */

/* ** button0102 start ** */
/* 登録・購入完了ボタン */
.sbmCpBt {
	color: var(--sbmCpBt-txt); /* テキスト色 */
	background: var(--sbmCpBt-bg); /* 背景色 */
	border: var(--sbmCpBt-brd); /* ボーダー指定 */
}
/* ** button0102 end ** */

/* ** button0103 start ** */
/* ウインドウを閉じるボタン */
.closePuBt {
	color: var(--closePuBt-txt); /* テキスト色 */
	background: var(--closePuBt-bg); /* 背景色 */
	border: var(--closePuBt-brd); /* ボーダー指定 */
}
/* ** button0103 end ** */

/* ** button0104 start ** */
/* 削除・キャンセル等ボタン */
.canPuBt {
	color: var(--canPuBt-txt); /* テキスト色 */
	background: var(--canPuBt-bg); /* 背景色 */
	border: var(--canPuBt-brd); /* ボーダー指定 */
}
/* ** button0104 end ** */

/* ** button0105 start ** */
/* 前後ボタン共通ボタン（小サイズ） */
/*** Flex対応 ***/
.flexSBtM {width:100%;display: flex;justify-content: flex-start;}
.flexSBtM p {width: 25%;}
.flexSBtM p:last-child {margin-left: auto;}/*Flex最後だけ右 */
@media screen and (max-width: 600px) {
	:root {
	  .flexSBtM p {width: 45%;}
	}
}
.sbmSBNBt {
	margin: 1.0rem auto;
	padding: 1.0rem;
	width: 100%;
	font-size: 1.4rem;
	color: var(--sbmSBNBt-txt); /* テキスト色 */
	background: var(--sbmSBNBt-bg); /* 背景色 */
	border: var(--sbmSBNBt-brd); /* ボーダー指定 */
	box-shadow: var(--sbmSBNBt-sd); /* 背景影色 */
}
.BtM button.sbmSBNBt.next::after,
.BtM a.sbmSBNBt.next::after,
.BtM span.sbmSBNBt.next::after,
.BtM button.sbmSBNBt.back::after,
.BtM a.sbmSBNBt.back::after,
.BtM span.sbmSBNBt.back::after {border-left-color: var(--sbmSBNBt-txt);}
/* ** button0105 end ** */

/* ** button0106 start ** */
/* ネクストバックボタン */
.NBLink {margin: 0 auto;padding: 0;}
.NBBack {float: left;width: var(--NBLinkBt-pwidth);}
.NBNext {float: right;width: var(--NBLinkBt-pwidth);}
.NBLinkBt {
	margin: 1.2rem auto;
	padding: 2.0rem 1.0rem;
	width: 100%;
	font-size: clamp(1.4rem, 1.8vw, 1.6rem);
	box-shadow: none;
	color: var(--NBLinkBt-txt); /* テキスト色 */
	background: var(--NBLinkBt-bg); /* 背景色 */
	border: var(--NBLinkBt-brd); /* ボーダー指定 */
}
.BtM button.NBLinkBt.next::after,
.BtM a.NBLinkBt.next::after,
.BtM span.NBLinkBt.next::after,
.BtM button.NBLinkBt.back::after,
.BtM a.NBLinkBt.back::after,
.BtM back.NBLinkBt.next::after {border-left-color:  var(--NBLinkBt-txt);}
/* ** button0106 end ** */

/* ** button0107 start ** */
/* 詳細から一覧へ戻るボタン(基本) */
.DetListBkBt {width: var(--ListBkBt-size);margin: 1.5rem auto;}
.ListBkBt {
	margin: 0 auto;
	padding: 2.0rem 1.0rem;
	width: 100%;
	font-size: clamp(1.4rem, 1.8vw, 1.6rem);
	box-shadow: none;
	color: var(--ListBkBt-txt); /* テキスト色 */
	background: var(--ListBkBt-bg); /* 背景色 */
	border: var(--ListBkBt-brd); /* ボーダー指定 */
	box-shadow: var(--ListBkBt-sd); /* 背景影色 */
}
a.ListBkBt:link,
a.ListBkBt:visited,
a.ListBkBt:active {color: var(--ListBkBt-txt);}
.BtM button.ListBkBt.next::after,
.BtM a.ListBkBt.next::after,
.BtM span.ListBkBt.next::after,
.BtM button.ListBkBt.back::after,
.BtM a.ListBkBt.back::after,
.BtM back.ListBkBt.next::after {border-left-color: var(--ListBkBt-txt);}
/* ** button0107 end ** */

/* ** button0201 start ** */
/*** 0201: ファイルアップロード・削除ボタン・参照ボタン ***/
/* ファイルアップロード・削除ボタン */
.fileUpBT a,
.fileDelBT a,
.fileUpBox label {
	display: block;
	text-decoration: none;
	text-align: center;
	margin: 0;
	padding: 1.0rem 1.5rem;
	width: var(--fileUpBT-size);
	font-size: 1.4rem;
	font-weight: bold;
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);
}
.fileUpBT a {
	color: var(--fileUpBT-txt); /* テキスト色 */
	border: var(--fileUpBT-brd); /* ボーダー指定 */
	box-shadow: var(--fileUpBT-sd); /* 背景影色 */
	background: var(--fileUpBT-bg); /* 背景色 */
}
.fileDelBT a {
	color: var(--fileDelBT-txt); /* テキスト色 */
	border: var(--fileDelBT-brd); /* ボーダー指定 */
	box-shadow: var(--fileDelBT-sd); /* 背景影色 */
	background: var(--fileDelBT-bg); /* 背景色 */
}
.fileUpBT a:hover,
.fileDelBT a:hover {filter: alpha(opacity=65);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}
/* ** button0201 end ** */

/* ** button0202 start ** */
/* ファイル参照ボタン */
.fileUpBox label {
	color: var(--fileUpBT-txt); /* テキスト色 */
	background: var(--fileUpBT-bg); /* 背景色 */
	border: var(--fileUpBT-brd); /* ボーダー指定 */
	box-shadow: var(--fileUpBT-sd); /* 背景影色 */
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);
    cursor: pointer;
}
/* ファイルアップロードの参照ボタン・ファイル選択エリア */
.fileUpBox {
	margin: 0.5rem auto;
	padding: 0.8rem;
	border-radius: var(--BgBox-rod);-webkit-border-radius: var(--BgBox-rod);-moz-border-radius: var(--BgBox-rod);
	border: var(--app-BgBox-brd); /* ボーダー指定 */
	background: var(--app-BgBox-bg); /* 背景色 */
}
.fileUpBox dl {
	display: flex;
	margin: 0 auto;
	padding: 1.0rem 0;
	font-size: 1.4rem;
	font-weight: bold;
	color: var(--fileUpBox-txt); /* テキスト色 */
	align-items: center;
}
.fileUpBox .InputForm dt {width:25%;padding: 0.5rem;}
.fileUpBox .InputForm dd {width:75%;padding: 0;display: flex;align-items: center;}
.fileUpBox input[type="file"] {display: none;}
.fileUpBox figure img {width: 100%;}
.fileUpBox .fileName {padding: 0 0 0 1.5rem;}

/* ファイルアップロード後表示 */
.FileUpImg {margin: 0 auto;padding: 0px;}
.FileUpImg img {width:200px;border-radius: 2px;} /* 幅指定 */
.FileUpName {
	margin: 0 auto;
	padding: 0.5rem 0 1.5rem 0;
	font-size: 1.4rem;
	text-align: left;
}
.FileUpName a {color: var(--font-fileUpBox);}
.FileUpImg a:hover {filter: alpha(opacity=65);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}
@media screen and (max-width: 480px) {
	.fileUpBox dl {display: block;}
	.fileUpBox .InputForm dt,
	.fileUpBox .InputForm dd {width:100%;}
}
/* ** button0202 end ** */

/* ** button0301 start ** */
/*** 0301: 住所検索ボタン・検索・検索条件クリア・各種データ呼び出しボタン ***/
.callBox,
.passwordBox,
.zipdBox {display: flex;align-items: center;}

@media screen and (max-width: 480px) {
	.popupSearchBox .zipdBox {display: block;}
	.popupSearchBox .zipdBox .SearchBT {margin: 0.8rem 0;}
}
.SearchBT a,
.SearchBT span {
	display: block;
	text-decoration: none;
	text-align: center;
	margin: 0 0.8rem;
	padding: 0.8em 1.5rem;
	font-size: clamp(1.2rem, 1.0vw, 1.4rem);
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod); /* 角丸 */
	box-shadow: var(--SearchBT-sd); /* 背景影色 */
}
/* 検索ボタン共通（基本） */
.SearchBT a {
	text-decoration: none;
	font-weight: bold;
	background: var(--SearchBT-bg); /* 背景色 */
	color: var(--SearchBT-txt); /* テキスト色 */
	border: var(--SearchBT-brd); /* ボーダー指定 */
}
/* 検索ボタン共通（ボタン押下禁止） */
.SearchBT span {
	text-decoration: none;
	font-weight: bold;
	background: var(--SearchBTNo-bg); /* 背景色 */
	color: var(--SearchBTNo-txt); /* テキスト色 */
	border: var(--SearchBTNo-brd); /* ボーダー指定 */
}
/* 検索ボタン共通（検索クリア） */
.SearchBT a.clear_btn {
	color: var(--clearBtn-txt); /* テキスト色 */
	background: var(--clearBtn-bg); /* 背景色 */
	border: var(--clearBtn-brd); /* ボーダー指定 */
}
.SearchBT a:hover {filter: alpha(opacity=65);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}
/* ** button0301 end ** */

/* ** button0401 start ** */
/*** 0401: ページトップボタン ***/
.pagetop {display: none;position: fixed;bottom: 30px;right: 10px;}
.spFootNavi .pagetop {display: none;position: fixed;bottom: 110px;right: 10px;}
.pagetop a {
	display: block;
	padding: 2.0rem 1.0rem;
	text-align: center;
	text-decoration: none;
	border-radius: var(--pagetop-rod);-webkit-border-radius: var(--pagetop-rod);-moz-border-radius: var(--pagetop-rod); /* 角丸 */
	z-index: 9990;
	color: var(--app-pagetop-txt); /* テキスト色 */
	background-color: var(--app-pagetop-cr); /* 背景色 */
}
.pagetop a {font-size: 1.2rem;font-weight: bold;}
.pagetop a:hover {filter: alpha(opacity=65);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}

/* デザインタイプ01 */
.pagetop_dezpt01 .pagetop {bottom: 0;right: 0;text-indent: -9999px;}
.pagetop_dezpt01 .spFootNavi .pagetop {bottom: 0;right: 0;text-indent: -9999px;}
.pagetop_dezpt01 .pagetop a {
	position: relative;
	width: 65px;
	height: 65px;
	transition: opacity .6s ease;
	border-radius: 0;-webkit-border-radius: 0;-moz-border-radius: 0; /* 角丸 */
}
.pagetop_dezpt01 .pagetop a::before {
	position: absolute;
	top: 7px;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 14px;
	height: 14px;
	margin: auto;
	content: '';
	transform: rotate(-45deg);
	border-top: 1px solid var(--app-pagetop-txt);
	border-right: 1px solid var(--app-pagetop-txt);
}
@media screen and (max-width:767px) {
	.pagetop_dezpt01 .pagetop a {width: 45px;height: 45px;}
	.pagetop_dezpt01 .pagetop a::before {top: 5px;width: 10px;height: 10px;}
}
/* デザインタイプ02 */
.pagetop_dezpt02 .pagetop {bottom: 10px;right: 10px;text-indent: -9999px;}
.pagetop_dezpt02 .spFootNavi .pagetop {bottom: 0;right: 0;text-indent: -9999px;}
.pagetop_dezpt02 .pagetop a {
	position: relative;
	width: 65px;
	height: 65px;
	transition: opacity .6s ease;
	border-radius: 100%;
}
.pagetop_dezpt02 .pagetop a::before {
	position: absolute;
	top: 7px;
	right: 0;
	bottom: 0;
	left: 0;
	display: block;
	width: 14px;
	height: 14px;
	margin: auto;
	content: '';
	transform: rotate(-45deg);
	border-top: 2px solid var(--app-pagetop-txt);
	border-right: 2px solid var(--app-pagetop-txt);
}
@media screen and (max-width:767px) {
	.pagetop_dezpt02 .pagetop a {width: 45px;height: 45px;}
	.pagetop_dezpt02 .pagetop a::before {top: 5px;width: 10px;height: 10px;}
}
/* ** button0401 end ** */

/* ** button0501 start ** */
/*** 0501: コメントに関するボタン ***/
/* 登録ボタン共通 */
.commentRegBt,
.commentMemBt {
	margin: 0;
	padding: 1.0rem;
	width: 100%;
	font-size: clamp(1.4rem, 1.2vw, 1.6rem);
}
.commentEditBt,
.commentDelBt,
.commentResBt,
.commentRepBt {
	margin: 0;
	padding: 0.8rem 0.2rem;
	width: 100%;
	font-size: clamp(1.4rem, 1.6vw, 1.6rem);
}
@media screen and (max-width: 600px) {
	.commentEditBt,.commentDelBt,.commentResBt,.commentRepBt {padding: 1.2rem 0.2rem;}
}
/* コメント登録ボタン */
.commentRegBt {
	color: var(--commentRegBt-txt); /* テキスト色 */
	background: var(--commentRegBt-bg); /* 背景色 */
	border: var(--commentRegBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentRegBt-sd); /* 背景影色 */
}
/* ** button0501 end ** */

/* ** button0502 start ** */
/* コメント時会員登録促進ボタン */
.commentMemBt {
	color: var(--commentMemBt-txt); /* テキスト色 */
	background: var(--commentMemBt-bg); /* 背景色 */
	border: var(--commentMemBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentMemBt-sd); /* 背景影色 */
}
/* ** button0502 end ** */

/* ** button0503 start ** */
/* コメント編集ボタン */
.commentEditBt {
	color: var(--commentEditBt-txt); /* テキスト色 */
	background: var(--commentEditBt-bg); /* 背景色 */
	border: var(--commentEditBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentEditBt-sd); /* 背景影色 */
}
/* ** button0503 end ** */

/* ** button0504 start ** */
/* コメント削除ボタン */
.commentDelBt {
	color: var(--commentDelBt-txt); /* テキスト色 */
	background: var(--commentDelBt-bg); /* 背景色 */
	border: var(--commentDelBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentDelBt-sd); /* 背景影色 */
}
/* ** button0504 end ** */

/* ** button0505 start ** */
/* コメント返信ボタン */
.commentResBt {
	color: var(--commentResBt-txt); /* テキスト色 */
	background: var(--commentResBt-bg); /* 背景色 */
	border: var(--commentResBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentResBt-sd); /* 背景影色 */
}
/* ** button0505 end ** */

/* ** button0506 start ** */
/* コメント通報ボタン */
.commentRepBt {
	color: var(--commentRepBt-txt); /* テキスト色 */
	background: var(--commentRepBt-bg); /* 背景色 */
	border: var(--commentRepBt-brd); /* ボーダー指定 */
	box-shadow: var(--commentRepBt-sd); /* 背景影色 */
}
/* ** button0506 end ** */

/* ** button0601 start ** */
/*** 0601: 地図や詳細画面等へ外部リンクへ遷移する為のリンクボタン ***/
a.LinkShtBt {
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);
	margin: 0 2.0rem;
	padding: 0.2rem 1.0rem;
	width: 100%; /* ボタンサイズ */
	font-size: var(--font-LinkShtBt);/* フォントサイズ */
	color: var(--LinkShtBt-txt); /* テキスト色 */
	background: var(--LinkShtBt-bg); /* 背景色 */
	border: var(--LinkShtBt-brd); /* ボーダー指定 */
	box-shadow: var(--LinkShtBt-sd); /* 背景影色 */
}
a.LinkShtBt:hover {filter: alpha(opacity=75);-moz-opacity:0.75;opacity:0.75;text-decoration:none;}
/* ** button0601 end ** */

/* ** button0602 start ** */
/*** 0602: コンテンツ詳細等への遷移ボタン ***/

/* 大きいサイズボタン */
.conDetBtW {
	margin: 2.0rem auto;
	padding: 1.2rem;
	width: 80%;
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	color: var(--conDetBt-txt); /* テキスト色 */
	background: var(--conDetBt-bg); /* 背景色 */
	border: var(--conDetBt-brd); /* ボーダー指定 */
	box-shadow: var(--conDetBt-sd); /* 背景影色 */
}
a.conDetBtW:link,
a.conDetBtW:visited,
a.conDetBtW:active {color: var(--conDetBt-txt);}

.BtM button.conDetBtW.next::after,
.BtM a.conDetBtW.next::after,
.BtM span.conDetBtW.next::after,
.BtM button.conDetBtW.back::after,
.BtM a.conDetBtW.back::after,
.BtM back.conDetBtW.next::after {border-left-color:  var(--conDetBt-txt);}

/* 中サイズボタン */
.conDetBtM {
	margin: 2.0rem auto;
	padding: 1.2rem;
	width: 60%;
	font-size: clamp(1.6rem, 1.6vw, 1.6rem);
	color: var(--conDetBt-txt); /* テキスト色 */
	background: var(--conDetBt-bg); /* 背景色 */
	border: var(--conDetBt-brd); /* ボーダー指定 */
	box-shadow: var(--conDetBt-sd); /* 背景影色 */
}
a.conDetBtM:link,
a.conDetBtM:visited,
a.conDetBtM:active {color: var(--conDetBt-txt);}

.BtM button.conDetBtM.next::after,
.BtM a.conDetBtM.next::after,
.BtM span.conDetBtM.next::after,
.BtM button.conDetBtM.back::after,
.BtM a.conDetBtM.back::after,
.BtM back.conDetBtM.next::after {border-left-color:  var(--conDetBt-txt);}

/* 小サイズボタン */
.conDetBtS {
	margin: 2.0rem auto;
	padding: 1.2rem;
	width: var(--conDetBtS-size); /* ボタンサイズ */
	font-size: clamp(1.6rem, 1.6vw, 1.4rem);
	color: var(--conDetBt-txt); /* テキスト色 */
	background: var(--conDetBt-bg); /* 背景色 */
	border: var(--conDetBt-brd); /* ボーダー指定 */
	box-shadow: var(--conDetBt-sd); /* 背景影色 */
}
a.conDetBtS:link,
a.conDetBtS:visited,
a.conDetBtS:active {color: var(--conDetBt-txt);}

.BtM button.conDetBtS.next::after,
.BtM a.conDetBtS.next::after,
.BtM span.conDetBtS.next::after,
.BtM button.conDetBtS.back::after,
.BtM a.conDetBtS.back::after,
.BtM back.conDetBtS.next::after {border-left-color:  var(--conDetBt-txt);}

@media screen and (max-width: 600px) {
	.conDetBtW,
	.conDetBtM,
	.conDetBtS {width: 100%;}
}
/* ** button0602 end ** */

/* ** button0701 start ** */
/*** 0701: オープンクローズボタン ***/

/* オープンクローズエリア(主に検索・検索結果の開閉) */
.searchOpCl {
	margin: 1.0em auto 0 auto;
	padding: 0.8rem 1.0rem;
	border-radius: var(--BgBox-rod);-webkit-border-radius: var(--BgBox-rod);-moz-border-radius: var(--BgBox-rod); /* 角丸 */
	color: var(--searchOpCl-txt); /* テキスト色 */
	background: var(--searchOpCl-bg); /* 背景色 */
	border: var(--searchOpCl-brd); /* ボーダー指定 */
	box-shadow: var(--searchOpCl-sd); /* 背景影色 */
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	font-weight: bold;
}
.searchOpCl .OpClTi {width: 100%;}
.searchOpCl .OpClBt {width: 10%;}

@media screen and (max-width: 600px) {
	.searchOpCl .OpClBt {width: 20%;}
}
/* オープンクローズボタンボタン */
.searchOpCl .slide_btn {
	margin: 0;
	padding: 0.8rem 1.0rem;
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod); /* 角丸 */
	width: 100%;
	font-size: clamp(1.0rem, 1.0vw, 1.2rem);
	color: var(--slideBtn-txt); /* テキスト色 */
	background: var(--slideBtn-bg); /* 背景色 */
	border: var(--slideBtn-brd); /* ボーダー指定 */
	box-shadow: var(--slideBtn-sd); /* 背景影色 */
}
/* ** button0701 end ** */

/* ** button0702 start ** */
/* オープンクローズエリア(主にラジオ・チェックボックスの開閉) */
.htibrd {
	width: 100%;
	margin: 0.5rem auto;
	padding: 0.3em 0.3em 0.3em 0.5em;
	color: var(--htibrd-txt); /* テキスト色 */
	background: var(--htibrd-bg); /* 背景色 */
	border-bottom: var(--htibrd-brd); /* ボーダー指定 */
}
.htibrd .htibrdTi {
	width: 100%;
	font-size: clamp(1.2rem, 1.0vw, 1.4rem);
}
/* オープンクローズボタンボタン(タイトル横) */
.htibrd a:link.slide_btn,
.htibrd .slide_btn {
	margin: 0;
	padding: 0.8rem 1.0rem;
	border-radius: var(--htibrd-slideBtn-rod);-webkit-border-radius: var(--htibrd-slideBtn-rod);-moz-border-radius: var(--htibrd-slideBtn-rod); /* 角丸 */
	font-size: 1.0rem;
	color: var(--htibrd-slideBtn-txt); /* テキスト色 */
	background: var(--htibrd-slideBtn-bg); /* 背景色 */
	border: var(--htibrd-slideBtn-brd); /* ボーダー指定 */
	box-shadow: var(--htibrd-slideBtn-sd); /* 背景影色 */
}
.htibrd a:link.slide_btn:hover,
.htibrd .slide_btn:hover {filter: alpha(opacity=75);-moz-opacity:0.75;opacity:0.75;text-decoration: none;}
/* ** button0702 end ** */

/* ** button0703 start ** */
/* オープンクローズボタンボタン(ツリー) */
.TreeBox .child {
	display: none;
	border-top: var(--htibrd-brd);
}
.TreeBox a.menu {
	float: right;
	display: block;
	position: relative;
}
.TreeBox a.menu:hover {}
.TreeBox .menu:after {
	position: absolute;
	top: 0;
	right: 2.0rem;
	margin-top: -0.8rem;
	content: '>';
	font-size: 1.4rem;
	font-weight: bold;
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-moz-transition: all, 0.25s, linear;
	-o-transition: all, 0.25s, linear;
	-webkit-transition: all, 0.25s, linear;
	transition: all, 0.25s, linear;
	padding: 0.8rem 0.5rem;
	border-radius: 0.2rem;-webkit-border-radius: 0.2rem;-moz-border-radius: 0.2rem; /* 角丸 */
	cursor: pointer;
	color: var(--htibrd-slideBtn-txt); /* テキスト色 */
	background: var(--htibrd-slideBtn-bg); /* 背景色 */
}
.TreeBox .menu.active:after {
	-moz-transform: translate(0, 50%);
	-ms-transform: translate(0, 50%);
	-webkit-transform: translate(0, 50%);
	transform: translate(0, 50%);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
@media screen and (max-width: 600px) {
	.htibrd .LayoutL {float: left;}
	.htibrd .LayoutR {float: right;}
}
/* ** button0703 end ** */

/* ** button0801 start ** */
/*** 0801: タブメニュー ***/
.tab-munu {display: flex;flex-wrap: wrap;max-width: 100%;gap: 0 0.1rem;align-items: center;}
.tab-munu > label {
	flex: 1 1;
	order: -1;
	min-width: 70px;
	margin: 1.0rem auto;
	padding: 1.0rem 0.5rem 1.0rem;
	font-size:clamp(1.4rem, 1.4vw, 1.6rem);
	font-weight: bold;
	text-align: center;
	cursor: pointer;
}
.tab-munu > label:hover {opacity: .8;}
.tab-munu input {display: none;}
.tab-munu > div {display: none;width: 100%;}
.tab-munu label:has(:checked) {opacity: 1;}
.tab-munu label:has(:checked) + div {display: block;}
.tab-munu-inn {}

/* デザインパターン(ボタン形式) */
.tab_dezpt01 .tab-munu > label {
	border-radius: var(--tab-munu-tp01-rod); /* 角丸 */
	background-color: var(--tab-munu-tp01-bg);
	color: var(--tab-munu-tp01-txt);
}
.tab_dezpt01 .tab-munu label:has(:checked) {
	background-color: var(--tab-munu-tp01-crt-bg);
	color: var(--tab-munu-tp01-crt-txt);
}
.tab_dezpt01 .tab-munu > div {padding: 1.0rem 1.0rem 1.0rem;}
.tab_dezpt01 .tab-munu-inn {}

/* デザインパターン(枠線形式) */
.tab_dezpt02 .tab-munu > label {
	border-radius: var(--tab-munu-tp02-rod); /* 角丸 */
	border-color: var(--tab-munu-tp02-brd) var(--tab-munu-tp02-brd) var(--tab-munu-tp02-brd);
	border-style: solid;
	border-width: 1px 1px 1px;
	background-color: var(--tab-munu-tp02-bg);
	color: var(--tab-munu-tp02-txt);
}
.tab_dezpt02 .tab-munu label:has(:checked) {
	border-color: var(--tab-munu-tp02-brd) var(--tab-munu-tp02-brd) var(--tab-munu-tp02-bg);
	border-style: solid;
	border-width: 1px 1px 1px;
	background-color: var(--tab-munu-tp02-bg);
	color: var(--tab-munu-tp02-txt);
}
.tab_dezpt02 .tab-munu > div {padding: 2.0rem 3.0rem 2.0rem;background-color: var(--tab-munu-tp02-bg);}
.tab_dezpt02 .tab-munu-inn {
	border-radius: var(--tab-munu-inn-tp02-rod); /* 角丸 */
	border-color: var(--tab-munu-tp02-brd) var(--tab-munu-tp02-brd) var(--tab-munu-tp02-brd);
	border-style: solid;
	border-width: 0 1px 1px;
	background-color: var(--tab-munu-tp02-bg);
}
@media screen and (max-width: 600px) {
	.tab-guide > label {font-size: 1.6rem;}
	.tab-guide > div {padding: 1.0rem 0.5rem;}
}
/* ** button0801 end ** */

/* ** button0802 start ** */
/*** 0802: ラジオボタンタブボタン ***/
.selectBt {
	margin: 2.0rem auto;
	padding: 0;
}
.selectBt ul {display: flex;}
.selectBt li {width: 100%;margin: 0;padding: 0;list-style: none;}
label.tab_item {
	display: block;
	margin: 0 0.2rem;
	padding: 1.5rem 0.5rem;
	text-align: center;
	cursor: pointer;
	color: var(--app-selectBt-a-txt); /* テキスト色（aタグ） */
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	font-weight:bold;
	background: var(--app-selectBt-a-cr); /* 背景色（aタグ） */
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);/* 角丸 */
	border: var(--app-selectBt-brd);/* ボーダー指定 */
}
label.tab_item:hover,
.selectBt input[type="radio"]:checked + label.tab_item {
	color: var(--app-selectBt-ah-txt); /* テキスト色（aタグフォーカス） */
	background: var(--app-selectBt-ah-cr); /* 背景色（aタグフォーカス） */
}
.selectBt input[type="radio"] {display: none;}
/* ** button0802 end ** */

/* ** button0901 start ** */
/*** 0901: ラジオボタン選択トグルボタン ***/
/* 基本設定 */
.radio-toggle {display: flex;}
.radio-toggle label {width: 100%;position: relative;margin: 0.5rem 0.2rem;}
.radio-toggle [type=radio] {
	-webkit-appearance: none;
	-moz-appearance: none;
	position: absolute;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0.5rem;
	outline: none;
	cursor: pointer;
}
.radio-toggle.wOnly {
	width: 100px;
	margin-left: auto;
	margin-right: auto;
}
/* appearance: none; for IE11 */
_:-ms-lang(x)::-ms-backdrop, .radio-toggle [type=radio] {visibility: hidden;}
.radio-toggle .toggle-button {z-index: 1;}
.radio-toggle :disabled + .toggle-button {cursor: not-allowed;opacity: .6;}
.toggle-button {
	display: block;
	padding: 0.7rem 2.0rem;
	border-radius: var(--app-toggle-rod);-webkit-border-radius: var(--app-toggle-rod);-moz-border-radius: var(--app-toggle-rod); /* 角丸 */
	text-align: center;
	font-weight: bold;
}
.toggle-button.wFixed {
	width: 100%;
}
.toggle-button:hover {opacity: .8;}
.toggle-button:disabled,
.radio-toggle span.unapproved_noset {cursor: not-allowed;opacity: .6;color: var(--app-toggle-txt);} /* テキスト色 */

/* ボタン装飾設定 */
.toggle-button {
	color: #fff;
	background-color: var(--app-toggle-btdef-bg); /* 背景色（デフォルト） */
}
.toggle-button {font-size: clamp(1.4rem, 1.4vw, 1.6rem);}
.radio-toggle :checked + .toggle-button.unapproved {background-color: var(--app-toggle-btunap-bg);}/* 背景色（未承認・済み） */
.radio-toggle :checked + .toggle-button.approved {background-color: var(--app-toggle-btappr-bg);}/* 背景色（承認） */

/* ** button0901 end ** */

/* ** button0902 start ** */
/*** 0902: チェックボックスボタン ***/
/*** チェックボックス選択型 ***/
.checkboxBgBt input[type=checkbox] {display: none;}

/* CHECK OFF */
.checkboxBgBt input[type="checkbox"] + span {
	font-weight:bold;
	color: var(--app-checkboxBgBt-no-txt); /* テキスト色 */
	background: var(--app-checkboxBgBt-no-cr); /* 背景色 */
}
/* CHECK ON */
.checkboxBgBt input[type="checkbox"]:checked + span {
	font-weight:bold;
	color: var(--app-checkboxBgBt-on-txt); /* テキスト色 */
	background: var(--app-checkboxBgBt-on-cr); /* 背景色 */
}
/* CHECK NO */
.checkboxBgBt input[type="checkbox"]:disabled + span {
	font-weight:bold;
	cursor:not-allowed;
	color: var(--app-checkboxBgBt-dis-txt); /* テキスト色 */
	background: var(--app-checkboxBgBt-dis-cr); /* 背景色 */
}
.checkboxBgBt input[type="checkbox"]:checked:disabled + span {
	font-weight:bold;
	cursor:not-allowed;
	color: var(--app-checkboxBgBt-dis-txt); /* テキスト色 */
	background: var(--app-checkboxBgBt-dis-cr); /* 背景色 */
}
/* lableのスタイル */
.checkboxBgBt .Bglabel {
	font-weight:bold;
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	display: block;
	height: var(--app-checkboxBgBt-size); /* ボタンサイズ */
	line-height: var(--app-checkboxBgBt-size); /* ボタンサイズ */
	cursor: pointer;
	background-repeat: no-repeat;
	border-radius: var(--app-checkboxBgBt-rod);-webkit-border-radius: var(--app-checkboxBgBt-rod);-moz-border-radius: var(--app-checkboxBgBt-rod);/* 角丸 */
	text-align: center;
}
/* チェックボックス全てをチェック */
.checkboxAllArea {
	display: flex;
	justify-content: flex-end;
}
.checkboxAll {
	font-weight:bold;
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
}
/* ** button0902 end ** */

/* ** button0903 start ** */
/*** 0903: ラジオ切り替えボタン ***/
.checkRadio {
	width: 100%;
	margin: 0 auto;
	padding: 0.5rem 0;
	display: flex;
}
/* ボタン制御 */
.checkRadio input {display: none;}
.checkRadio label{
	display: block;
	cursor: pointer;
	width: 100px;
	margin: 0;
	padding: 1.0rem 1.5rem;
	text-align: center;
	line-height: 1;
	transition: .2s;
	border-right: var(--app-checkRadiolabel-brd); /* ボーダー指定 */
	font-size: clamp(1.2rem, 1.2vw, 1.4rem);
	font-weight: bold;
}
.checkRadio label{
	color: var(--app-checkRadiolabel-txt); /* テキスト色（通常） */
	background: var(--app-checkRadiolabel-cr); /* 背景色（通常） */
}
.checkRadio label:first-of-type{
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);/* 角丸 */
}
.checkRadio label:last-of-type{
	border-radius: var(--BtM-sub-rod);-webkit-border-radius: var(--BtM-sub-rod);-moz-border-radius: var(--BtM-sub-rod);/* 角丸 */
	border-right: none; /* ボーダー指定 */
}
.checkRadio input[type="radio"]:checked + .switch-no {
	color: var(--app-checkRadiolabel-no-txt); /* テキスト色（NO） */
	background: var(--app-checkRadiolabel-no-cr); /* 背景色（NO） */
}
.checkRadio input[type="radio"]:checked + .switch-on {
	color: var(--app-checkRadiolabel-on-txt); /* テキスト色（ON） */
	background: var(--app-checkRadiolabel-on-cr); /* 背景色（ON） */
}
.checkRadio input[type="radio"]:checked + .switch-off {
	color: var(--app-checkRadiolabel-off-txt); /* テキスト色（NO） */
	background: var(--app-checkRadiolabel-off-cr); /* 背景色（NO） */
}
.checkRadio input[type="radio"]:checked + .switch-neit {
	color: var(--app-checkRadiolabel-neit-txt); /* テキスト色（どちらでもない） */
	background: var(--app-checkRadiolabel-neit-cr); /* 背景色（どちらでもない） */
}
/* ** button0903 end ** */

/* ** button1001 start ** */
/*** 1001: システム利用各種編集ボタン ***/
/* 編集ボタン基本 */
.editBt a,
.editBt button,
.editBt span {
	border-radius: var(--BtM-rod);-webkit-border-radius: var(--BtM-rod);-moz-border-radius: var(--BtM-rod);
	display:block;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	margin: 0;
	padding: 0.8rem 0.8rem;
	width: 100%;
	font-size: clamp(1.2rem, 1.0vw, 1.4rem);
}
.editBt a.crt,
.editBt a:hover {text-decoration: none;}
.editBt a,
.editBt button,
.editBt span {
	background: var(--editBt-bg); /* 背景色 */
	border: var(--editBt-brd);/* ボーダー指定 */
	color: var(--editBt-txt);/* テキスト色 */
	box-shadow: var(--editBt-sd);/* 背景影色 */
}
.editBt a:hover,
.editBt button:hover {filter: alpha(opacity=75);-moz-opacity:0.75;opacity:0.75;text-decoration:none;}
.editBt span {filter: alpha(opacity=35);-moz-opacity:0.35;opacity:0.35;text-decoration:none;}

/* ** button1001 end ** */

/* ** button1002 start ** */
/*** 1002: 検索抽出・遷移ボタン（小） ***/
.extractBtArea {margin: 1.5rem auto;display: flex;justify-content: flex-end;gap: 0 0.4rem;}/* 抽出・遷移ボタンエリア */
.extractBtArea ul {display: flex;justify-content: flex-end;list-style: none;gap: 0.4rem 0.4rem;flex-wrap: wrap;}/* 抽出・遷移ボタン設定 */
.extractBtArea li {margin: 0;text-align: center;}
.extractBtArea li {width: 100px;} /* 基本横幅サイズ */
.extractBtArea li.extsizeM {width: 150px;} /* 横幅Mサイズ */
.extractBtArea li.extsizeW {width: 200px;} /* 横幅ワイドサイズ */
.extractBtArea a,
.extractBtArea span {
	width: 100%;
	text-align: center;
	display: block;
	padding: 0.8rem 0.5rem;
	color: var(--app-extractBtArea-txt); /* テキスト色 */
	background: var(--app-extractBtArea-cr); /* 背景色 */
	border-radius: var(--app-extractBtArea-rod);-webkit-border-radius: var(--app-extractBtArea-rod);-moz-border-radius: var(--app-extractBtArea-rod); /* 角丸 */
	font-size: clamp(1.4rem, 1.4vw, 1.4rem);
	font-weight: bold;
}
.extractBtArea span {opacity: 0.3;}

.extractBtArea a.crt {background: var(--app-extractBtArea-cr-crt);} /* カレント背景色 */
.extractBtArea a:hover {opacity: 0.6; filter: alpha(opacity = 60);text-decoration: none;}

.extractBtArea ul.scrollBar {}

@media screen and (max-width: 600px) {
	.extractBtArea {display: block;}
	.extractBtArea li,
	.extractBtArea li.extsizeM,
	.extractBtArea li.extsizeW {width: auto;}
	.extractBtArea a {padding: 0.5rem 1.5rem;}
	.extractBtArea ul.scrollBar {padding: 0 0 1.0rem 0;justify-content: start;flex-wrap: nowrap;}
}
/* ** button1002 end ** */

/* ** button1003 start ** */
/*** 1003: 階層対応サブボタン ***/

.DetSubBtArea {margin: 1.0rem auto;}
.DetSubBtArea ul {display: flex;justify-content: flex-end;list-style: none;gap: 0 0.4rem;}
.DetSubBtArea li {width: 100%;margin: 0;text-align: center;}
.DetSubBtArea a,
.DetSubBtArea span {
	width: 100%;
	text-align: center;
	display: block;
	padding: 1.0rem 0.5rem;
	color: var(--app-DetSubBt2-txt);
	background: var(--app-DetSubBt2-cr);
	border-radius: var(--app-DetSubBt-rod);-webkit-border-radius: var(--app-DetSubBt-rod);-moz-border-radius: var(--app-DetSubBt-rod);
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	font-weight: bold;
}
.DetSubBtArea a.crt {background: var(--app-DetSubBt2-cr-crt);}
.DetSubBtArea a:hover {opacity: 0.6; filter: alpha(opacity = 60);text-decoration: none;}
.DetSubBtArea span {opacity: 0.3; filter: alpha(opacity = 30);}

/* サブナビボタン（第3階層） */
.DetSubBtAreaThe {margin: 2.0rem auto 1.0rem auto;}
.DetSubBtAreaThe ul {
	display: flex;
	justify-content: flex-end;
	list-style: none;
}
.DetSubBtAreaThe li {
	width: 100%;
	margin: 0 0.2rem;
	text-align: center;
}
.DetSubBtAreaThe a,
.DetSubBtAreaThe span {
	width: 100%;
	text-align: center;
	display: block;
	padding: 1.0rem 0.5rem;
	color: var(--app-DetSubBt3-txt);
	background: var(--app-DetSubBt3-cr);
	border-radius: 0.5rem;-webkit-border-radius: 0.5rem;-moz-border-radius: 0.5rem;
	font-size: clamp(1.4rem, 1.4vw, 1.6rem);
	font-weight: bold;
}
.DetSubBtAreaThe a.crt {background: var(--app-DetSubBt3-cr-crt);}
.DetSubBtAreaThe a:hover {opacity: 0.6; filter: alpha(opacity = 60);text-decoration: none;}
.DetSubBtAreaThe span {opacity: 0.3; filter: alpha(opacity = 30);}

/* ** button1003 end ** */
