@charset "UTF-8";

button, input, select, textarea{font-family:inherit;}

/* 入力モード切替 ※IEのみ有効 */
.ime_ac {ime-mode: active;}
.ime_dis {ime-mode: disabled;}

/*
.input_txt
テキストフィールド
.textarea
テキストエリア
*/
.inpt_txt,
.textarea{font-size:14px;line-height:1.4;background:#fff;padding:2px 6px;box-sizing:border-box;border:1px solid #999;border-radius:4px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:background-color .3s, border-color .3s;resize:none;}
.inpt_txt::placeholder{color:#999;}
.inpt_txt::-ms-input-placeholder{color:#999;}
.inpt_txt:-ms-input-placeholder{color:#999;}
.textarea::placeholder{color:#999;}
.textarea::-ms-input-placeholder{color:#999;}
.textarea:-ms-input-placeholder{color:#999;}
.inpt_txt:hover,
.textarea:hover{border-color:#555;}
.inpt_txt:focus,
.textarea:focus{border-color:var(--sub-color);}

/*
.gcal
jQuery UI Datepickerの表示調整用
*/
.ui-datepicker{width:20em;z-index:100!important;}
.ui-datepicker,
.ui-datepicker table td{font-size:1.4em!important;}
.ui-datepicker select.ui-datepicker-year, .ui-datepicker select.ui-datepicker-month{width:auto;}
.ui-datepicker select.ui-datepicker-month{margin-left:1em;}
.ui-datepicker td span,
.ui-datepicker td a{text-align:center;}
.ui-datepicker td.custom-calendar-saturday a.ui-state-default{background-color: #c1e0ff;}
.ui-datepicker td.custom-calendar-sunday a.ui-state-default,
.ui-datepicker td.custom-calendar-holiday a.ui-state-default{background-color: #ffc1c1;}

/*
.select_box
セレクトボックス
*/
.select_box{display:inline-block;background-color:#fff;position:relative;border:1px solid #999;border-radius:4px;transition:border-color .3s;}
.select_box:hover{border-color:#555;}
.select_box::after{content:"";display:block;height:6px;width:6px;margin-top:-3px;border:1px solid;border-color:transparent transparent #000 #000;position:absolute;right:8px;top:50%;transform:translateY(-50%) rotate(-45deg);}
.select_box select{font-size:14px;line-height:23px;letter-spacing:0.04em;background:none;height:23px;width:100%;margin:0;padding:0 22px 0 8px;box-sizing:border-box;overflow:hidden;position:relative;border:none;-moz-appearance:none;-webkit-appearance:none;-o-appearance:none;-ms-appearance:none;appearance:none;cursor:pointer;z-index:1;}
.select_box select::-ms-expand{display:none;}

/*
.radio
ラジオボタン
*/
.radio{font-size:14px;line-height:20px;display:inline-block;margin:2px 0;padding:0;position:relative;border:0 none;cursor:pointer;}
.radio input{height:1px;width:1px;opacity:0;cursor:pointer;position:absolute;top:0;left:0;transition:.3s;}
.radio > span{vertical-align:top;display:inline-block;width:100%;padding:0 0 0 24px;box-sizing:border-box;position:relative;}
.conditions .radio > span{color:#fff;}
.radio > span::before{content:"";display:block;background:#fff;box-sizing:border-box;width:20px;height:20px;margin:auto;border-radius:13px;box-sizing:border-box;border:3px solid #bbb;position:absolute;top:0;left:0;transition:border-color .2s;}
.radio.bgwh > span::before{border:none;box-shadow:1px 1px 3px rgba(0, 0, 0, .35) inset;}
.radio > span::after{content:"";display:block;box-sizing:border-box;width:8px;height:8px;margin:auto;border-radius:6px;background:var(--sub-color);position:absolute;top:6px;left:6px;transition:opacity .2s;opacity:0;}
.radio.bgwh > span::after{width:10px;height:10px;top:5px;left:5px;}
.radio > span:hover::before{border-color:#999;}
.radio input:checked + span::before{border-color:var(--sub-color);}
.radio input:checked + span::after{opacity:1;}

/*
.checkbox
チェックボックス
*/
.checkbox{font-size:14px;line-height:18px;display:inline-block;margin:3px 0;padding:0;box-sizing:border-box;position:relative;border:0 none;cursor:pointer;}
.checkbox > input{height:1px;width:1px;opacity:0;cursor:pointer;position:absolute;top:0;left:0;transition:.3s;}
.checkbox > span{vertical-align:top;display:inline-block;width:100%;padding:0 0 0 24px;box-sizing:border-box;position:relative;}
.checkbox > span::before{content:"";display:block;background:#bbb;width:18px;height:18px;margin:auto;border-radius:3px;box-sizing:border-box;position:absolute;top:0;left:0;transition:background-color .2s;}
.checkbox.bgwh > span::before{background:#fff;box-shadow:1px 1px 3px rgba(0, 0, 0, .35) inset;}
.checkbox > span::after{content:"";display:block;width:4px;height:9px;transform:rotate(40deg);border-bottom:2px solid #fff;border-right:2px solid #fff;position:absolute;top:2px;left:6px;transition:opacity .2s;opacity:0;}
.checkbox.bgwh > span::after{width:5px;height:11px;border-bottom:3px solid var(--sub-color);border-right:3px solid var(--sub-color);top:1px;left:5px;}
.checkbox > span:hover::before{background:#999;}
.checkbox.bgwh > span:hover::before{background:#eee;}
.checkbox input:checked + span::before{background:var(--sub-color);}
.checkbox.bgwh input:checked + span::before{background:#fff;}
.checkbox input:checked + span::after{opacity:1;}
/* 不活化処理 */
.checkbox.disabled{pointer-events:none;}
.checkbox.disabled > input:disabled + span{color:var(--ico-color);}
.checkbox.disabled > input:disabled + span::before{background:#DDD;}

/*
.input_file_box
ファイル登録
*/
.input_file_box .input_file{cursor:pointer;}
.input_file_box .input_file > .inner{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.input_file_box .input_file .file_button {font-size:14px;line-height:23px;
  display:inline-block;margin:0 10px 0 0;padding:0 8px;background:#FFF;box-sizing:border-box;border:1px solid #999;border-radius:4px;}
@media screen and (min-width:768px) {
  .input_file_box .input_file:hover .file_button{border-color:#777;}
}
.input_file_box .input_file #input_file_name{font-size:14px;}
.input_file_box input[type="file"]{display:none;}

/*
.button
ボタン
*/
.button{font-size:14px;line-height:22px;text-decoration:none;color:#000;display:inline-block;background:#fff;height:24px;padding:0 10px;box-sizing:border-box;border:1px solid #999;border-radius:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;transition:border-color .2s;}
.button.off{color:#999;border-color:#CCC;pointer-events:none;}
.button:hover{border-color:#555;}
.button::-webkit-search-decoration {display:none;}

/*
.button_m
ボタン 中
*/
.button_m{font-size:16px;line-height:30px;color:#fff;display:inline-block;background:var(--sub-color);height:30px;padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;transition:transform .2s, transform .2s;}
.button_m:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1);transform:translateY(2px);}
.button_m::-webkit-search-decoration {display:none;}

/*
.button02_m
ボタン 中
*/
.button02_m{font-size:16px;line-height:30px;color:#fff;display:inline-block;background:var(--main-color);height:30px;padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;transition:transform .2s, transform .2s;}
.butto02_m:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1);transform:translateY(2px);}
.button02_m::-webkit-search-decoration {display:none;}

/*
.button_l
ボタン 大
*/
.button_l{font-size:18px;line-height:40px;color:#fff;display:inline-block;background:var(--sub-color);height:40px;padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;transition:transform .2s, transform .2s;}
.button_l:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1);transform:translateY(2px);}
.button_l::-webkit-search-decoration {display:none;}

/*
.button02_l
ボタン 大（メインカラー）
*/
.button02_l{font-size:18px;line-height:40px;color:#fff;display:inline-block;background:var(--main-color);height:40px;padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer;transition:transform .2s, transform .2s;}
.button02_l:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1);transform:translateY(2px);}
.button02_l::-webkit-search-decoration {display:none;}

/*
.button_ll
ボタン 特大
*/
.button_ll{font-size:18px;line-height:45px;color:#fff;vertical-align:top;display:inline-block;background:var(--sub-color);padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:28px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:transform .2s, transform .2s;}
.button_ll:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1); transform:translateY(2px);}
.button_ll.off{color:#999;background-color:#ccc;box-shadow:none;pointer-events:none;}

/*
.button02_ll
ボタン 特大（メインカラー）
*/
.button02_ll{font-size:18px;line-height:45px;color:#fff;vertical-align:top;display:inline-block;background:var(--main-color);padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:28px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:transform .2s, transform .2s;}
.button02_ll:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1); transform:translateY(2px);}
.button02_ll.off{color:#999;background-color:#ccc;box-shadow:none;pointer-events:none;}

/*
.button03_l
ボタン 特大（白）
*/
.button03_ll{font-size:18px;line-height:45px;color:#000;vertical-align:top;display:inline-block;background:#FFF;padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:28px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:color .2s, background-color .2s, box-shadow.2s, transform .2s;}
.button03_ll:hover{color:var(--sub-color);box-shadow:0 1px 1px rgba(0, 0, 0, .1); transform:translateY(2px);}
.button03_ll.off{color:#999;background-color:#ccc;box-shadow:none;pointer-events:none;}

/*
.button_lll
ボタン 超特大
*/
.button_lll{font-size:20px;line-height:60px;color:#fff;vertical-align:top;display:inline-block;background:var(--sub-color);padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:30px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:transform .2s, transform .2s;}
.button_lll:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1); transform:translateY(2px);}
.button_lll.off{color:#999;background-color:#ccc;box-shadow:none;pointer-events:none;}

/*
.button02_lll
ボタン 超特大（メインカラー）
*/
.button02_lll{font-size:20px;line-height:60px;color:#fff;vertical-align:top;display:inline-block;background:var(--main-color);padding:0 20px;box-sizing:border-box;box-shadow:0 1px 1px rgba(0, 0, 0, .2);border:none;border-radius:30px;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:transform .2s, transform .2s;}
.button02_lll:hover{box-shadow:0 1px 1px rgba(0, 0, 0, .1); transform:translateY(2px);}
.button02_lll.off{color:#999;background-color:#ccc;box-shadow:none;pointer-events:none;}