html
{
	width: 100%;
	height: 100%;
}

body
{
	-webkit-text-size-adjust: 100%;
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 0px;
	spacing: 0px;
	font-family: -apple-system, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ ゴシック', 'MS Gothic', sans-serif;
	font-size: 16px;
}

main
{
	width: 100%;
	height: 100%;
}

div.container
{
	width: 100%;
	height: 100%;
}

input[type="button"],input[type="submit"] {
    -webkit-appearance: none;
	font-weight: 400;
}

select {
	font-weight: 400;
}

a {
	text-decoration: none;
}

img {
	border-style: none;
}

div {
	border-style: none;
}

ul {
  list-style: none;
}


/* スクロールバー */
::-webkit-scrollbar
{
	display: none;
}


/* パーツ */
.mt0
{
	margin-top: 0px!important;
}

.mt5
{
	margin-top: 5px!important;
}

.mt10
{
	margin-top: 10px!important;
}

.mt14
{
	margin-top: 14px!important;
}

.mt15
{
	margin-top: 15px!important;
}

.mt19
{
	margin-top: 19px!important;
}

.mt20
{
	margin-top: 20px!important;
}

.mt25
{
	margin-top: 25px!important;
}

.mt30
{
	margin-top: 30px!important;
}

.mt32
{
	margin-top: 32px!important;
}

.mt35
{
	margin-top: 35px!important;
}

.mt40
{
	margin-top: 40px!important;
}

.mt50
{
	margin-top: 50px!important;
}

.mt60
{
	margin-top: 60px!important;
}

.mt70
{
	margin-top: 70px!important;
}

.mt72
{
	margin-top: 72px!important;
}

.mt75
{
	margin-top: 75px!important;
}

.mt77
{
	margin-top: 77px!important;
}

.mt80
{
	margin-top: 80px!important;
}

.mt90
{
	margin-top: 90px!important;
}

.mt95
{
	margin-top: 95px!important;
}

.mt100
{
	margin-top: 100px!important;
}

.mt106
{
	margin-top: 106px!important;
}

.mt130
{
	margin-top: 130px!important;
}

.mt150
{
	margin-top: 150px!important;
}

.mt170
{
	margin-top: 170px!important;
}

.mt178
{
	margin-top: 178px!important;
}

.mb0
{
	margin-bottom: 0px!important;
}

.mb5
{
	margin-bottom: 5px!important;
}

.mb10
{
	margin-bottom: 10px!important;
}

.mb15
{
	margin-bottom: 15px!important;
}

.mb20
{
	margin-bottom: 20px!important;
}

.mb25
{
	margin-bottom: 25px!important;
}

.mb30
{
	margin-bottom: 30px!important;
}

.mb35
{
	margin-bottom: 35px!important;
}

.mb40
{
	margin-bottom: 40px!important;
}

.mb45
{
	margin-bottom: 45px!important;
}

.mb50
{
	margin-bottom: 50px!important;
}

.ml0
{
	margin-left: 0px!important;
}

.ml10
{
	margin-left: 10px!important;
}

.ml13
{
	margin-left: 13px!important;
}

.ml15
{
	margin-left: 15px!important;
}

.ml20
{
	margin-left: 20px!important;
}

.ml25
{
	margin-left: 25px!important;
}

.ml50
{
	margin-left: 50px!important;
}

.ml100
{
	margin-left: 100px!important;
}

.ml150
{
	margin-left: 150px!important;
}

.ml200
{
	margin-left: 200px!important;
}

.ml225
{
	margin-left: 225px!important;
}

.ml250
{
	margin-left: 250px!important;
}

.ml300
{
	margin-left: 300px!important;
}

.ml350
{
	margin-left: 350px!important;
}

.mlra
{
	margin-left: auto!important;
	margin-right: auto!important;
}

.pt0
{
	padding-top: 0px!important;
}

.pt5
{
	padding-top: 5px!important;
}

.pt10
{
	padding-top: 10px!important;
}

.pt14
{
	padding-top: 14px!important;
}

.pt15
{
	padding-top: 15px!important;
}

.pt19
{
	padding-top: 19px!important;
}

.pt20
{
	padding-top: 20px!important;
}

.pt25
{
	padding-top: 25px!important;
}

.pt30
{
	padding-top: 30px!important;
}

