@charset "utf-8";

/*	Reset	*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, backquote, th, td, caption, button
{ margin: 0; padding: 0; }
html { overflow-y: scroll; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
ol, ul { list-style: none; }
fieldset, img { border: 0; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th { text-align: left; }
address, caption, cite, code, dfn, em, strong, th, var { font-style: normal; font-weight: normal; }

html { width: 100%; height: 100%; margin: 0; padding: 0; }
body { width: 100%; height: 100%; background-color: #FFF; }
body { font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-size: 18px; line-height: 1.6em; color: #000; }
body, div, button, p, ul, li, table, th, td, input, select { box-sizing: border-box; -moz-box-sizing: border-box; }
html, body, div, p, a, input, button, table, tr, caption, td, th, img, svg, object, ul, ol, li { touch-action: manipulation; }

/*	Flex 	*/
.flexcase { display: -moz-box; display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex; }
.flexcase_justify { justify-content: space-between; -ms-flex-pack: justify; -moz-box-pack: justify; -webkit-box-pack: justify; -webkit-justify-content: space-between; }
.flexcase_center { justify-content: center; -ms-flex-pack: center; -moz-box-pack: center; -webkit-box-pack: center; -webkit-justify-content: center; }
.flexcase_left { justify-content: flex-start; -ms-flex-pack: start; -moz-box-pack: start; -webkit-box-pack: start; -webkit-justify-content: flex-start; }
.flexcase_right { justify-content: flex-end; -ms-flex-pack: end; -moz-box-pack: end; -webkit-box-pack: end; -webkit-justify-content: flex-end; }
.flexcase_middle { -webkit-align-items: center; align-items: center; }

