#presetUpload{
	padding:5px;
	font-weight:bold; font-size:1.3em;
	font-family:Arial, Helvetica, sans-serif;
	text-align:center;
	background:#f2f2f2;
	color:#3366cc;
	border:1px solid #ccc;
	width:300px;
	cursor:pointer !important;
	-moz-border-radius:5px; -webkit-border-radius:5px;
}

/*
#uploadFile{
	padding:5px;
	font-weight:bold; font-size:1.3em;
	font-family:Arial, Helvetica, sans-serif;
	text-align:center;
	background:#f2f2f2;
	color:#3366cc;
	border:1px solid #ccc;
	width:300px;
	cursor:pointer !important;
	-moz-border-radius:5px; -webkit-border-radius:5px;
}

#uploadUserIcon{
	padding:5px;
	font-weight:bold; font-size:1.3em;
	font-family:Arial, Helvetica, sans-serif;
	text-align:center;
	background:#f2f2f2;
	color:#3366cc;
	border:1px solid #ccc;
	width:300px;
	cursor:pointer !important;
	-moz-border-radius:5px; -webkit-border-radius:5px;
}

#uploadFile2{
	padding:5px;
	font-weight:bold; font-size:1.3em;
	font-family:Arial, Helvetica, sans-serif;
	text-align:center;
	background:#f2f2f2;
	color:#3366cc;
	border:1px solid #ccc;
	width:300px;
	cursor:pointer !important;
	-moz-border-radius:5px; -webkit-border-radius:5px;
}
*/

.darkbg{
	background:#ddd !important;
}
#status{
	font-family:Arial; padding:5px;
}

ul#files{ list-style:none; padding:0; margin:0; }
ul#files li{ padding:10px; margin-bottom:2px; width:200px; float:left; margin-right:10px;}
ul#files li img{ max-width:180px; max-height:150px; }
.success{
/*
	background:#99f099;
	border:1px solid #339933;
*/
    color: #ee827c;/*変更*/
    text-align: center;
    width: 40%;/*追加*/
    margin: 0 auto;/*追加*/
    border-radius: 100px;/*追加*/
    border: 1px solid #dcdcdc;/*変更*/
    background: #fdeff2;/*変更*/
    margin-bottom: 10px;
}
.warning input.error,
.warning textarea.error,
.warning select.error {
	background:#f0f6b3 !important;
	border:1px solid #ccc622 !important;
}
.warning label.error {
	color: #999933;
}


