:root{
    --normal-fg:#555;
    --action-fg:#304acd;
    --action-bg:#44758c;
    --action-on:#fff;
    --active-bg:#ff9;
    --submit-fg:#44758c;
    --submit-bg:#44758c;
    --submit-on:#fff;
    --cancel-fg:#c46868;
    --cancel-bg:#bc3d3d;
    --cancel-on:#fff;
    --label-fg :#44758c;
    --label-bg :#44758c;
    --label-on :#f5f5f5;
    --notice-bg:#ffff99;
    --notice-fg:#bebe6d;
    --notice-on:#5e5e08;
    --thead-bg :#44758c;
    --thead-on :#fff;
    --toggle-off-bg:#ddd;
    --toggle-off-on:#333;
    --toggle-on-bg :#44758c;
    --toggle-on-on :#fff;
    --border   :1px #e5e5e5 solid;
    --form-bg  :rgba(244, 244, 244, 0.95);
    --radius   :4px;
}
/*---------------------------------------------------------*/
body{  }
main{ padding-top:20px;padding-bottom:110px; }
.main_bg{ opacity:0.5; }
footer .main_wrap{ display:none; }
.footer{ padding-top:0;position:fixed;height:38px;bottom:0;width:100%; }
main > h2{ margin-bottom:40px; }
h2{ width:100%;color:var(--label-fg); }
h2.confirm:before { content:"\F26B" !important; }
h2.serif{ font-size:130%;font-weight:normal;font-family:serif;text-align:center;letter-spacing:3px;margin-top:20px; }
@media screen and (max-width:575px){
    main{ width:96%;margin:0 auto;padding-bottom:80px; }
    footer{ display:none; }
    .bt_page_top{ bottom:120px; }
}
/*---------------------------------------------------------*/
input[type="radio"]{ display:inline-block; }
.form_list_label{ display:block;width:100%;border:1px #ddd solid;border-radius:var(--radius);margin-bottom:4px;padding:4px;cursor:pointer; }
.form_list_label:has(input:checked){ background:var(--active-bg); }
/*---------------------------------------------------------*/
.num input[type="text"]{ text-align:right; }
/*---------------------------------------------------------*/
.center{ text-align:center; }
.white{ color:#f5f5f5; }
/*---------------------------------------------------------*/
.bt_large{ display:block;max-width:300px;text-align:center;border-radius:var(--radius);padding:16px 10px;margin:20px auto;background:var(--action-bg);color:var(--action-on); }
.bt_small{ padding:5px 10px;background:var(--action-bg);color:var(--action-on) !important;font-size:90%;border-radius:var(--radius); }
/*---------------------------------------------------------*/
.cc_form_wrap{ display:flex;gap:10px;flex-wrap:wrap;padding-bottom:50px;background:var(--form-bg);border-radius:var(--radius);padding:30px 20px 40px;margin:0 auto;max-width:720px;border:var(--border); }
.cc_form_wrap :is(.u_label, .u_field){ line-height:180%; }
.cc_form_wrap .u_label{ width:100%;margin-bottom:10px;color:var(--label-fg);border-left:5px #009 solid;border-color:var(--label-bg);padding-left:10px;font-weight:bold; }
.cc_form_wrap .u_field{ width:100%;margin-bottom:10px; }
.cc_form_wrap .u_label.hide{ display:none; }
.cc_form_wrap .u_field.hide{ display:none; }
.cc_form_wrap .u_field :is(input[type=text], input[type=password], select, textarea){ font-size:14px;border:1px #ddd solid; }
/* .cc_form_wrap .u_label.middle{ width:25%; }
.cc_form_wrap .u_field.middle{ width:calc(100% - 25% - 10px); } */
.cc_form_wrap .u_label.short{ width:10%; }
.cc_form_wrap .u_field.short{ width:calc(50% - 15%); }
.cc_form_wrap .u_label.essential::after{ content:'必須';background:var(--cancel-bg);color:var(--cancel-on);border-radius:var(--radius);position:absolute;font-size:80%;padding:1px 8px;font-weight:normal;margin-left:15px;top:3px;right:5px;line-height:160%; }
.cc_form_wrap .privacy_wrap{ text-align:center;padding:20px 0;width:100%; }
.cc_form_wrap .bt_wrap{ position:fixed;bottom:40px;width:100%;text-align:center;left:0; }
.cc_form_wrap .bt_submit{ -webkit-appearance:none;background-color:#009c84;background-image:none;border:none;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-block;font-size:112%;margin:1% auto;padding:10px 0;text-decoration:none;width:215px;letter-spacing:3px;line-height:160%; }
.cc_form_wrap .th{ width:100%;background:var(--thead-bg);color:var(--thead-on);padding:5px 10px;margin:40px 0 20px; }
.cc_form_wrap > .th{ margin-top:20px; }
#cc_dialog .cc_form_wrap .th{ margin:0; }
.cc_form_wrap textarea{ line-height:150%; }
.cc_form_wrap a{ color:var(--action-fg); }
.cc_form_wrap .u_field.text_min_height{ min-height:300px; }
/*---------------------------------------------------------*/
.cc_form_wrap .u_field .cc_form_wrap:has([data-name="name_sei"], [data-name="name_mei"], [data-name="kana_sei"], [data-name="kana_mei"], [data-name="president_sei"], [data-name="president_mei"]){ width:100% !important; }
.cc_form_wrap .cc_form_wrap .u_field :is([data-name="name_sei"], [data-name="name_mei"], [data-name="kana_sei"], [data-name="kana_mei"], [data-name="president_sei"], [data-name="president_mei"]){ width:fit-content !important; }
.cc_form_wrap .cc_form_wrap .u_field:has([data-name="name_sei"], [data-name="name_mei"], [data-name="kana_sei"], [data-name="kana_mei"], [data-name="president_sei"], [data-name="president_mei"]){ width:fit-content !important; }
/*---------------------------------------------------------*/
.cc_form_wrap.confirm .u_label{ padding:5px;background:#fefefe;border-radius:5px;text-align:center; }
.cc_form_wrap.confirm .u_field{ padding:5px; }
/*---------------------------------------------------------*/
.cc_form_wrap .u_field .cc_form_wrap{ background:transparent;padding-bottom:0;padding:0px 0;border:none;max-width:none;align-items:center; }
.cc_form_wrap .cc_form_wrap :is(.u_label, .u_field){ padding-left:0;margin-bottom:0; }
.cc_form_wrap .u_field .cc_form_wrap .u_label{ border:none;font-weight:normal; }
.cc_form_wrap .u_field .cc_form_wrap .u_label:not(.short){ width:25%; }
.cc_form_wrap .u_field .cc_form_wrap .u_field:not(.short){ width:calc(75% - 20px);margin-bottom:0; }
.cc_form_wrap .u_field .cc_form_wrap .u_label.long{ width:100%; }
.cc_form_wrap .u_field .cc_form_wrap .u_field.long{ width:100%; }
.cc_form_wrap .u_field .cc_form_wrap .u_field{ line-height:120%; }
/*---------------------------------------------------------*/
.cc_form_wrap .u_field.date select{ width:80px; }
/*---------------------------------------------------------*/
.cc_form_wrap .u_label:not(.long):has(+ .u_field .just_label){ width:28%; }
.cc_form_wrap .u_field:has(> .just_label){ width:calc(70% - 20px); }
.cc_form_wrap.cc_confirm .just_label div{ display:inline-block; }
/*---------------------------------------------------------*/
.cc_form_wrap.cc_confirm .u_label:not(.short){ width:28%; }
.cc_form_wrap.cc_confirm .u_field:not(.short){ width:calc(100% - 28% - 20px); }
.cc_form_wrap.cc_confirm a{ color:var(--action-fg); }
.cc_form_wrap.cc_confirm :is([data-name*="postalcode1"], [data-name*="postalcode2"]){ display:inline-block; }
.cc_form_wrap.cc_confirm .confirm_item{ display:inline-block; }
/*---------------------------------------------------------*/
.cc_form_wrap hr{ width:100%;border:none;background:#999;height:1px;margin-bottom:20px; }
/*---------------------------------------------------------*/
.dialog_template > .cc_form_wrap{ border:1px #fff solid; }
@media screen and (max-width:575px){
    .cc_form_wrap .u_label{ width:100%; }
    .cc_form_wrap .u_field{ width:100%; }
    .cc_form_wrap .u_label.short{ width:15%; }
    .cc_form_wrap .u_field.short{ width:calc(100% - 20%); }
    .cc_form_wrap .u_field .u_label{ color:#777;font-size:96%; }
    .cc_form_wrap.confirm .u_label{ text-align:left;background:transparent;border-bottom:1px #ddd solid; }
    .cc_form_wrap .u_field :is(input[type=text], input[type=password], select, textarea){ font-size:16px; }
    .cc_form_wrap.cc_confirm .u_label:not(.short){ width:100%; }
    .cc_form_wrap.cc_confirm .u_field:not(.short){ width:100%; }
    .cc_form_wrap .u_field .cc_form_wrap .u_label:not(.short){ width:100%; }
    .cc_form_wrap .u_field .cc_form_wrap .u_field:not(.short){ width:100%; }
}
/*---------------------------------------------------------*/
.expart_row{ width:49%;margin:0;border:1px #ddd solid;padding:20px 10px;margin-bottom:20px;border-radius:var(--radius);background:#fefefe; }
.expart_row .icon{ display:flex;gap:10px;align-items:center;margin-bottom:3px;flex-wrap:wrap; }
.expart_row .icon .image{ width:20%; }
.expart_row .icon .image img{ width:100%;object-fit:cover;aspect-ratio:1/1.4;border-radius:7px; }
.expart_row .icon .name{ width:70%;font-size:120%;color:#555;font-family:serif; }
.expart_row .icon .name span{ font-size:85%; }
.expart_row .info{ align-items:flex-start; }
.expart_row .comm{ width:100%;font-size:95%; }
.expart_row.detail .info{ gap:2px 10px; }
.expart_row.detail .info .name{ font-size:140%;cursor:auto;color:#555; }
.expart_row.detail .info .field{ margin-bottom:10px; }
.flex_list{ display:flex;flex-wrap:wrap;font-size:90%;justify-content:space-between; }
.flex_list .label{ width:100%;padding:1px;height:100%;color:var(--label-fg);border-radius:4px;white-space:nowrap; }
.flex_list .field{ width:100%;padding:1px; }
.flex_list .field.strict{ overflow:hidden;white-space:nowrap;text-overflow:ellipsis; }
.flex_list .label.short{ width:calc(15% - 3px); }
.flex_list .field.short{ width:calc(35% - 3px); }
.flex_list .field.long{ width:100%;margin-bottom:5px; }
@media screen and (max-width:575px){
    .expart_row{ width:100%; }
    .flex_list .label{ width:100%; }
    .flex_list .field{ width:100%; }
}
/*---------------------------------------------------------*/
.cc_tab_wrap{ max-width:850px;margin:0 auto;font-size:0; }
.cc_tab{ display:inline-block;padding:10px;background:#666;color:#fff;border-radius:4px 4px 0 0;min-width:80px;text-align:center;margin-right:1px; }
.cc_tab.active{ background:#f5f5f5;color:var(--normal-fg); }
@media screen and (max-width:575px){
    .cc_tab_wrap{ text-align:center; }
}
/*---------------------------------------------------------*/
.cc_list_wrap{ background:#f5f5f5;margin:0 auto;max-width:850px;padding:10px;border-radius:var(--radius);border-top-left-radius:0;padding-top:14px;overflow-y:scroll; }
.cc_list_wrap table{ width:100%;border-collapse:collapse; }
.cc_list_wrap th{ background:var(--label-bg);color:var(--label-on);font-weight:normal; }
.cc_list_wrap td{ background:#fff; }
.cc_list_wrap th, .cc_list_wrap td{ border:2px #f5f5f5 solid;padding:5px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:390px; }
.cc_list_wrap td a{ color:var(--label-fg); }
@media screen and (max-width:575px){
    .cc_list_wrap{ border-top-left-radius:var(--radius); }
}
/*---------------------------------------------------------*/
.postit_head{ width:calc(50% - (650px / 2) - 20px);max-width:400px;position:absolute;color:var(--action-fg);top:0;left:calc(50% + (650px / 2));border-radius:var(--radius);text-align:right; }
.postit{ width:calc(50% - (650px / 2) - 20px);max-width:400px;position:absolute;background:var(--notice-bg);padding:5px 5px;left:calc(50% + (650px / 2));border-radius:var(--radius);overflow:scroll;transform:translateY(-10px); }
.postit:has(> .cc_thumbs){ overflow:hidden; }
.postit .postit_in_head{ font-size:90%;color:var(--notice-on);margin-bottom:2px; }
.cc_form_wrap .u_field.change{ border-bottom:4px #999 solid;border-color:var(--notice-fg); }
.cc_form_wrap .u_field.change:has(.cc_thumbs){ padding-bottom:5px; }
.postit .cc_thumbs{ margin-bottom:0; }
/*---------------------------------------------------------*/
.bt_filter{ display:inline-block;font-size:18px;background:#f5f5f5;color:var(--action-fg);padding:7px;border-radius:var(--radius);aspect-ratio:1/1;line-height:100%;margin-left:10px; }
.bt_filter.badge::after{ content:"●";color:#c00;position:absolute;font-size:10px;top:-8px; }
.filter_wrap{ padding:0 2%; }
@media screen and (max-width:575px){
    .bt_filter{ position:absolute;right:0px;top:-40px; }
}
/*---------------------------------------------------------*/
input.sql_select, input.sql_select:focus{ background:var(--action-bg);color:var(--action-on);padding:2px 15px;border-radius:50px;font-size:90%;border:none;user-select:none;cursor:pointer; }
.u_field:has(input.sql_select)::before{ font-family:'bootstrap-icons';content:"\F622";position:absolute;top:9px;right:12px;font-size:90%;color:var(--cancel-fg);background:#fff;border-radius:50px;line-height:100%;padding:1px;pointer-events:none; }
/*---------------------------------------------------------*/
.sql_filter_list_wrap{  }
.sql_filter_list_wrap table{ table-layout:fixed;width:100%; }
.sql_filter_list td{ white-space:nowrap;padding:5px 10px;background:#f5f5f5;color:var(--action-fg);cursor:pointer; }
.sql_filter_list td.cut{ overflow:hidden;text-overflow:ellipsis; }
.sql_filter_notice{ font-size:90%;background:var(--notice-bg);color:var(--notice-on);padding:5px 10px; }
@media screen and (max-width:575px){
    .sql_filter_list_wrap{ width:100%; }
}
/*---------------------------------------------------------*/
.form_datepicker{ display:inline-block; }
.cc_confirm .form_datepicker i{ display:none; }
.cc_confirm .form_datepicker a{ color:var(--normal-fg);cursor:auto; }
/*---------------------------------------------------------*/
#survey{  }
#survey input[type="text"]{ font-size:90%;width:calc(100% - 220px); }
#survey .option{ display:inline-block;padding:4px 4px;font-size:95%;background:var(--toggle-off-bg);color:var(--toggle-off-on);border-radius:var(--radius);margin-left:2px; }
#survey .option.active{ background:var(--toggle-on-bg);color:var(--toggle-on-on); }
#survey .option:hover{ opacity:1; }
#survey .q_wrap{ padding:10px;background:#ff9;margin-bottom:20px;border-radius:var(--radius); }
#survey .a_list{ margin-top:5px; }
#survey .a_list input[type="text"]{ width:300px; }
#survey .a{ margin-bottom:2px; }
#survey .bt_delete{ display:inline-block;padding:4px 4px;font-size:95%;background:var(--cancel-bg);color:var(--cancel-on);border-radius:var(--radius);margin-left:4px; }
#survey .bt_add_a{ padding:4px 4px;background:var(--action-bg);color:var(--action-on);border-radius:var(--radius);font-size:85%;margin-left:20px; }
/*---------------------------------------------------------*/