.pt32
{
	padding-top: 32px!important;
}

.pt35
{
	padding-top: 35px!important;
}

.pt40
{
	padding-top: 40px!important;
}

.pt50
{
	padding-top: 50px!important;
}

.pt55
{
	padding-top: 55px!important;
}

.pt60
{
	padding-top: 60px!important;
}

.pt70
{
	padding-top: 70px!important;
}

.pt80
{
	padding-top: 80px!important;
}

.pb0
{
	padding-bottom: 0px!important;
}

.pb5
{
	padding-bottom: 5px!important;
}

.pb10
{
	padding-bottom: 10px!important;
}

.pb15
{
	padding-bottom: 15px!important;
}

.pb20
{
	padding-bottom: 20px!important;
}

.pl0
{
	padding-left: 0px!important;
}

.pl5
{
	padding-left: 5px!important;
}

.pl10
{
	padding-left: 10px!important;
}

.pl20
{
	padding-left: 20px!important;
}

.pl30
{
	padding-left: 30px!important;
}

.pl40
{
	padding-left: 40px!important;
}

span.red
{
	color: #ff0000!important;
}

.bn
{
	border: none!important;
}

.btn
{
	border-top: none!important;
}

.bbn
{
	border-bottom: none!important;
}

.bln
{
	border-left: none!important;
}

.brn
{
	border-right: none!important;
}

.wda
{
	width: auto!important;
}

.word_block
{
	word-break: keep-all;
}

.po_r
{
	position: relative!important;
}

.bg_t
{
	background-color: transparent!important;
}

span.minus_left
{
	margin-left: -0.5em;
}

span.not_select
{
	/*color: #999999;*/
	opacity: 0.4;
	text-decoration: line-through;
}


/* ヘッダー（ログイン） */
div.stamp_header_login
{
	width: 100%;
	background-color: #5f88b5;
	position: fixed;
	top: 0;
	z-index: 700;
}

div.stamp_header_login div.data
{
	width: 100%;
	height: 40px;
	margin: 0px auto 0px;
	padding: 0px 0px 0px;
	box-sizing: border-box;
	position: relative;
}

div.stamp_header_login div.data table.stamp_header_login
{
	width: 100%;
	height: 40px;
	margin: 0px;
}

div.stamp_header_login div.data table.stamp_header_login td.title
{
	font-size: 120%;
	color: #ffffff;
	text-align: center;
	/*font-weight: bold;*/
	letter-spacing: 0.15em;
}

div.stamp_header_login div.data div.back
{
	width: 12px;
	height: 23px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 15px;
	z-index: 100;
}

div.stamp_header_login div.data div.back img
{
	width: 12px;
	height: 23px;
}

div.stamp_header_login div.data div.icon
{
	width: 30px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	z-index: 100;
}

div.stamp_header_login div.data div.icon img
{
	width: 30px;
	height: 30px;
}

div.stamp_header_login div.data div.icon div.frame
{
	width: 100%;
	height: 100%;
	position: relative;
}

div.stamp_header_login div.data div.icon2
{
	width: 30px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 80px;
	z-index: 100;
}

div.stamp_header_login div.data div.icon2 input
{
	width: 30px;
	height: 30px;
	font-size: 140%;
	color: #5f88b5;
	border-radius: 5px;
	background-color: #ffffff;
	border: none;
	text-shadow: none;
	cursor: pointer;
}

div.stamp_header_login div.data div.icon2 button
{
	width: 30px;
	height: 30px;
	font-size: 140%;
	color: #5f88b5;
	border-radius: 5px;
	background-color: #ffffff;
	border: none;
	text-shadow: none;
	cursor: pointer;
	padding: 0;
}

div.stamp_header_login div.data div.icon3
{
	width: 30px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 145px;
	z-index: 100;
}

div.stamp_header_login div.data div.icon3 input
{
	width: 30px;
	height: 30px;
	font-size: 220%;
	line-height: 100%;
	color: #5f88b5;
	border-radius: 5px;
	background-color: #ffffff;
	border: none;
	text-shadow: none;
	cursor: pointer;
	padding: 0 0 3px;
}

div.stamp_header_login div.data div.input
{
	width: 30px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 15px;
	z-index: 100;
}