/*	Common	*/
.bold { font-weight: bold; }
.posab { position: absolute; }
.al-center { text-align: center; }
.al-right { text-align: right; }
.border-box { box-sizing: border-box; -moz-box-sizing: border-box; }
.nousersel { -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.nohilite { -webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: rgba(0,0,0,0); }
.nodragimg { pointer-events: none; }
.txt_sub { font-size: 0.86em; }
.sp_error { color: #e00; font-size: 0.9em; }
div.error { background: #FFEFF3; }
button { cursor: pointer; border: none; background-repeat: no-repeat; }
button:disabled { opacity: 0.3; cursor: default; }
button:active { opacity: 0.8; }
button:disabled:active { opacity: 0.3; }



.div_background { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background-image: url(../img/back03.jpg); background-repeat: no-repeat; background-size: cover; }
.div_contentback { position: absolute; width: 100%; height: 100%; }
.div_contentbase { width: 100%; max-width: 800px; background: rgba(255,255,255,0.8); box-shadow: 1px 1px 4px rgba(0,0,0,0.2); padding: 70px 30px 70px; 
	margin: 0 auto; overflow: auto; position: relative; opacity: 0; }
.div_pageheader { position: fixed; top: 0; left: 0; width: 100%; height: 60px; background: rgba(0,0,0,0.7); box-shadow: 1px 1px 8px rgba(0,0,0,0.2); z-index: 1; }
.div_pageheader_contentcase { margin: 0 auto; width: 100%; max-width: 800px; }
.div_pageheader_contentcase a { line-height: 0; }
.div_pageheader_contentcase img { margin: 0 10px; }
.div_pagecontentcase { position: relative; width: 100%; padding: 20px 0 10px; }
img.img_cogtem_logo { display: block; height: 40px; margin: -50px auto 40px; }
.div_pagefooter { position: fixed; top: 100%; left: 0; width: 100%; height: 50px; margin-top: -50px; background: rgba(0,0,0,0.7); z-index: 1; opacity: 0; }
.div_pagefooter_content { width: 100%; max-width: 800px; margin: 0 auto; padding: 11px 10px 0; font-size: 0.86em; color: #fff; text-align: center; }
.div_pagefooter_content ul li { display: inline-block; padding: 0 6px; line-height: 1em; }
.div_pagefooter_content ul li:first-child { padding-left: 0; }
.div_pagefooter_content P { margin: 0; }
.div_pagefooter_content a { color: #fff; text-decoration: none; }


h2 { font-size: 1.6em; height: 48px; line-height: 48px; color: #FF5388; margin-bottom: 30px; text-align: center; font-weight: bold; 
	border-bottom: 2px dotted rgba(0,0,0,0.4); border-top: 2px dotted rgba(0,0,0,0.4); }
h2 span { font-size: 0.6em; }
p { margin-bottom: 20px; }
h3 { font-size: 1.3em; font-weight: bold; color: #777; border-left: 15px solid #FF3B77; padding-left: 5px; margin-bottom: 20px; }
a { color: #4E778A; }
input[type=text], input[type=number], input[type=password] { padding: 3px; width: auto; }
input[type=number].txt_publishcnt { width: 80px; font-size: 1.5em; }
input[type=text].txt_memo { width: 50%; font-size: 1em; }
button.bt_simple { background: #f0f0f0; color: #333; padding: 3px 15px; border: 1px solid #999; }
button.bt_oknext { display: block; background: #248BAD; color: #fff; padding: 10px 40px; font-size: 1.1em; border-radius: 4px; margin: 16px; }
button.bt_oknext.small { padding: 8px 20px; font-size: 1em; margin: 10px; }
button.bt_oknext.pink { background: #FF85BE; }
button.bt_oknext.gray { background: #777; }
table.tbl_normal { width: 100%; border: 1px solid #999; }
table.tbl_normal th, table.tbl_normal td { border: 1px solid #999; border: 1px solid #999; padding: 5px 10px; }
table.tbl_normal th { color: #666; font-size: 0.9em; font-weight: bold; }

/*	Owner Menu 	*/
button.bt_ownermenu { display: block; width: 60px; height: 60px; background-color: rgba(0,0,0,0); background-image: url(../img/bt_menu.png); background-position: center center; background-size: 60%; }
div.div_ownermenu_back { position: fixed; width: 100%; height: 100%; z-index: 2; background: rgba(0,0,0,0.1); }
div.div_ownermenu_content { position: relative; width: 100%; max-width: 800px; margin: 0 auto; }
ul.ul_ownermenu { display: block; position: absolute; width: 200px; top: 60px; left: 100%; margin-left: -210px; background: #666; box-shadow: 1px 1px 8px rgba(0,0,0,0.3); }
ul.ul_ownermenu li { display: block; width: 100%; padding: 5px 10px; font-size: 0.9em; cursor: pointer; color: #fff; }
ul.ul_ownermenu li:hover { background: #888; }
ul.ul_ownermenu li.li_upperline { border-top: 1px solid #ccc; }
ul.ul_ownermenu li a { color: #fff; text-decoration: none; display: inline-block; width: 100%; }
p.p_loginerror { background: #FFD4DC; color: #C73636; padding: 2px 10px; }

/*	Input 	*/
input[type=text], input[type=password] { padding: 5px; width: 100%; }
select { padding: 5px; }
textarea { width: 100%; }
input[type=radio] { margin-right: 5px; }
label.forradio { margin-right: 20px; }
label.lab_fortextinput { display:  block; color: #777; font-weight: bold; font-size: 0.9em; margin-top: 20px; line-height: 1.2em; }

input[type=text].txt_search { width: auto; max-width: 89%; height: 30px; padding: 0 32px 0 5px; border-radius: 4px; border: 1px solid #999;
	margin: 2px; display: block; }
button.bt_search { height: 30px; padding: 0 5px; font-size: 0.8em; color: #666; background: #eee; border: 1px solid #999; border-radius: 4px;
	margin: 2px; display: block; max-width: 9%; }
button.bt_clearinput { width: 30px; height: 30px; background-size: contain; background-image: url(../img/bt_clearinput.png); background-color: rgba(0,0,0,0);
	display: block; margin: 2px 2px 2px -32px; }

.p_forlogout { width: 100%; text-align: right; font-size: 0.9em; margin-top: -20px; }
.p_forlogout a { text-decoration: none; }
table.tbl_codes { width: 100%; margin-top: 30px; font-size: 0.86em; }
table.tbl_codes th , table.tbl_codes td { padding: 5px 3px; line-height: 1em; }
table.tbl_codes td { border-top: 1px solid #ddd; }
table.tbl_codes td.canceled { text-decoration: line-through; color: #aaa; }
table.tbl_codes th { color: #777; font-weight: bold; font-size: 0.9em; }
table.tbl_codes tr.tr_hilited td { border-bottom: 1px dashed rgba(0,0,0,0.1); color: #22ABDC; background-color: #F0FBFF; font-weight: bold; }
table.tbl_codes tr.tr_morecodeinfo td { background-color: #F0FBFF; padding: 5px 10px 10px; color: #22ABDC; line-height: 1.2em; }
table.tbl_codes tr.tr_morecodeinfo td p { margin-bottom: 5px; }
table.tbl_codes tr.tr_morecodeinfo td p span.title { font-weight: bold; color: #777; }
table.tbl_codes td>span { cursor: pointer; }
table.tbl_codes th a { color: #333; text-decoration: none; }
table.tbl_codes th a:hover { color: #222; text-decoration: underline; }
table.tbl_codes th a .sp_sortarrow { padding-left: 5px; font-size: 0.8em; color: #666; }
button.bt_codelistmore { width: 30px; height: 30px; background-color: rgba(0,0,0,0); background-repeat: no-repeat; background-position: center center; background-size: 80%;
	background-image: url(../img/bt_row_close.png); }
button.bt_codelistmore.opened { background-image: url(../img/bt_row_open.png); }
select.sel_ownersel { font-size: 0.9em; padding: 3px 5px; }
select.sel_ownersel.sel_hideretires option.retired { display: none; }
button.bt_buyticket { display: block; padding: 5px 36px 5px 10px; margin-left: 5px; color: #fff; background-color: #FF3B77; border: none; border-radius: 8px; font-size: 0.9em;
	background-position: top right; background-size: contain; background-image: url(../img/icn_btopn.png); }
button.bt_buyticket.options { background-color: #05ada5; font-size: 0.8em;}
button.bt_buyticket.opened { background-image: url(../img/icn_btcls.png); border-bottom-right-radius: 0; border-bottom-left-radius: 0; }
div.div_addcodecase { border: 1px solid #FF3B77; padding: 10px 30px; background: #FFF3F7; border-bottom-right-radius: 8px; border-bottom-left-radius: 8px; }
div.div_addcodecase.options { border: 1px solid #05ada5; background: #E0F9F7; }
div.div_addcodecase p { margin-top: 10px; }
div.div_addcodecase table { margin: 10px; width: 100%; }
div.div_addcodecase table th, div.div_addcodecase table td { padding: 5px; }
div.div_addcodecase table th { text-align: right; }
button.bt_copycode { margin-left: 3px; width: 20px; height: 20px; border: none; background-color: rgba(0,0,0,0); background-image: url(../img/icn_copy.png); background-size: contain; vertical-align: middle; }
button.bt_codeinfofunc { height: 28px; line-height: 28px; padding: 0 16px ; margin: 2px 5px; border-radius: 14px; background: #22ABDC; color: #fff; }
img.img_statusicon { width: 20px; margin: 2px 3px 0; }

table.tbl_addowner { margin-top: 30px; font-size: 0.86em; }
table.tbl_addowner th , table.tbl_addowner td { padding: 2px 3px; border: 1px solid #ddd; }
table.tbl_addowner th { color: #777; text-align: right; }

.div_logincase, .div_pwresetcase { max-width: 500px; margin: 20px auto 30px; height: auto; }
.div_logincase p { font-size: 0.9em; }
table.tbl_login { width: 100%; margin: 30px auto; }
table.tbl_login td, table.tbl_login th { padding: 5px; vertical-align: top; }
table.tbl_login th { font-weight: bold; color: #888; }
table.tbl_login input { padding: 3px 5px; width: 100%; }
table.tbl_login td.error { background-color: #FFEBEB; }
table.tbl_login td.error span { color: #D60000; font-size:0.8em; }
.bt_login { padding: 5px 30px; font-size: 1.1em; background: #666; color: #fff; border: 0; margin-top: 20px; }

select.sel_yearselect { margin: 0 0 20px; padding: 5px 10px; font-size: 1em; }

p.p_purchaseinfosubtxt { font-size: 0.9em; color: #f00; margin: 5px; }
table.tbl_purchaselist {  }
table.tbl_purchaselist td.refunded { text-decoration: line-through; color: #aaa; }
table.tbl_purchase_moreinfo td.refunded { text-decoration: line-through; color: #aaa; }
table.tbl_settinglist {  }

.p_allticketcount { font-size: 0.9em; color: #788CB4; margin: 0; }
.sel_ticketpage {  }




/*	Entry	*/
.div_mediumformcase { width: 100%; max-width: 400px; margin: 20px auto; border: 1px solid #FF8EBE; padding: 20px; background: #fff; border-radius: 8px; }
.p_alertmessage { color: #f00; font-size: 0.86em; }
.div_entrystep2 { display: none; }
.div_entrystep3 { display: none; }
.div_entrystep4 { display: none; }
label.lab_fortextinput span { font-weight: normal; font-size: 0.9em; }


/*	Dialog 	*/
.div_dialogboxback { position: fixed; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 99; }
.div_dialogbox { position: relative; width: 92%; height: 92%; max-width: 480px; max-height: 480px; background: #fff; border-radius: 8px; border: 2px solid #1BAFD9; box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
	padding: 0; overflow: auto; }
.div_dialogbox h3 { width: 100%; text-align: center; font-size: 1.3em; color: #43AAEB; font-weight: bold; padding: 20px 0 20px; border: 0; }
.div_dialogbox p { padding: 0 20px; }
.div_dialogbox .div_buttoncase { position: absolute; height: 40px; width: 100%; top: 100%; margin-top: -40px; }
.div_dialogbox button { height: 100%; border: none; background: #1BAFD9; width: 46%; color: #fff; }
.div_dialogbox button:active { opacity: 0.7; }
.div_dialogbox button.bt_dlg_left { border-bottom-left-radius: 5px; border-top-right-radius: 8px; }
.div_dialogbox button.bt_dlg_right { border-bottom-right-radius: 5px; border-top-left-radius: 8px; }
.div_dialogbox button.bt_dlg_center { border-top-left-radius: 8px; border-top-right-radius: 8px; }


/*	Tokusho, Kiyaku, FAQ 	*/
table.tbl_tokusho { word-break: break-all; }
table.tbl_tokusho th { background: #f5f5f5; }

.div_kiyaku h4 { font-weight: bold; font-size: 0.9em; }
.div_kiyaku p { font-size: 0.9em; margin-bottom: 30px; }
.div_kiyaku ol { font-size: 0.9em; }
.div_kiyaku ol.ol_kiyaku_l1 { margin-bottom: 30px; list-style: number; }
.div_kiyaku ol.ol_kiyaku_l1>li { margin-left: 1.4em; }
.div_kiyaku ol.ol_kiyaku_l2 { margin-bottom: 5px; counter-reset: li_count; }
.div_kiyaku ol.ol_kiyaku_l2>li {  }
.div_kiyaku ol.ol_kiyaku_l2>li:before { counter-increment: li_count; content: "("counter(li_count)") "; }

table.tbl_faq { margin-bottom: 5px }
table.tbl_faq th { background-color: #f5f5f5; background-position: right center; background-repeat: no-repeat; background-image: url(../img/img_tr_open.png); 
	padding-right: 40px; cursor: pointer; }
table.tbl_faq th.opened { background-image: url(../img/img_tr_close.png); }
table.tbl_faq td { background: #fff; }
table.tbl_faq td.hidden { display: none; }
.div_faq h3 { margin-top: 30px; }



@media screen and (max-width: 767px){
	.div_contentbase { padding: 70px 10px 20px; box-shadow: none; border: none; }
	.div_pageheader_contentcase .div_emptybox { display: none; }
	.div_pagefooter { position: relative; top: auto; width: 100%; height: auto; line-height: 1.5em; margin-top: 10px; padding: 10px; 
		background: rgba(255,255,255,0.5); color: #000; border-top: 1px dashed #ddd; }
	.div_pagefooter_content { padding: 0 10px 0; }
	.div_pagefooter_content ul li { display: block; padding: 0 10px; border: none; line-height: 1.8em; }
	.div_pagefooter_content a { color: #000; }
	.hide_narrow { display: none; }
	.noflex_narrow { display: block; }

	.div_mediumformcase { overflow: auto; max-height: 90%; }

	table.tbl_purchaselist, table.tbl_purchase_moreinfo { font-size: 0.9em; }

	table.tbl_settinglist th, table.tbl_settinglist td { display: block; border: none; line-height: 1.4em; }
	table.tbl_settinglist th { border-top: 1px solid #999; padding-top: 10px; }
	table.tbl_settinglist tr:first-child th { border-top: none; }
	table.tbl_settinglist button.bt_oknext.small { font-size: 0.9em; padding: 4px 15px; margin: 0 auto 5px; }

	table.tbl_tokusho th, table.tbl_tokusho td { display: block; border: none; }
	table.tbl_tokusho th { border-top: 1px solid #999; padding-top: 10px; }
	table.tbl_tokusho tr:first-child th { border-top: none; }
}

@media screen and (max-width: 320px){
	.div_dialogbox h3 { margin-bottom: 0; }
	.div_dialogbox p { font-size: 0.9em; padding: 0 10px; line-height: 1.5em; }
}

