@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
nav ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }
input, select { vertical-align: middle; }
*, *::before, *::after { box-sizing: border-box; }
html { height: -webkit-fill-available; overflow-y: scroll !important; font-size: 62.5%; -moz-text-size-adjust: none; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; overflow-y: scroll; margin: 0; padding: 0; border: 0; text-align: left; }
body { font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; font-weight: normal; display: block; position: relative; min-width: 1280px; overflow-wrap: break-word; word-wrap: break-word; word-break: normal; }
.inner { width: 100%; margin: 0 auto; position: relative; padding: 0 30px; }
main { width: 100%; margin: 0 auto; }
.main_content { padding: 0px 0 30px 0; }
.pc{display:block;}
.sp{display:none;}
@media screen and (max-width:1280px) {
    body { min-width: initial; min-height: -webkit-fill-available;}
}
@media screen and (max-width:768px){
    .pc{display:none;}
    .sp{display:block;}
}

/* =========================================================
共通 input
========================================================= */
input[type="text"], input[type="password"], input[type="date"], input[type="loginID"], input[type="customerID"], select, textarea { display: block; height: 40px; background: #F9F9F9; border: 1px solid #E4E4E4; width: 100%; font-size: 14px; padding: 0 20px; border-radius: 5px; box-sizing: border-box; position: relative;}

/* =========================================================
共通 btn
========================================================= */
.btn { font-size: 14px; display: block; margin: 0 auto; width: 160px; height: 35px; border-radius: 5px; background-color: #008e0b; text-align: center; color: #fff; display: flex; align-items: center; justify-content: center; line-height: 0; }
.btn.off { opacity: .3; }
.btn_group { display: flex; }

/* =========================================================
共通 状態カラー
========================================================= */
.normal { background-color: #e8f8e9; }
.anomaly { background-color: #fcef8b; }
.breaktime { background-color: #e0f2fe; }
.departure { background-color: #f0f0f0; }
.holiday { border: solid 1px #b9b9b9; background-color: #fff; }
.error { background-color: #fedde1; }
.red { color: #f00; font-weight: bold; }
/*　0822追加　*/
.space { background-color: #ffffff; }

/* =========================================================
共通 side-menu
========================================================= */
.sidemenu_on #wrap { display: flex; justify-content: left; position: relative; }
.sidemenu_on main { padding: 0 0 0 100px; }
#side-menu { position: fixed; z-index: 1; width: 100px; background-color: #f7f7f9; height: 100vh; display: flex; justify-content: center; align-items: baseline; }
#side-menu li { margin: 25px auto 0; font-size: 11px; text-align: center; }
#side-menu li.main_title { margin: 24px auto 31px; }
#side-menu li.side-menu-line { background: #DEDEE0; display: block; height: 1px; width: 80px; margin: 32px auto 0; }
#side-menu li img { display: block; margin: 0 auto; }
#side-menu .img_icon { margin: 0 auto 2px; width: 38px; height: 38px; border-radius: 5px; display: flex; justify-content: center; align-items: center; }
#side-menu .active .img_icon { background-color: #D6EDDA; }

/* =========================================================
共通 top_content
========================================================= */
.top_content_fixed #top_content{position: fixed; top: 0; width: calc(100% - 100px); z-index: 1; background: #FFF; left: 100px;}
.top_content_fixed .main_content { padding: 90px 0 30px 0; }

#top_content .inner { height: 90px; position: relative; }
#top_content .inner, #top_content .status ul, #top_content .status ul li { display: flex; justify-content: left; align-items: center; }
#top_content h1 { font-size: 20px; font-weight: bold; margin: 0; }
#top_content .status { font-size: 12px; position: absolute; margin: 0 0 0 200px; }
#top_content .status ul li { margin: 0 20px 0 0; }
#top_content .status .status_color { display: block; width: 20px; height: 20px; border-radius: 5px; margin: 0 8px 0 0; }
#top_content .date_und_logout { font-size: 14px; margin-left: auto; display: flex; justify-content: left; align-items: center; }
#top_content .logout { margin: 0 0 0 32px; }
#top_content .logout img { margin: 0 8px 0 0; vertical-align: sub; }
@media screen and (max-width:1280px) {
    #top_content .status { margin: 0 0 0 13.2vw; }
}

/* =========================================================
共通 テーブル
========================================================= */
table { margin: 0 auto; border-spacing: 0; border-collapse: separate; width: 100%; }
table th, table td { border-top: 1px solid #eaeaea; border-left: 1px solid #eaeaea; }
table th { background: #F7F7F9; color: #000000; vertical-align: middle; }
table td { border-top: 1px solid #eaeaea; border-left: 1px solid #eaeaea; vertical-align: middle; }
table td:last-child { border-right: 1px solid #eaeaea; }
table tr:last-child td { border-bottom: 1px solid #eaeaea; }
table tr:first-child :first-child { border-top-left-radius: 5px; }
table tr:first-child :last-child { border-top-right-radius: 5px; }
table tr:last-child :first-child { border-bottom-left-radius: 5px; }
table tr:last-child :last-child { border-bottom-right-radius: 5px; }

/* =========================================================
共通 sp_header
========================================================= */
@media only screen and (max-width:768px){
    .sp_header{height:60px;padding: 0 4vw; display: flex; align-items: center;border-bottom:1px solid #E4E8ED;}
    .sp_header img{width:45px;}
    h1{font-size: 5.333vw; font-weight:bold; margin: 10.666vw 0 0;}
}

/* =========================================================
body__login ログイン
========================================================= */
.body__login #wrap { display: grid; grid-template-columns: 100vw; grid-template-rows: 100vh; }
.body__login main { justify-self: center; align-self: center; margin: -90px auto 0; max-width: 400px; }
.body__login .main_title { display: block; margin: 0 auto; width: 108px; }
.body__login form { margin: 60px auto 0; font-size: 14px; }
.body__login input { margin: 10px auto 0 auto; width: 400px; }
.body__login input.btn { width: 160px; }
.body__login .form_box:nth-child(-n+3) { margin: 35px auto 0; }
.body__login .form_box:last-child { margin: 30px auto 0; }

@media only screen and (max-width:768px){
    .body__login .main_title{display:none; }
    .body__login #wrap{display:block;}
    .body__login main { margin: 0 auto 0; padding:0 4vw; max-width: 100%;}
    .body__login form{margin: 10.66vw auto 0; font-size: 3.73vw;}
    .body__login input{width:100%;margin: 3vw auto 0 auto; height: 10.666vw;font-size: 3.73vw;}
    .body__login .form_box:nth-child(-n+3){margin: 10.66vw auto 0;}
    .body__login .form_box:last-child{margin: 10.66vw auto 0;}
    .body__login input.btn{width: 42.666vw; height: 9.333vw;font-size: 3.73vw;}
}

/* =========================================================
body__driver_list 管理画面
========================================================= */
.body__driver_list #top_content .inner { padding: 0px 30px 0px 20px; }
.body__driver_list .main_content .inner { padding: 0 20px; }
.driver_list { display: flex; align-content: stretch; justify-content: left; flex-wrap: wrap; margin-right: -10px; }
.driver_list li { display: flex; align-items: center; width: 225px; min-height: 143px; width: calc(100%/5 - 10px); border-radius: 5px; font-size: 14px; margin: 0 10px 10px 0; }
.driver_list li a { padding: 20px; display: block; height: 100%; width: 100%; }
/* .driver_list li input { padding: 20px; display: block; height: 100%; width: 100%; } */
.driver_list .driver_date { background: url('/img/icon_admin.svg'); background-repeat: no-repeat; background-size: 15px; display: flex; justify-content: left; align-items: center; flex-wrap: wrap; padding: 0 0 0 30px; }
.driver_list .driver_date .name { font-size: 16px; font-weight: bold; margin: 0 10px 0 0; }
.driver_list .driver_date .age { display: block; }
.driver_list .number { background: url('/img/icon_car.svg'); background-repeat: no-repeat; background-size: 17px; margin: 22px 0 0 0; padding: 0 0 0 30px; }
.driver_list .section, .driver_list .time { margin: 11px 0 0 0; padding: 0 0 0 30px; }
@media screen and (max-width:1280px) {
    .body__driver_list #top_content .status { margin: 0 0 0 14vw; }
    .driver_list li { font-size: 1.09375vw; }
    .driver_list li a { padding: 1.5625vw 1vw 1.5625vw 1.5625vw; }
    .driver_list .driver_date { background-size: 1.171875vw; }
    .driver_list .number { background-size: 1.35vw; margin: 1.71875vw 0 0 0; }
}

/* =========================================================
body__driver_details ドライバー詳細
========================================================= */
.main_content .inner { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; }
.driver_status { width: 56.3%; }
.driver_status .driver_status_inner { padding: 30px; border-radius: 5px; border: 1px solid #e8f8e9; height: 100%; max-height: 600px; }
.driver_status .top_box { font-size: 14px; }
.driver_status .top_box .name { font-weight: bold; font-size: 24px; }
.driver_status table { margin: 20px auto 0; }
.driver_status table td { padding: 10px 0 10px 15px; width: 50%; }
.driver_status .bottom_box { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.numerical_panel { margin: 20px 0 0; width: calc(50% - 10px); padding: 30px 20px; border-radius: 5px; border: solid 1px #eaeaea; background-color: #fff; }
.numerical_panel img { display: block; margin: 0px auto; }
.numerical_value { margin: 30px auto 0; }
.numerical_value p { text-align: center; margin: 0 0 12px 0; font-size: 16px; }
.numerical_value .number { font-size: 50px; font-weight: bold; text-align: center; color: #178e20; height: 70px; padding: 16px 0 0; border-radius: 5px; border: solid 1px #d5d5d5; word-break: break-all; }
.numerical_value .number.heart_rate { color: #f00; }
.body__driver_details .btn { margin-top: 30px; }
@media screen and (max-width:1280px) {
    .numerical_value .number { font-size: 3.9vw; }
}
.driver_profile { width: calc(100% - 56.3% - 26px); font-size: 14px; }
.driver_profile .driver_profile_inner { border-radius: 5px; border: solid 1px #eaeaea; height: 100%; max-height: 600px; overflow: hidden; }
.driver_profile_layout { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; width: 100%; height: 59.9px; border-bottom: solid 1px #eaeaea; padding: 0 2%; }
.driver_profile_layout:last-child { border-bottom: none; }
.driver_profile_layout dd { width: 67%; }
.driver_profile_layout dd input, select { padding: 0 15px; }
.driver_profile_layout.height dd { display: flex; align-items: flex-end; }
.driver_profile_layout.height dd input { width: 90%; margin: 0 10px 0 0; }

/*セレクトの矢印*/
.select-wrap { position: relative; }
.select-wrap:after { content: ''; background: url(/img/arrow.svg); display: inline-block; width: 9px; height: 7px; z-index: 0; position: absolute; top: 50%; right: 15px; transform: translateY(-50%); }

/*カレンダー*/
form .datepicker { position: relative; }
form .datepicker em { content: ""; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); background: url(/img/icon_calendar.svg) no-repeat; background-size: 100% auto; height: 18.62px; width: 19.97px; cursor: pointer; }
form .datepicker em i { text-indent: 100%; white-space: nowrap; overflow: hidden; display: inline-block; }

@media only screen and (max-width:768px){
    .body__driver_details.sidemenu_on #wrap{display: block;}
    .body__driver_details #side-menu{display:none; }
    .body__driver_details #top_content{display:none; }
    .body__driver_details.sidemenu_on main { margin: 0 auto 0; padding: 0 4vw 10.66vw 4vw; max-width: 100%;}
    .body__driver_details .main_content .inner{padding: 0;}
    .body__driver_details.top_content_fixed .main_content{padding: 0;}
    .body__driver_details .main_content .inner{display: block;}
    .body__driver_details .driver_status{width: 100%;margin: 5.33vw 0 0 0 ;}
    .body__driver_details .driver_profile{display: none;}
    .body__driver_details .driver_status .driver_status_inner{max-height: 100%;padding:5.33vw;}
    .body__driver_details .driver_status .bottom_box{display: block;}
    .body__driver_details .driver_status .numerical_panel{width: 100%;margin: 4vw 0 0;padding: 5.33vw;}
    .body__driver_details .driver_status .numerical_panel:nth-of-type(2) .number{text-align:right; padding: 4vw 2.66vw 0 2.66vw; }
    .body__driver_details .driver_status table{margin: 3.73vw auto 0;}
    .body__driver_details .driver_status table th, .driver_status table td {display: block; width: 100%;}
    .body__driver_details .driver_status table td { border-top: 1px solid #eaeaea; border-right: 1px solid #eaeaea; }
    .body__driver_details .driver_status table tr:first-child td{border-top: 1px solid #eaeaea;}
    .body__driver_details .driver_status table tr:last-child td{border-bottom-right-radius: 5px; border-top-right-radius: 5px;border-bottom:0;}
    .body__driver_details .driver_status table tr:first-child :first-child { border-top-left-radius: 5px; border-top-right-radius: 5px; }
    .body__driver_details .driver_status table tr:first-child :last-child { border-top-right-radius: 0; }
    .body__driver_details .driver_status table tr:last-child :first-child { border-bottom-right-radius: 0; border-top-right-radius:0;border-bottom-left-radius: 0;}
    .body__driver_details .driver_status table tr:last-child :last-child { border-top-right-radius: 0; border-bottom-right-radius: 5px; border-bottom-left-radius: 5px;border-bottom: 1px solid #eaeaea;}
    .body__driver_details .driver_status .numerical_panel:nth-of-type(2) .numerical_value{margin: 5.333vw auto 0;}
    .body__driver_details .flex_box{width:100%; display: flex; justify-content: space-between;margin: 5.333vw 0 0 0;}
    .body__driver_details .flex_box .numerical_value{margin: 0;width: 47%;}
    .body__driver_details .flex_box .numerical_value .number{font-size:13.33vw;}
    .body__driver_details .numerical_value .number{font-size:13.33vw; height:18.66vw;padding: 4vw 0 0;}
    .body__driver_details .driver_status .top_box .name { font-size: 6.4vw; }
    .body__driver_details .driver_status table td{padding:2.6vw;}
    .body__driver_details .driver_status .top_box{font-size: 3.73vw;}
    .body__driver_details .numerical_value p{margin: 0 0 3.2vw 0;font-size: 4.26vw;}
    .body__driver_details .btn{margin-top: 8vw;font-size: 3.733vw; width: 42.66vw; height: 9.333vw;}
}

/* =========================================================
body__driver_details_analysis ドライバー詳細分析
========================================================= */
/* .status_comment { border-radius: 5px; border: solid 1px #d3d3d3; width: 100%; overflow: hidden; display: flex; flex-wrap: nowrap; align-items: center; justify-content: left; }
.status_comment .name { position: relative; font-size: 24px; font-weight: bold; padding: 33px 10px; width: 222px; display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; text-align: center; }
.status_comment .name::after { position: absolute;  left: 100%; content: ""; width: 1px; height: 100vw; background-color: #d3d3d3; }
.status_comment .score { font-size: 24px; font-weight: bold; color: #178e20; padding: 0 0 0 24px; display: flex; flex-wrap: nowrap; align-items: flex-end; justify-content: center; }
.status_comment .score span { font-size: 46px; }
.status_comment .comment { font-size: 14px; line-height: 1.57; text-align: left; padding: 0px 20px 0 25px; width: calc(100% - 222px) } */
.heart_drive_status.heart_rate .top_box img { width: 32.73px; margin: 0 0 0 3px; }
.heart_drive_status.operating_time .top_box img { width: 35.74px; margin: 0 0 0 3px; }
.heart_drive_status { width: 49.56%; margin: 0; }
.heart_drive_status .heart_drive_status_inner { background-color: #f7f7f9; padding: 15px; border-radius: 5px; height: 100%; max-height: 535px; }
.heart_drive_status .top_box { font-size: 14px; display: flex; flex-wrap: nowrap; align-items: center; justify-content: left; }
.heart_drive_status .top_box .date { margin: 0 0 0 25px;}
.heart_drive_status .btn_group { margin-left: auto; }
.heart_drive_status .btn { width: 80px; height: 30px; margin: 0; }
.heart_drive_status .btn:first-child { margin: 0 10px 0 0; }
.heart_drive_status .center_box { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
.heart_drive_status .numerical_panel { margin: 10px 0 0 0; padding: 22px 15px 15px 15px; border: unset; width: 49.3%; }
.heart_drive_status .numerical_panel .numerical_name { font-size: 16px; font-weight: bold; margin: 0 0 17px 5px; }
.heart_drive_status .numerical_panel dl { border-top: 1px solid #eaeaea; height: 34px; display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
.heart_drive_status .numerical_panel dt { font-size: 14px; padding: 0 0 0 7px; }
.heart_drive_status .numerical_panel dd { font-size: 16px; font-weight: bold; }
.heart_drive_status .bottom_box { background-color: #FFF; padding: 15px 20px 10px 20px; height: 100%; border-radius: 5px; margin: 10px 0 0 0; }
.heart_drive_status .graf_txt { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
.heart_drive_status .graf_txt span { font-size: 12px; font-weight: bold; margin: 7px 0 0 0; }

/*タブ切り替え BPM*/
.heart_drive_status .graf_txt .switch { font-size: 14px; font-weight: bold; display: flex; align-items: center; justify-content: right; }
.heart_drive_status .graf_txt .switch li { color: #B2B2B2; opacity: 1; }
.heart_drive_status .graf_txt .switch li:first-child { margin: 0 15px 0 0; }
.heart_drive_status .graf_txt .switch li.is-active { color: #178E20; }
.heart_drive_status .graf_img { margin: 11px auto 0; }
.heart_drive_status .graf_img img { display: block; margin: 0 auto; max-width: 100%; }
.heart_drive_status .graf_txt:last-child { justify-content: right; margin: 2px 0 0 0; }
.btn.return { margin: 20px auto 0; }

/*タブ切り替え*/
.tab { cursor: pointer; opacity: .3; }
.panel { display: none; }
.tab.is-active { opacity: 1; transition: all 0.2s ease-out; }
.panel.is-show { display: block; }
.panel.is-show-sp { display: block; }

@media only screen and (max-width:768px){
    .btn.return { margin: 8vw auto 0;font-size: 3.733vw; width: 42.666vw; height: 9.333vw; }
    .body__driver_details_analysis.sidemenu_on #wrap{display: block;}
    .body__driver_details_analysis #side-menu{display:none; }
    .body__driver_details_analysis #top_content{display:none; }
    .body__driver_details_analysis.sidemenu_on main { margin: 0 auto 0; padding: 0 4vw 10.66vw 4vw; max-width: 100%;}
    .body__driver_details_analysis .main_content .inner{padding: 0;}
    .body__driver_details_analysis.top_content_fixed .main_content{padding: 0 0 0 0;}
    .body__driver_details_analysis .main_content .inner{display: block;}
    .body__driver_details_analysis .heart_drive_status{ width: 100%;margin: 5.33vw 0 0 0;}
    .body__driver_details_analysis .heart_drive_status .heart_drive_status_inner{max-height: 100%;padding: 5.33vw;}
    .body__driver_details_analysis .heart_drive_status .center_box{display: block;}
    .body__driver_details_analysis .heart_drive_status .numerical_panel{width: 100%;margin: 5.33vw 0 0 0; padding: 5.33vw;}
    .body__driver_details_analysis .heart_drive_status .numerical_panel:nth-of-type(2){margin: 2.66vw 0 0 0; }
    .body__driver_details_analysis .heart_drive_status .btn{width: 14.666vw; height:8vw;font-size: 3.733vw;}
    .body__driver_details_analysis .heart_drive_status .top_box{font-size: 3.733vw;}
    .body__driver_details_analysis .heart_drive_status .top_box .date { margin: 0 0 0 2vw;}
    .body__driver_details_analysis .heart_drive_status .btn:first-child { margin: 0 1.333vw 0 0; }
    .body__driver_details_analysis .heart_drive_status .numerical_panel .numerical_name{font-size: 4.266vw; margin: 0 0 4.53vw 1.33vw;}
    .body__driver_details_analysis .heart_drive_status .numerical_panel dl{height: auto; padding:2.666vw 0 1.86vw;}
    .body__driver_details_analysis .heart_drive_status .numerical_panel dt{font-size: 3.733vw; padding: 0 0 0 1.866vw;}
    .body__driver_details_analysis .heart_drive_status .numerical_panel dd{font-size: 4.2666vw;}
    .body__driver_details_analysis .heart_drive_status .bottom_box{ padding: 4vw 5.333vw 2.666vw 5.333vw; margin: 2.666vw 0 0 0;}
    .body__driver_details_analysis .heart_drive_status .graf_txt span{font-size: 3.2vw; margin:0;}
    .body__driver_details_analysis .heart_drive_status .graf_img{margin:2.933vw 0 0 0;}
    .body__driver_details_analysis .heart_drive_status .graf_txt .switch{font-size: 3.733vw;}
    .body__driver_details_analysis .heart_drive_status .graf_txt .switch li:first-child{margin: 0 4vw 0 0;}
}

/* ローディング処理　0823追加 */
.loader {
    border: 8px solid #f3f3f3;
    border-top: 8px solid #3498db;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }
  

/* =========================================================
body__caution 警告警報
========================================================= */
table { width: 100%; table-layout: fixed; }
table.table_list { font-size: 14px; }
table.table_list td:first-child { padding: 0 0 0 2.5%; }
table.table_list td, table.table_list th { height: 50px; }
table.table_list th:first-child { padding: 0 0 0 30px; }
table.table_list th:last-child, table.table_list td:last-child { border-right: 1px solid #E6E6E6; }
table.table_list tr:last-child th, table.table_list tr:last-child td { border-bottom: 1px solid #E6E6E6; }
table.table_list th:not(:first-child), table.table_list td:not(:first-child) { border-left: none; }
.body__caution table.table_list { margin: 15px auto 0; }
.body__caution table.table_list th:nth-child(1), .body__caution table.table_list td:nth-child(1) { width: 180px; }
.body__caution table.table_list th:nth-child(2), .body__caution table.table_list td:nth-child(2) { width: 173px; }
.body__caution table.table_list th:nth-child(3), .body__caution table.table_list td:nth-child(3) { width: 122px; }

/*バイタル、業務時間BTN*/
.body__caution .btn { width: 100px; }
.body__caution .btn:nth-child(2) { margin: 0 0 0 5px; }

/*警告警報_業務時間*/
.body__caution.working_hour table.table_list th:nth-child(3), .body__caution.working_hour table.table_list td:nth-child(3) { width: 165px; }

/*ソート用やじるし*/
.arrow { display: inline; border-top-right-radius: unset !important; border-top-left-radius: unset !important; margin: 0 0 0 10px; }

/*チェックボックス*/
.b-contain *, .b-contain *::before, .b-contain *::after { box-sizing: content-box !important; }
.b-contain input { position: absolute; z-index: -1; opacity: 0; }
.b-contain span { line-height: 1.2; font-size: 14px; }
.b-contain { display: table; position: relative; padding-left: 24px; cursor: pointer; }
.b-contain input[type="checkbox"] ~ .b-input { position: absolute; top: 0; left: 0; height: 14px; width: 14px; background: #ffffff; border: 1px solid #bbb; border-radius: 2px; }
.b-contain input[type="checkbox"] ~ .b-input::after { content: ""; position: absolute; display: none; left: 4px; top: 1px; width: 0.3rem; height: 0.6rem; border: solid #ffffff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.b-contain input[type="checkbox"]:disabled ~ .b-input::after { border-color: #ffffff; }
.b-contain input:checked ~ .b-input::after { display: block; }
.b-contain input[type="checkbox"]:checked ~ .b-input { background: #178e20; border-color: #178e20; }

/* =========================================================
管理入力、車両登録
========================================================= */
table.table_list td .btn { width: 80px; height: 30px; margin: 0; margin-left: auto; }
table.table_list td input { padding: 0 15px; width: 100%;}

/*管理入力*/
.body__management_input .date_large { font-size: 20px; font-weight: bold;position: absolute; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); }
.body__management_input table.table_list th:nth-child(1), .body__management_input z.table_list td:nth-child(1) { width: 14.7%; padding: 0 0 0 2.5%; }
.body__management_input table.table_list th:nth-child(2), .body__management_input table.table_list td:nth-child(2) { width: 24%; padding: 9.5px 0 9.5px 1%; }
.body__management_input table.table_list th:nth-child(3), .body__management_input table.table_list td:nth-child(3) { width: 10.5%; padding: 9.5px 0 9.5px 1.5%; }
.body__management_input table.table_list th:nth-child(4), .body__management_input table.table_list td:nth-child(4) { width: 10.5%; padding: 9.5px 0 9.5px 1.5%; }
.body__management_input table.table_list th:nth-child(5), .body__management_input table.table_list td:nth-child(5) { width: 10.5%; padding: 9.5px 0 9.5px 1.5%; }
.body__management_input table.table_list th:nth-child(6), .body__management_input table.table_list td:nth-child(6) { width: auto; padding: 9.5px 0 9.5px 4%; }
.body__management_input table.table_list th.alcohol_check,table.table_list td.alcohol_check { padding: 9.5px 2% 9.5px 0;width:10% }
table.table_list td.alcohol_check .btn{margin-left: auto;}
.br_960{display: none;}
@media screen and (max-width:960px) {
    .br_960{display: block;}
}

/*車両登録*/
.body__car_input table.table_list th:nth-child(1), .body__car_input table.table_list td:nth-child(1) { width: 180px; padding: 0 0 0 30px; }
.body__car_input table.table_list th:nth-child(2), .body__car_input table.table_list td:nth-child(2) { width: 220px; padding: 9.5px 0 9.5px 20px; }
.body__car_input table.table_list th:nth-child(3), .body__car_input table.table_list td:nth-child(3) { width: 220px; padding: 9.5px 0 9.5px 20px; }

/* =========================================================
データ連携
========================================================= */
.body__driver_linkag table.table_list select { width: 100%; background-image: url("/img/arrow.svg"); background-position: right 15px center; background-repeat: no-repeat; background-size: 9px 7px; }
.body__driver_linkag table.table_list th:nth-child(1), .body__driver_linkag table.table_list td:nth-child(1) { width: 20%; padding: 0 0 0 1.5%; }
.body__driver_linkag table.table_list th:nth-child(2), .body__driver_linkag table.table_list td:nth-child(2) { width: 25%; padding: 9.5px 0 9.5px 20px; }
.body__driver_linkag table.table_list th:nth-child(3), .body__driver_linkag table.table_list td:nth-child(3) { width: 15%; padding: 9.5px 0 9.5px 20px; }
.body__driver_linkag table.table_list th:nth-child(4), .body__driver_linkag table.table_list td:nth-child(4) { width: calc(100% - 58%); padding: 9.5px 0 9.5px 20px; }
.body__driver_linkag table.table_list td:nth-child(4) select { width: 30%; }

/* =========================================================
ドライバー情報、車両情報、センサー情報
========================================================= */
.body__driver_data .main_content{padding:0;}
.driver_name_list { font-size: 14px; width: 27%;  height: fill-element; height: -webkit-fill-element;
 box-sizing: border-box; border-radius: 5px 0 0 5px; border-top: 1px solid #EAEAEA; border-bottom: 1px solid #EAEAEA; border-left: 1px solid #EAEAEA; overflow-y: scroll; background:#F7F7F9; }
.driver_name_list li { background-color: #F7F7F9; }
.driver_name_list li.active { background-color: #D6EDDA; }
.driver_name_list li a { width: 100%; height: 100%; display: flex; align-items: center; padding: 18px 20px; }
.driver_profile.width_815 { width: calc(100% - 27%); max-height:100%; }
.driver_profile.width_815 .driver_profile_inner { border-radius: 0 5px 5px 0 ;  max-height:100%;height: fill-element; height: -webkit-fill-element; box-sizing: border-box; overflow-y: scroll;}
.driver_profile.width_815 .driver_profile_layout dt { width: 142px; }
.driver_profile.width_815 .driver_profile_layout dd { width: 82%; }
.driver_profile.width_815 .driver_profile_layout.height dd input { width: 95%; margin: 0 10px 0 0; }
.btns{padding:30px 0;}
.btns_inner { display: flex; align-items: center; width: 500px; margin: 0 auto 0;}

/*ドライバー情報　高さ*/
.body__driver_data .driver_name_list{max-height: 841px;}
/*ドライバー情報　生年月日*/
.body__driver_data .birthday select{width: 100%; max-width:150px;}
.body__driver_data .birthday .select-wrap{width: 100%; max-width:150px;margin:0 10px 0 20px;}
.body__driver_data .birthday .select-wrap:first-of-type{ margin:0 10px 0 0;}
.body__driver_data .birthday dd{display: flex; align-items: flex-end;}


/* =========================================================
管理入力
========================================================= */

table.table_list td input.free_dropdown {  background-color:#F9F9F9;}
.ui-autocomplete { height: 200px; overflow-y: scroll; z-index:0 !important; }
.ui-widget { font-size: 14px !important; }
/* 文字の色、文字サイズ */
.ui-widget-content a { color: #999 !important; font-size: 14px; }
/* 選択中の打ち消し */
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: none !important; background: #EAEAEA !important; font-weight: normal; color: #222222;}
/* ボーダーの色 */
.ui-widget-content { border: 1px solid #999 !important; font-size: 14px; background: #FFF !important; }

