/* 全体 */
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* header */
header {
	width: 100%;
	background: #469BE4;
	color: #fff;
}

#container {
    margin: 3em auto;
}

/* footer */
footer {
	margin: 0 auto;
	border-top: solid #00A83B;
	border-bottom: solid 30px #00A83B;
}
.footer_area{
	width: 80%;
	margin: 25px auto 5px;
}
address{
	font-style: normal;
	font-weight: bold;;
	font-size: 0.9em;
}
.ad_ttl{
	margin: 0;
	font-size: 1.1em;
}
.ad_company{
	margin: 3px 0;
	font-size: 1.3em;
}	
.copyright {
    text-align: center;
	font-size: 0.8em;
}

img {
    width: 100%;
}

.taL {
	text-align: left !important;
}
.taC {
	text-align: center !important;
}
.taR {
	text-align: right !important;
}

/* ラベル */
label.required:after {
    content: "必須";
    color: #fff;
    background: #F3A73B;
    font-size: 0.6em;
    padding: 3px 5px;
    float: right;
}
label.required02:after {
    content: "必須";
    color: #fff;
    background: #F3A73B;
    font-size: 0.6em;
    padding: 3px 5px;
	float: right;
	 margin: 0 10px 0 30px;
}
label.required03:after {
    content: "自動入力";
    color: #fff;
    background: #F3A73B;
    font-size: 0.6em;
    padding: 3px 5px;
	float: right;

}

/* マイページ 利用情報 */
.mypage_entry_table {
	width: 100%;
	margin: 2em auto;
	table-layout: fixed;
	padding: 2em;
	border-collapse:collapse;
}
	.mypage_entry_table th, 
	.mypage_entry_table td {
		text-align: left;
		padding-left: 1em;
		vertical-align: top;
	}
	.mypage_entry_table .mypage_entry_table_hr {
		border-bottom: 1px solid #c8c8c8;
	}

/* マイページ 支払履歴 */
.mypage_payment_history_table {
	width: 100%;
	margin: 2em auto;
	table-layout: fixed;
	padding: 2em;
	border-collapse:collapse;
}
	.mypage_payment_history_table th, 
	.mypage_payment_history_table td {
		text-align: left;
		padding-left: 1em;
		vertical-align: top;
	}
	.mypage_payment_history_table .mypage_payment_history_table_hr {
		border-bottom: 1px solid #c8c8c8;
	}

.receipt_requested_area {
	width: 100%;
	padding: 0.5em 0.3em;
	background-color: #fbe2ed;
	color: #ff0000;
}
.unPaidBilling_message_area {
	width: 100%;
	margin: 1em auto;
	font-weight: bold;
}

/* ボタン */
.btn,
a.btn,
button.btn {
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
}
.btn:hover,
a.btn:hover,
button.btn:hover {
	opacity: 0.8;
}
.btn:disabled,
a.btn:disabled,
button.btn:disabled {
	color: #fff;
	background-color: darkgray;
}
.btn:disabled:hover,
a.btn:disabled:hover,
button.btn:disabled:hover {
	color: #fff;
	background-color: darkgray;
	opacity: 1;
}
.btn--exec,
a.btn--exec {
    color: #fff;
    background-color: #F3A73B;
		border: none;
	width: 100%;


}
.btn--exec:hover,
a.btn--exec:hover {
    color: #fff;
    background: #F3A73B;
}

.btn--blue01,
a.btn--blue01 {
	color: #fff;
	background:#469BE4;
	border: none;
	width: 100%;
	font-size: 1.5em;
	letter-spacing: -0.5px;
	line-height: 1.3;
	padding: 2rem 1rem;
}
.btn--blue01:hover,
a.btn--blue01:hover {
	color: #fff;
	background:#469BE4;
}
.btn--yellow01,
a.btn--yellow01 {
	color: #000;
	background:#FFE164;
	border: none;
	width: 100%;
	font-size: 1em;
	line-height: 1.3;
	padding: 1rem 1rem;
}
.btn--yellow01:hover,
a.btn--yellow01:hover {
	color: #000;
	background:#FFE164;
}

.btn--orange01,
a.btn--orange01 {
	color: #fff;
	background:#F3A73B;
	border: none;
	width: 100%;
	font-size: 2em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 1rem 1rem;
}
.btn--orange01:hover,
a.btn--orange01:hover {
	color: #fff;
	background:#F3A73B;
}



.btn--grey,
a.btn--grey {
	color: #fff;
	background-color: grey;
	border: none;
	width: 100%;
}
.btn--grey:hover,
a.btn--grey:hover {
	color: #fff;
	background: grey;
}

.btn--red,
a.btn--red {
    color: #fff;
    background-color: red;
	border: none;
	width: 100%;

}
.btn--red:hover,
a.btn--red:hover {
    color: #fff;
    background: red;
}