img.arrow {cursor: pointer}
.tabs_subject_template .view-formbox{position: relative;margin-top:0px !important;padding: 0px !important;}
.tabs_subject_template .view-formbox .ttl_form{background: none repeat scroll 0 0 #F8F9E2;height: 100%;border: 1px solid #CCCCCC;padding: 0 10px;position: absolute;text-align: left;width: 22%;}
.tabs_subject_template .view-formbox .cti_form{border: 1px solid #CCCCCC;margin-left: 24%;padding: 6px;width: 75%;}
.tabs_content_visit_template .view-formbox{position: relative;}
.tabs_content_visit_template .view-formbox .ttl_form{background: none repeat scroll 0 0 #F8F9E2;height: 100%;border: 1px solid #CCCCCC;padding: 0 10px;position: absolute;text-align: left;width: 22%;}
.tabs_content_visit_template .view-formbox .cti_form{border: 1px solid #CCCCCC;margin-left: 24%;padding: 6px;width: 75%;}


#flashMessage,.flash_error {
/*
	background-color: #DCFFDC;
    border: 1px solid #66EE77;
    font-size: 14px;
    margin: 5px 12px;
    padding: 20px;
	color: #666666;
*/
/*
	color: #FF0000;
	text-align: center;
	border: 1px solid #ccc;
	background: #ffffe0;
	margin-bottom: 10px;
*/
    color: #ee827c;/*変更*/
    text-align: center;
    width: 80%;/*追加*/
	padding: 0 5px;
    border-radius: 10px;/*追加*/
    border: 2px solid #ee827c;/*変更*/
    background: #fdeff2;/*変更*/
    margin: 12px auto 0px auto ;
}

.flash-alert-success {
    color: #155724 !important;
    background-color: #d4edda !important;
    border-color: #c3e6cb !important;
}
/*
.flash_error {
	color: red;
	padding: 15px;
	font-size: 14px;
	border: 1px solid #eea7a8;
	padding: 15px;
	margin-bottom: 10px;
	background-color: #ffefeb;
}
*/
.checkbox {
	display: inline;
}

p.simple_message {
	height: 260px;
	margin-top: 140px;
	font-size: 14px;
	text-align: center;
}

.message-validation {
	color: #cc6622;
	font-size: 12px;
	display: block;
}

label.error, div.error-message {
/*	padding-left: 15px;*/
	/*    padding: 5px 20px; */
	/*    margin-top: 10px;*/
	/*    display: block;*/
	background: none;
	border:none;
	color: #cc6622;
	font-size: 12px;
	display: block;
}

p.description {
	margin: 25px 5px;
	font-size: 13px;
	text-align: left;
}


img.profile-icon-thumb {
	max-width: 100px;
	max-height: 100px;
}

.profile-icon-main {
	max-width: 100px;
	max-height: 100px;
}

.profile-icon-micro {
	max-width: 20px;
	max-height: 20px;
}

.study-icon {
	max-width: 48px;
	max-height: 48px;
}

.calendar-clear {
	font-size: 10px;
}

.required-mark {
	color: red;
}


.border-with-title-tab {
	margin-bottom: 30px;
}

.border-with-title-tab img {
	margin:0;
	padding:0;
	border:0;
	font-size:0;
	line-height:0;
	display: block;
}

.border-with-title-tab div.block {
	border: 1px solid #ccc;
	padding: 20px;
	margin-right: 20px;
}


.required-comment {
	font-size: 12px;
	color: red;
}

input.common_style_date_field {
/*	width: 156px;*/
	width: 110px;
	margin-right: 6px;
}
.form-group label {
    font-weight: 500;
}
#flashMessage, .flash_error {
    width: 100%;
    margin-bottom: 20px;
}

#fancybox-loading {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.35);
    backdrop-filter: blur(3px);
    z-index: 9999;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#fancybox-loading div {
    background: none;
}

#fancybox-loading .loader {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 18px;
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.25);
    min-width: 194px;
}

#fancybox-loading .spinner {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 3px solid #e5e7eb;
    border-top-color: #0d6efd;
    border-right-color: #0d6efd;
    animation: fancy-spin 0.8s linear infinite;
}

#fancybox-loading .loader span {
    font-size: 14px;
    font-weight: 700;
    color: #27C840;
    white-space: nowrap;
}

#fancybox-loading .loading-text {
    font-size: 14px;
    font-weight: 500;
    color: #27C840;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    animation: loading-pulse 1.4s ease-in-out infinite;
}

#fancybox-loading .loading-dots {
    display: inline-flex;
    margin-left: 2px;
}

#fancybox-loading .loading-dots span {
    display: inline-block;
    animation: dot-blink 1s infinite;
}

#fancybox-loading .loading-dots span:nth-child(2) {
    animation-delay: 0.2s;
}

#fancybox-loading .loading-dots span:nth-child(3) {
    animation-delay: 0.4s;
}
@keyframes fancy-spin {
	to {
		transform: rotate(360deg);
	}
}
@keyframes loading-pulse {
	0%, 100% { opacity: 0.8; transform: translateY(0); }
	50%      { opacity: 1;   transform: translateY(-0.5px); }
}
@keyframes dot-blink {
	0%   { opacity: 0.2; transform: translateY(0); }
	50%  { opacity: 1;   transform: translateY(-1px); }
	100% { opacity: 0.2; transform: translateY(0); }
}