div.stamp_header_login div.data div.input input
{
	width: 30px;
	height: 30px;
	font-size: 140%;
	color: #5f88b5;
	border-radius: 5px;
	background-color: #ffffff;
	border: none;
	text-shadow: none;
	cursor: pointer;
}

div.stamp_header_login_height
{
	height: 40px;
}


/* タイトル */
div.title_frame
{
	width: 100%;
	height: 30px;
	margin: 0px;
	/*background-color: rgba(244, 243, 241, 0.85);*/
	background-color: #f4f3f1;
	position: fixed;
	top: 40px;
	left: 0;
	z-index: 100;
}

div.title_frame table.page_title
{
	/*width: 960px;*/
	width: 100%;
	height: 30px;
	margin: 0px auto 0px;
}

div.title_frame table.page_title td.title
{
	text-align: center;
	position: relative;
}

div.title_frame table.page_title td.title div.title_text
{
	font-size: 95%;
	line-height: 100%;
	color: #333333;
	letter-spacing: 0.15em;
	display: inline-block;
}

div.title_frame table.page_title div.menu_button
{
	height: 30px;
	position: absolute;
	top: 0px;
	left: 10px;
	display: inline-block;
	cursor: pointer;
}

div.title_frame table.page_title div.menu_button a
{
	color: #333333;
	display: block;
}

div.title_frame table.menu_frame
{
	height: 30px;
}

div.title_frame table.menu_frame td.menu_arrow
{
	width: 12px;
}

div.title_frame table.menu_frame td.menu_arrow div.img
{
	width: 12px;
	height: 12px;
}

div.title_frame table.menu_frame td.menu_arrow div.img img
{
	width: 12px;
	height: 12px;
	display: block;
	/*vertical-align: top;*/
}

div.title_frame table.menu_frame td.menu_text
{
	width: 1px;
	font-size: 95%;
	line-height: 100%;
	color: #7f7f7f;
	letter-spacing: 0.1em;
	padding-left: 9px;
	white-space: nowrap;
}

div.title_frame table.page_title div.pattern_frame
{
	height: 30px;
	position: absolute;
	top: 0px;
	right: 5px;
	display: inline-block;
	cursor: pointer;
}

div.title_frame table.pattern
{
	height: 30px;
}

div.title_frame table.pattern td.pattern_title
{
	font-size: 95%;
	line-height: 100%;
	color: #333333;
	letter-spacing: 0.1em;
	padding-right: 10px;
}

div.title_frame table.pattern td.pattern_select
{
	width: 150px;
}

div.title_frame table.pattern td.pattern_select select
{
	width: 150px;
	height: 20px;
	font-size: 95%;
	color: #333333;
	/*border: 1px solid: #9c9c9c;*/
	border: none;
	background-color: #ffffff;
	box-sizing: border-box;
	border-radius: 5px;
}

div.title_frame table.pattern td.pattern_button
{
	width: 50px;
	padding: 0px 5px 0px;
}

div.title_frame table.pattern td.pattern_button input
{
	width: 50px;
	height: 20px;
	font-size: 95%;
	line-height: 100%;
	color: #ffffff;
	padding: 0px;
	text-align: center;
	box-sizing: border-box;
	cursor: pointer;
	border: none;
	text-shadow: none;
	background-color: #7cc74c;
	padding: 0px 0px 0px;
	box-sizing: border-box;
	border-radius: 5px;
	letter-spacing: 0.1em;
}

/*div.title_frame table.page_title a
{
	color: #7cc74c;
	text-decoration: underline
}*/


/* BOTチェックボックス */
table.bot_check
{
	margin: 35px auto 0px;
}

table.bot_check td.checkbox
{
	
}

table.bot_check td.text
{
	font-size: 90%;
	line-height: 100%;
	color: #000000;
	letter-spacing: 0.1em;
	padding-left: 10px;
}


/* ボタン */
table.login_button
{
	margin: 30px auto 0px;
}

table.login_button td.button
{
	padding-right: 60px;
}

table.login_button td:last-child.button
{
	padding-right: 0px;
}

table.login_button td.button input
{
	width: 150px;
	height: 35px;
	font-size: 95%;
	color: #ffffff;
	padding: 0px;
	border: none;
	text-shadow: none;
	background-color: #5f88b5;
	box-sizing: border-box;
	border-radius: 5px;
	letter-spacing: 0.15em;
	cursor: pointer;
}