.btn--orange02,
a.btn--orange02 {
	color: #fff;
	background:#F3A73B;
	border: none;
	width: 60%;
	font-size: 1.4em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 0.4rem;
}
.btn--orange02:hover,
a.btn--orange02:hover {
	color: #fff;
	background:#F3A73B;
}
.btn--orange03,
a.btn--orange03 {
	color: #fff;
	background:#F3A73B;
	border: none;
	width: 60%;
	font-size: 1.4em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 0.4rem;
	margin-bottom: 20px;
}
.btn--orange03:hover,
a.btn--orange03:hover {
	color: #fff;
	background:#F3A73B;
}
.btn--orange04,
a.btn--orange04 {
	color: #fff;
	background:#F3A73B;
	border: none;
	width: 100%;
	font-size: 1.4em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 1rem 1rem;
}
.btn--orange04:hover,
a.btn--orange04:hover {
	color: #fff;
	background:#F3A73B;
}
.btn--orange05,
a.btn--orange05 {
	color: #fff;
	background:#F3A73B;
	border: none;
	width: 60%;
	font-size: 1.1em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 0.4rem;
	margin-bottom: 20px;
}
.btn--orange05:hover,
a.btn--orange05:hover {
	color: #fff;
	background:#F3A73B;
}

.btn--grey02,
a.btn--grey02 {
	color: #646464;
	background:#fff;
	border: solid 1px #646464;
	width: 60%;
	font-size: 1.4em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 0.4rem;
	margin-bottom: 20px;
}
.btn--grey02:hover,
a.btn--grey02:hover {
	color: #646464;
	background:#fff;
}
.btn--grey03,
a.btn--grey03 {
	color: #fff;
    background: #B3B3B3;
    width: 45%;
    font-size: 1.1em;
    letter-spacing: -0.1px;
    line-height: 1.3;
    padding: 1rem 0.4rem;
	position: absolute;
	right: 0%;
    bottom: 0%;
}
.btn--grey03:hover,
a.btn--grey03:hover {
	color: #B3B3B3;
	background:#fff;
}

.btn--blue02,
a.btn--blue02 {
	color: #fff;
	background:#469BE4;
	border: none;
	width: 60%;
	font-size: 1.4em;
 	letter-spacing: -0.1px;
	line-height: 1.3;
	padding: 0.4rem;
}
.btn--blue02:hover,
a.btn--orange02:hover {
	color: #fff;
	background:#469BE4;
}
.btn--blue03,
a.btn--blue03 {
	color: #fff;
	background:#469BE4;
	border: none;
	width: 100%;
	font-size: 2em;
	letter-spacing: -0.5px;
	line-height: 1.3;
	padding: 1rem 1rem;
	margin-bottom: 20px;
}
.btn--blue03:hover,
a.btn--blue03:hover {
	color: #fff;
	background:#469BE4;
}
.btn--black,
a.btn--black {
	color: #fff;
	background-color: #000;
	border: none;
	font-size: 1.1em;
	width: 100%;
	padding: 1.5rem 0.4rem;
	letter-spacing: -0.5px;
}
.btn--black:hover,
a.btn--black:hover {
	color: #fff;
	background: #000;
}
.btn--black02,
a.btn--black02 {
	color: #fff;
	background-color: #000;
	border: none;
	font-size: 1.1em;
	width: 60%;
	padding: 0.4rem;;
	letter-spacing: -0.5px;
}
.btn--black02:hover,
a.btn--black02:hover {
	color: #fff;
	background: #000;
}

.btn--ygreen,
a.btn--ygreen {
	color: #000;
	background-color: #dcf5c8;
	border: none;
	font-size: 1.1em;
	width: 100%;
	padding: 1.5rem 0.4rem;
	letter-spacing: -0.5px;
	margin-bottom: 5px; 
}
.btn--ygreen:hover,
a.btn--ygreen:hover {
	color: #000;
	background: #dcf5c8;
}



.btn_small_txt{
	font-size: 0.8em;
	letter-spacing: -0.1px;
}

.input_btn_calendar {
    color: rgba(39, 74, 120, 0.9);
    background-color: rgba(39, 74, 120, 0.05);
    transition: 0.2s;
    line-height: 1.25;
    vertical-align: middle;
    padding-right: 0.75em;
    padding-left: 0.75em;
}
.input_btn_calendar:hover {
    color: #274a78;
    background-color: white;
}
.input_btn_calendar::before {
    content: "\f133";
    font-family: "Font Awesome 6 Free";
    vertical-align: baseline;
}


.app_front_regist_index .scrollBox {
    height: 25em;
    overflow-y: scroll;
    border: 3px solid #C8C8C8;
    border-radius: 20px;
    background: #F0F0F0;
    padding: 20px;

}
.error_message{
	list-style: none;
	padding: 0;
	color: #FF0000;
	margin: 0;
}
fieldset{
	border: none;
	margin: 0;
    	padding: 20px 0 0;
	border-bottom: solid 1px #C8C8C8;
}
dl{
	border-top: solid 1px #C8C8C8;
	padding: 10px 0;
}
dd{
	margin: 0;
}

.border{
	border-top: none;
	border-bottom: solid 1px #C8C8C8;
	margin-top: 20px;
}

/*画面幅900px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:900px){

}

