/* #ss_stage #ss_container .contents_image{
    position: relative;
    padding-top: 21.25%;
} */

/* #ss_stage #ss_container .contents_image .header_image_with_top{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: auto;
}
    .header_image_with_top img{
        width: 28%;
    } */
.ss_form .ss_display .checkHideON{
    display: none;
}
.ss_form .ss_display .display_text{
    display: none;
}

/* 20220105　タイムテーブル下文言 */
.ss_form p.tableNote {
    text-align: left;
}

/* 20231218 ステータスアイコン */
span.label.label-attention.label-before {
	background-color: #72b20a;
}
span.label.label-attention.label-end {
	background-color: #330066;
}

/* 20231219 レスポンシブ */
.ss_timetable_responsive {
	display: grid;
	margin-bottom: 20px;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
}
.ss_timetable_responsive > div {
	padding: 3px 0;
	border-bottom: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
	text-align: center;
}
.ss_timetable_responsive .ss_th {
    order: 1;
    grid-row-start: 1;
    grid-row-end: 2;
	font-weight: bold;
	background: #E8EEFA;
}
.ss_timetable_responsive .ss_td {
	display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
	min-height: 24px;
	/* 2025/12/10追加 */
	min-width: 100px;
}
.ss_timetable_responsive .ss_td.row1 {
	order: 2;
}
.ss_timetable_responsive .ss_td.row2 {
	order: 3;
}
.ss_timetable_responsive .ss_td.row3 {
	order: 4;
}
.ss_timetable_responsive .ss_td.row4 {
	order: 5;
}
.ss_timetable_responsive .ss_td.pc_disp {
	font-weight: bold;
	background: #EEEEEE;
}
.ss_timetable_responsive .ss_td .sp_disp,
.ss_cartTable .sp_disp {
	display: none;
}

@media screen and (min-width: 768px) {
	#ss_contents .ss_form .ss_formprivacy .busi_select .js_busi {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		height: 150px;
	}
	#ss_contents .ss_form .ss_formprivacy .busi_select .js_busi label {
		height: 30px;
		line-height: 30px;
		padding: 3px 10px;
	}
}

@media screen and (max-width: 767px) {
	#ss_stage, .ticket_area, #ss_stage_bottom {
		width: 95%;
	    margin-right: auto;
	    margin-left: auto;
	}
	#ss_container, #ss_container_bottom {
		width: auto;
		font-size: 1em
	}
	.sb_complete_index #ss_contents p.ss_comMsg {
		margin-right: 15px;
	}
	#ss_footer {
		width: initial;
	}
	#ss_contents .ss_form table.ss_cartTable {
		width: 100%;
	}
	.label-important,
	span.label.label-attention{
		font-size: 14px;
		padding-top: 4px;
	}
	.ss_timetable_responsive {
		display: block;
	}
	.ss_timetable_responsive .pc_disp,
	.ss_cartTable .pc_disp {
		display: none;
	}
	#ss_contents .ss_timetable_responsive .ss_td .sp_disp,
	#ss_contents .ss_cartTable .sp_disp {
		display: block;
		font-weight: bold;
		margin-bottom: 0;
	}
	.ss_timetable_responsive .ss_td {
		align-items: flex-start;
		padding-left: 6px;
		min-height: 42px
	}
	#ss_contents .ss_form .ss_formprivacy tr:not(.disp_none, #compnone) {
	    display: flex;
	    flex-direction: column;
	}
	#ss_contents .ss_form .ss_formprivacy th {
		display: block;
		width: auto;
		height: auto;
		padding-bottom: 6px;
	}
	#ss_contents .ss_form .ss_formprivacy td {
		display: block;
		padding-top: 10px;
	}
	.sb_custom_index #ss_contents .ss_form .ss_formprivacy td {
		height: auto;
		padding-bottom: 10px;
	}
	.sb_custom_index #ss_contents .ss_form .ss_formprivacy td ul {
	    display: flex;
	    flex-direction: column;
	}
	.sb_custom_index #ss_contents .ss_form .ss_formprivacy ul li.ss_input {
		width: 95%;
	}
	#ss_contents .ss_form .ss_formprivacy ul li.ss_input input:not([type="checkbox"], [type="radio"]),
	#ss_contents .ss_form .ss_formprivacy ul li.ss_input textarea,
	#ss_contents .ss_form .ss_formprivacy ul li.ss_input select {
		width: 100%;
		height: 30px;
		text-indent: 6px;
		font-size: 1em;
	}
	#precompnone .ss_input input {
		margin: 0;
	}
	#precompnone .ss_input .ss_txtRedB br:nth-of-type(1) {
		display: none;
	}

	#ss_contents .ss_form .ss_formprivacy #precompnone ul > div + div {
		margin-top: 4px;
	}

	#ss_contents .ss_form .ss_formprivacy .js_check.busi_select .js_busi,
	#ss_contents .ss_form .ss_formprivacy .js_check:not(.busi_select) .ss_input{
		display: flex;
		flex-direction: column;
	}
	#ss_contents .ss_form .ss_formprivacy .js_check label + label {
		margin-top: 10px;
	}

	#ss_contents div.ss_btnArea > p {
		display: flex;
		justify-content: space-evenly;
	}

	#ss_stage p.attention, #ss_stage_bottom p.attention {
		text-align: left;
	}

	.ticket_area .wraptable {
		overflow: auto;
	}
	.ticket_area #ss_Printbtn {
		width: auto !important;
	}
}