table.login_button a
{
	display: block;
	text-decoration: none;
}


/* ログイン */
div.login_frame
{
	width: 730px;
	margin: 0px auto 0px;
	padding: 40px 35px 50px;
	box-sizing: border-box;
	background-color: #bde3a4;
	border-radius: 5px;
}

table.login_form
{
	width: 100%;
	margin: 0px 0px 0px;
}

table.login_form td.height
{
	height: 25px;
}

table.login_form td.title
{
	width: 150px;
	font-size: 90%;
	line-height: 100%;
	color: #ffffff;
	padding-left: 10px;
	background-color: #5f88b5;
	letter-spacing: 0.1em;
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

table.login_form td.title_top
{
	width: 150px;
	font-size: 90%;
	line-height: 100%;
	color: #ffffff;
	padding-left: 10px;
	background-color: #5f88b5;
	letter-spacing: 0.1em;
	border-top-left-radius: 5px;
}

table.login_form td.title_bottom
{
	width: 150px;
	font-size: 90%;
	line-height: 100%;
	color: #ffffff;
	padding-left: 10px;
	background-color: #5f88b5;
	letter-spacing: 0.1em;
	border-bottom-left-radius: 5px;
}

table.login_form td.form
{
	width: auto;
}

table.login_form td.form input
{
	width: 100%;
	height: 35px;
	font-size: 90%;
	color: #000000;
	padding: 0px 10px 0px;
	border: none;
	background-color: #ffffff;
	box-sizing: border-box;
	border: 1px solid #5f88b5;
	letter-spacing: 0.1em;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

table.login_form td.form_top
{
	width: auto;
}

table.login_form td.form_top input
{
	width: 100%;
	height: 35px;
	font-size: 90%;
	color: #000000;
	padding: 0px 10px 0px;
	border: none;
	background-color: #ffffff;
	box-sizing: border-box;
	border-top: 1px solid #5f88b5;
	border-left: 1px solid #5f88b5;
	border-right: 1px solid #5f88b5;
	letter-spacing: 0.1em;
	border-top-right-radius: 5px;
}

table.login_form td.form_bottom
{
	width: auto;
}

table.login_form td.form_bottom input
{
	width: 100%;
	height: 35px;
	font-size: 90%;
	color: #000000;
	padding: 0px 10px 0px;
	border: none;
	background-color: #ffffff;
	box-sizing: border-box;
	border-bottom: 1px solid #5f88b5;
	border-left: 1px solid #5f88b5;
	border-right: 1px solid #5f88b5;
	letter-spacing: 0.1em;
	border-bottom-right-radius: 5px;
}

table.login_form td.text
{
	width: auto;
	height: 35px;
	font-size: 90%;
	color: #000000;
	padding: 0px 10px 0px;
	letter-spacing: 0.1em;
}

table.login_form tr.bottom_line td
{
	border-bottom: 1px dashed #5f88b5;
}

table.login_form div.login_error_text
{
	line-height: 180%;
	margin-top: 0!important;
	margin-left: 5px;
}

div.reminder_text
{
	font-size: 90%;
	line-height: 180%;
	color: #000000;
	letter-spacing: 0.05em;
	margin-bottom: 25px;
}

table.reminder_button
{
	margin: 40px auto 0px;
}

table.reminder_button td.height
{
	height: 25px;
}

table.reminder_button td.text
{
	font-size: 90%;
	line-height: 100%;
	color: #000000;
	letter-spacing: 0.1em;
	padding-right: 35px;
}

table.reminder_button td.button
{
	width: 150px;
}

table.reminder_button td.button input
{
	width: 150px;
	height: 35px;
	font-size: 95%;
	color: #ffffff;
	padding: 0px;
	border: none;
	text-shadow: none;
	background-color: #5f88b5;
	box-sizing: border-box;
	border-radius: 5px;
	letter-spacing: 0.15em;
	cursor: pointer;
}

table.reminder_button a
{
	display: block;
	text-decoration: none;
}


/* 完了 */
div.fin_text
{
	font-size: 90%;
	line-height: 180%;
	color: #000000;
	letter-spacing: 0.1em;
	text-align: center;
}


/* エラー */
div.login_error_text
{
	font-size: 90%;
	line-height: 120%;
	color: #ff0000;
	letter-spacing: 0.1em;
	margin-top: 5px;
}