/* 英語項目名表示 */
#ss_contents p.js-en-name {
    margin: 0;
}

/* add 2025 */
.js_txtRedB {
	color: #FF0000;
	font-weight: bold;
}
.sb_custom_index #ss_contents .ss_form .ss_formprivacy td:has(.ss_txtRedB, .js_txtRedB) {
	background-color: #FFDDEE;
}
.sb_custom_index .regist_mess_area input,
.sb_complete_index .ss_comMsg input {
    padding: 5px 10px;
}
@media screen and (max-width: 767px) {
	#ss_contents .ss_form .ss_personal_chk .ss_input .ss_txtRedB + br {
		display: none;
	}
}
@media screen and (min-width: 768px) {
	#precompnone .ss_input:has(.js_txtRedB) {
		width: min-content;
	}
	#precompnone .js_txtRedB {
		display: inline-block;
		word-break: auto-phrase;
		text-indent: -1.5em;
		padding-left: 1.5em;
	}
}
/* .sb_complete_index #ss_contents .btn_img {
	display: block;
    margin: 5px 0 0;
    text-align: center;
} */
/* .sb_complete_index #ss_contents .btn_img a {
    cursor: pointer;
} */
.sb_complete_index #ss_contents p .js_loginId {
    font-size: 16px;
    font-weight: bold;
    color: #FF0000;
}

#ss_contents .new_application {

	.new_application_header {
		font-size: 1.3em;
		font-weight: bold;
		/* 202512追記 */
		margin-bottom: 10px;
	}
	/* .new_application_link {
		text-align: center;
		margin: 15px 0; */
	/* } */
	.new_application_link + p {
		/* 202512追記 */
		margin: 10px;
		color: #f00;
	}
}
.authorized0 .new_application {
	display: none;
}

/* add 202512 */
.text-below{
	display: flex;
	color: #f00;
}

@media screen and (max-width: 767px) {
	.text-below{
		display: none;
	}
	#sp_only{
		color: #f00;
}
}

.new_application_link {
	display: block;
	width: fit-content;
    margin: 5px auto;
	color: #FFFFFF !important;
	padding: 5px 20px;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
	background: linear-gradient(to bottom, #a0c4ff 0%, #70a1ff 50%, #5a90ff 100%);
    
    /* 3. 外枠：背景に合わせて少し明るい青の枠線 */
    border: 1px solid #70a1ff;
    border-radius: 6px;
    
    /* 4. 立体感：影を少し柔らかく */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	white-space: nowrap;
}

.btn_img {
	display: block;
	width: fit-content;
    margin: 0 auto;
	color: #FFFFFF !important;
	padding: 5px 20px;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
	background: linear-gradient(to bottom, #a0c4ff 0%, #70a1ff 50%, #5a90ff 100%);
    
    /* 3. 外枠：背景に合わせて少し明るい青の枠線 */
    border: 1px solid #70a1ff;
    border-radius: 6px;
    
    /* 4. 立体感：影を少し柔らかく */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
	cursor: pointer;
	white-space: nowrap;
}

#ss_Printbtn input {
	color: #FFFFFF !important;
    padding: 5px 20px;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    background: linear-gradient(to bottom, #a0c4ff 0%, #70a1ff 50%, #5a90ff 100%);
    border: 1px solid #70a1ff;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    cursor: pointer;
	white-space: nowrap;
} 