@charset "utf-8";
@import url(../vendor/materialicons/materialicons.css);

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
@keyframes rotation {
	0%{ transform:rotate(0);}
	100%{ transform:rotate(360deg); }
}
@keyframes rotation-icon {
	0%{ transform:rotate(0);}
	100%{ transform:rotate(-360deg); }
}
@page {
    size: auto!important;
}

body {
	background-color: #f4f7fa;
	-webkit-print-color-adjust: exact;
}



.wrapper_datatables_screen {
	display: grid;
	grid-template-columns: 100%;
	grid-template-rows: auto 1fr;
	min-height: 100vh;
}
.wrapper_inmodal_screen {
	font-size: .8rem;
}




.press_release dt {
	font-size: .9rem;
	display: flex;
}
.press_release dd {
	border-left: solid .3rem #dadcdd;
	margin: .6rem 0 1rem 1rem;
	padding-left: 1rem;
	font-size: .9rem;
}
.press_release_date {
	font-size: .82rem;
	min-width: 6.3rem;
	margin: auto .5rem auto 0;
}
.press_release_icon {
	color: #FFFFFF;
	display: flex;
	font-size: 0.75rem;
	margin: auto 1em auto 0;
    border-radius: 0.4rem;
	background-color: #545454;
    padding: .03rem .5rem .03rem .3rem;
    white-space: nowrap;
    min-width: 5.2rem;
}
.press_release_icon.blue {
	background-color: #0d7aed !important;
}
.press_release_icon.orange {
	background-color: #ff8400 !important;
}
.press_release_icon.red {
	background-color: #f32b2b !important;
}
.press_release_icon.green {
	background-color: #0aab69 !important;
}
.press_release_icon .material-icons {
	font-size: 1.25rem;
	margin-right: .13rem;
}
.press_release_icon div {
	margin: auto;
}






.text-bold {
	font-weight: bold;
}

.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.text-red {
	color: #F00;
}
.text-underline {
	text-decoration: underline;
}


.font07rem {
	font-size: .7rem !important;
}
.font075rem {
	font-size: .75rem !important;
}
.font08rem {
	font-size: .8rem !important;
}
.font085rem {
	font-size: .85rem !important;
}
.font09rem {
	font-size: .9rem !important;
}
.font095rem {
	font-size: .95rem !important;
}
.font105rem {
	font-size: 1.05rem !important;
}


/* bootstrap変更 */
.btn-jcorangetheme {
	color: #FFFFFF !important;
}
div.dts div.dataTables_scrollBody {
	background: none !important;
}
.custom-file {
	overflow: hidden;
    white-space: nowrap;
}

/* bootstrapボタン非活性時 */
.btn-jcbluetheme:disabled,
.btn-jcgreentheme:disabled,
.btn-jcredtheme:disabled,
.btn-jccyantheme:disabled,
.btn-jcorangetheme:disabled,
.btn-jcnavytheme:disabled,
.btn-jcgraytheme:disabled,
.btn-jcyellowtheme:disabled {
	opacity: .25;
	cursor: not-allowed;
}


.alert {
	display: flex;
}
/* ボタン内とアラート内のアイコンの位置調整 */
.btn span.material-icons, .alert span.material-icons {
	display: inline-flex;
	vertical-align: middle;
	margin-top: -0.2rem;
	font-size: 1.25rem;
	padding-right: 0.5rem;
	align-items: center;
}

/* 通常より大きいボタン */
.btn.btn_l1 {
    padding-left: 1rem;
    padding-right: 1.5rem;
    letter-spacing: .5rem;
}
.btn.btn_l2 {
    padding-left: .5rem;
    padding-right: 1rem;
    letter-spacing: .3rem;
}
.btn.btn_l3 {
    padding-left: .3rem;
    padding-right: .45rem;
    letter-spacing: .2rem;
}

/* クリアボタン */
/* 検索ボタンが「btn_l2」だった場合のバランス調整用*/
.btn.btn_l2erase {
    padding-left: 0.75rem;
    padding-right: 1.25rem;
    letter-spacing: normal;
}


/* 共通マージン・パディングクラス */
.mt_04rem {
	margin-top: .4rem !important;
}
.mt_3rem {
	margin-top: 3rem !important;
}
.ml_075rem {
	margin-left: .75rem !important;
}
.ml_1rem {
	margin-left: 1rem !important;
}
.mb_1rem {
	margin-bottom: 1rem !important;
}
.mb_0 {
	margin-bottom: 0 !important;
}
.pt_05rem {
	padding-top: .5rem !important;
}
.pt_1rem {
	padding-top: 1rem !important;
}
.p_0 {
	padding: 0 !important;
}



/* 最大横幅指定クラス */
.maxw_1rem {
	max-width: 1rem;
}
.maxw_2rem {
	max-width: 2rem;
}
.maxw_3rem {
	max-width: 3rem;
}
.maxw_4rem {
	max-width: 4rem;
}
.maxw_5rem {
	max-width: 5rem;
}
.maxw_6rem {
	max-width: 6rem;
}
.maxw_7rem {
	max-width: 7rem;
}
.maxw_8rem {
	max-width: 8rem;
}
.maxw_9rem {
	max-width: 9rem;
}
.maxw_10rem {
	max-width: 10rem;
}
.maxw_15rem {
	max-width: 15rem;
}
.maxw_18rem {
	max-width: 18rem;
}
.maxw_26rem {
	max-width: 26rem;
}



/* 共通横幅指定クラス */
.wd_3rem {
	width: 3rem;
}
.wd_4rem {
	width: 4rem;
}
.wd_5rem {
	width: 5rem;
}
.wd_6rem {
	width: 6rem;
}
.wd_9rem {
	width: 9rem;
}
.wd_10rem {
	width: 10rem;
}
.wd_10_5rem {
	width: 10.5rem;
}
.wd_12rem {
	width: 12rem;
}
.wd_14rem {
	width: 14rem;
}
.wd_70px {
	width: 70px;
}


/* 最小横幅指定クラス */
.minw_3rem {
	width: 3rem;
}
.minw_4rem {
	width: 4rem;
}
.minw_4_2rem {
	min-width: 4.2rem !important;
}
.minw_5rem {
	width: 5rem;
}
.minw_6_5rem {
	min-width: 6.5rem !important;
}
.minw_9rem {
	width: 9rem;
}



.input-group-text.bg_gray {
    border-color: #6c757d;
    background-color:#6c757d;
    color:#fff;
}
.was-validated .form-control:invalid, .form-control.is-invalid {
	background-color: #fff5f5;
}
.custom-select.is-invalid, .was-validated .custom-select:invalid {
	background-color: #fff5f5;
}
.custom-select.is-invalid option, .was-validated .custom-select:invalid option {
	background-color: #fff;
}
.head-select {
  display : flex;
  width: auto;
  padding-left: 75px;
/*
  height: 20px;
  width: 120px;
  padding-top: 0.1rem;
  padding-bottom: 0.1rem;
  padding-left: 0.5rem;
  font-size : 0.5rem
*/
}

.input-group-has-invalid-feedback > *:nth-last-child(2) {
    border-right: 1px solid rgba(0,0,0,.15);
    border-radius: .25rem!important;
    border-top-left-radius: 0!important;
    border-bottom-left-radius: 0!important;
}
.custom-file-input.is-invalid~.custom-file-label, .was-validated .custom-file-input:invalid~.custom-file-label {
	background-color: #fff5f5;
}

.custom-file-input:disabled~.custom-file-label::after {
	background-color: #6c757d;
	color: #fff;
}

.form-control[disabled], fieldset[disabled] .form-control {
    cursor: not-allowed;
}
input[type="radio"][disabled], input[type="checkbox"][disabled], input[type="radio"].disabled, input[type="checkbox"].disabled, fieldset[disabled] input[type="radio"], fieldset[disabled] input[type="checkbox"] {
    cursor: not-allowed;
}
.custom-control-label[disabled] {
	cursor: not-allowed;
}
.custom-control-input:disabled~.custom-control-label, .custom-control-input[disabled]~.custom-control-label {
	cursor: not-allowed;
}







/* ハンバーガーメニュー */
#menu_toggle {
	width: 200px;
	display: block;
	position: relative;
	top: 13px;
	left: 20px;
	margin-right: 20px;
	margin-bottom: -33px;
	z-index: 101;
	-webkit-user-select: none;
	user-select: none;
}
#menu_toggle input {
	display: block;
	width: 44px;
	height: 44px;
	position: absolute;
	top: -6px;
    left: -6px;
	cursor: pointer;
	opacity: 0;
	z-index: 105;
	-webkit-touch-callout: none;
}
#menu_toggle span.hamburger {
	display: block;
	width: 32px;
	height: 3px;
	margin-bottom: 6.5px;
	position: relative;
	background: #2e2e31;
	border-radius: 3px;
	z-index: 104;
	transform-origin: 4px 0px;
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0), opacity 0.55s ease;
}
#menu_toggle span.hamburger:first-child {
	transform-origin: 0% 0%;
}
#menu_toggle span.hamburger:nth-last-child(2) {
	transform-origin: 0% 100%;
}
#menu_toggle input:checked ~ span.hamburger {
	opacity: 1;
	transform: rotate(45deg) translate(4px, -1px);
	background: #fff;
}
#menu_toggle input:checked ~ span.hamburger:nth-last-child(3) {
	opacity: 0;
	transform: rotate(0deg) scale(0.2, 0.2);
}
#menu_toggle input:checked ~ span.hamburger:nth-last-child(2) {
	transform: rotate(-45deg) translate(2px, 4px);
}

#menu {
	position: absolute;
	top: -13px;
	width: 300px;
	min-height: 100vh;
    margin: 0 0 0 -20px;
    padding-top: 60px;
	padding-right: 30px;
	background: #2e2e31;
	list-style-type: none;
	-webkit-font-smoothing: antialiased;
	transform-origin: 0% 0%;
	transform: translate(-100%, 0);
	transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	color:#e6e6e6;
	font-size: 1rem;
	z-index: 103;
}
#menu li {
	padding: 10px 0;
	font-size: 1rem;
}
#menu_toggle input:checked ~ ul {
	transform: none;
}
#menu a {
	color:#e6e6e6;
}
#menu .material-icons {
	padding-right: 0.5ex;
	vertical-align: bottom;
}
#menu hr {
    border-color: #767676;
    border-width: 3px;
    margin-top: 0rem;
    margin-bottom: 0rem;
    margin-right: 1rem;
    width: 100%;
}

ul.inner_menu {
	list-style: none;
	padding-top: 0.3rem;
	padding-left: 2.3rem;
}
ul.inner_menu li {
	margin: 0;
    padding: 8px 0 !important;
    line-height: 1;
    font-size: 1rem !important;
}

ul.inner_menu_inner {
	list-style: none;
	padding-top: 0.5rem;
	padding-left: 1.8rem;
}

li.inner_menu_inner{
	list-style: none;
	margin: 0;
	padding: 8px 0 !important;
	line-height: 1;
	font-size: 1rem !important;
}
#menu_toggle input:checked ~ .cover_content {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 101;
	background: rgba(3,3,3,.5);
	display: block;
	transition: all 0.5s;
}

#menu_text {
    position: absolute;
    height: 46px;
    width: 46px;
    top: -7px;
    left: -7px;
    text-align: center;
    font-size: .6rem;
    z-index: 104;
    border: solid 1px #aab2bb;
    line-height: 7.5;
    border-radius: 6px;
	background-color: transparent;
    font-weight: bold;
	transition: all 0.5s;
	color: #2e2e31;
}
#menu_toggle input:checked ~ #menu_text {
	color:#e6e6e6;
	z-index: 104;
	background-color: #37373a;
	transition: all 0.5s;
	border-color: #69696c;
}
#menu_toggle input:not(:checked):hover ~ #menu_text {
	background-color: #d3d3da;
}
#menu_toggle input:checked:hover ~ #menu_text {
	background-color: #47474c;
}


ul.category-menu {
	padding-left: 1.5rem;
}
ul.category-menu ul.inner_menu {
	padding-left: 2rem;
}
ul.category-menu ul.inner_menu_inner {
	padding-left: 2.2rem;
}


/* ヘッダー */
.header_container {
	width: 100%;
	display: flex;
	padding-left: 75px;
	margin-top: 20px;
}
.header_service {
	/* 2022.5.20 Edi Start 【No.1契約形態選択画面の廃止】 */
	width: 300px;
	/* 2022.5.20 Edi End 【No.1契約形態選択画面の廃止】 */
}
.header_service h1 {
	display: inline-block;
	font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
    letter-spacing: 0.1rem;
	font-size: 2.3rem;
}
.header_service div {
	color: #353535;
	display: inline-block;
	font-weight: bold;
	font-size: 0.95rem;
	margin-left: 10px;
}

.header_userinfo {
	font-size: 0.75rem;
    font-weight: bold;
	text-align: right;
	margin-top: 4px;
	margin-left: auto;
}

.header_userinfo .login_date {
	font-size: .6rem;
}
.header_action_buttons {
	margin-left: 10px;
	margin-right: 10px;
	line-height: 1.4;
}

.header_action_buttons button {
    width: 5.7rem;
	font-size: .6rem;
    line-height: 1;
}

.header_jlease {
	margin-top: 5px;
    margin-right: 39px;
}
.header_jlease img {
	width: 160px;
}




.wrapper_datatables_screen .main_inner {
	display: grid;
	grid-template-columns: 100%;
	grid-template-rows: auto 1fr auto;
	height: 100%;
}
.wrapper_datatables_screen .main_content_datatable_inner {
	height: 100%;
}
.main_content_underalert {
	padding: 0 1rem 1rem 1rem;
}
.wrapper_normal_screen .main_content_underalert {
	min-height: calc(100vh - 13rem);
	padding-bottom: 5rem;
}




/* メインコンテナ */
.main_container {
    background-color: #FFFFFF;
    border-radius: 10px 10px 10px 10px;
    box-shadow: 0 0 6px 0px #e0e0e0;
    margin: 0 18px 10px 18px;
}

/* メインコンテナ内アラート */
.main_container .alert {
	margin: 10px 15px 15px 15px;
	font-size: .88rem;
	padding: .5rem;
}

/* ページタイトル */
.main_title {
    padding: 11px 0 0px 17px;
    border-bottom: var(--jcbluetheme) solid 5px;
    display: flex;
    align-items: flex-end;
	box-shadow:0px 5px 6px -5px rgb(0 0 0 / 30%);
	margin-bottom: 15px;
}
.main_title h2 {
	color: #2e2e31;
	font-size: 1.5rem;
	font-weight: bold;
	margin-left: 0.3ex;
}


.dataTables_wrapper {
	position: relative;
	clear: both;
	-webkit-overflow-scrolling: touch;
}
_::-webkit-full-page-media, _:future, :root .dataTables_wrapper {
	max-width: 95vw;
}







/* datatableの最低列幅指定 */
.dataTable .mw_1rem {
	min-width: 1rem;
}
.dataTable .mw_2rem {
	min-width: 2rem;
}
.dataTable .mw_3rem {
	min-width: 3rem;
}
.dataTable .mw_3_5rem {
	min-width: 3.5rem;
}
.dataTable .mw_4rem {
	min-width: 4rem;
}
.dataTable .mw_5rem {
	min-width: 5rem;
}
.dataTable .mw_6rem {
	min-width: 6rem;
}
.dataTable .mw_7rem {
	min-width: 7rem;
}
.dataTable .mw_8rem {
	min-width: 8rem;
}
.dataTable .mw_9rem {
	min-width: 9rem;
}
.dataTable .mw_10rem {
	min-width: 10rem;
}
.dataTables_scrollBody {
	min-height: 200px;
}

.dataTables_scrollBody table {
	z-index: 0 !important;
}


/* ページ内のサブタイトル用スタイル */
.callout_fortitle {
	padding: .8rem .8rem !important;
	background-color: #f5f5f5 !important;
	box-shadow: 0 0 4px 0px #e0e0e0 !important;
}


/** ローディングボタンアイコン */
span.rotate-icon {
	padding: 0 !important;
	margin: auto 0 !important;
	position: absolute;
  	animation: rotation-icon 0.75s linear infinite;
}
span.hide-icon {
	color: transparent !important;
}


/* モーダル用スタイル */
body.inmodal_body {
	background-color: #ffffff !important;
}
/* モーダル用タイトル */
.inmodal_title {
	padding: 11px 0 0px 17px;
    border-bottom: var(--jcbluetheme) solid 3px;
    display: flex;
    align-items: flex-end;
    box-shadow: 0 0 10px rgb(0 0 0 / 30%);
    clip-path: inset(0px 0px -10px 0px);
    margin-bottom: 15px;
}
.inmodal_title h2 {
	color: #2e2e31;
    font-size: 1.2rem;
    font-weight: bold;
    margin-left: 0.3ex;
}
.inmodal_container {
    padding: 0 1rem;
    font-size: .95rem;
}
.inmodal_container .alert {
	padding: .5rem !important;
    font-size: .8rem !important;
}


.custom-radio label, .custom-radio input {
	cursor: pointer;
}
.custom-checkbox label, .custom-checkbox input {
	cursor: pointer;
}











/* スマホ */
@media screen and (max-width: 599px) {

	.sp_none { display : none ;}

	/* ヘッダー */
	.header_container {
		padding-left: 68px;
	}
	.header_service {
		width: 210px;
	}
	.header_service h1 {
		font-size: 1.7rem;
		margin-bottom: -1rem;
	}
	.header_service div {
		font-size: 0.6rem;
	}

	.header_userinfo {
		font-size: 0.6rem;
	}

	.heaer_jlease {
		margin-left: 11px;
		margin-right: 30px;
	}
	.header_jlease img {
		width: 110px;
	}

	/* メインコンテナ */
	.main_container {
		margin: 0 8px 8px 8px;
	}


	/* ページタイトル */
	.main_title h2 {
		font-size: 1.3rem;
	}
	.main_title .material-icons {
		font-size: 2.6rem;
	}
	
	/* レスポンシブ対応：検索項目並び替え「13」 */
	.order-sm-13 {
		order: 13;
	}
	/* レスポンシブ対応：テキスト右寄せ */
	.text-end {
		text-align: right !important;
	}
	
	/* タイトル表示部分 */
	h2 {
		font-size: 1.5rem;
	}
	/* URL表示部分 */
	h3 {
		font-size: 0.9rem;
	}

}

/* タブレット */
@media screen and (max-width: 1024px) {




}
/* レスポンシブ対応：検索項目並び替え「13」 */
.order-13 {
	order: 13;
}





/* bootstrapの追加クラス */
.callout {
	padding: 1.25rem;
	margin-top: 1.25rem;
	margin-bottom: 1.25rem;
	border: 1px solid #eee;
	border-left-width: .25rem;
	border-radius: .25rem;
  }

  .callout h2, .callout h3, .callout h4, .callout h5 {
	margin-top: 0;
	margin-bottom: .25rem;
  }

  .callout p:last-child {
	margin-bottom: 0;
  }

  .callout code {
	border-radius: .25rem;
  }

  .callout-primary {
	border-left-color: #007bff;
  }

  .callout-primary h2, .callout-primary h3, .callout-primary h4, .callout-primary h5 {
	color: #007bff;
  }

  .callout-secondary {
	border-left-color: #6c757d;
  }

  .callout-secondary h2, .callout-secondary h3, .callout-secondary h4, .callout-secondary h5 {
	color: #6c757d;
  }

  .callout-success {
	border-left-color: #28a745;
  }

  .callout-success h2, .callout-success h3, .callout-success h4, .callout-success h5 {
	color: #28a745;
  }

  .callout-info {
	border-left-color: #17a2b8;
  }

  .callout-info h2, .callout-info h3, .callout-info h4, .callout-info h5 {
	color: #17a2b8;
  }

  .callout-warning {
	border-left-color: #ffc107;
  }

  .callout-warning h2, .callout-warning h3, .callout-warning h4, .callout-warning h5 {
	color: #ffc107;
  }

  .callout-danger {
	border-left-color: #dc3545;
  }

  .callout-danger h2, .callout-danger h3, .callout-danger h4, .callout-danger h5 {
	color: #dc3545;
  }

  .callout-light {
	border-left-color: #f8f9fa;
  }

  .callout-light h2, .callout-light h3, .callout-light h4, .callout-light h5 {
	color: #f8f9fa;
  }

  .callout-jcbluetheme {
	border-left-color: #0a7ae4;
  }

  .callout-jcbluetheme h2, .callout-jcbluetheme h3, .callout-jcbluetheme h4, .callout-jcbluetheme h5 {
	color: #0a7ae4;
  }

  .callout-jcgreentheme {
	border-left-color: #35ad79;
  }

  .callout-jcgreentheme h2, .callout-jcgreentheme h3, .callout-jcgreentheme h4, .callout-jcgreentheme h5 {
	color: #35ad79;
  }

  .callout-jcorangetheme {
	border-left-color: #fd9a28;
  }

  .callout-jcorangetheme h2, .callout-jcorangetheme h3, .callout-jcorangetheme h4, .callout-jcorangetheme h5 {
	color: #fd9a28;
  }

  .callout-jcredtheme {
	border-left-color: #fa5c65;
  }

  .callout-jcredtheme h2, .callout-jcredtheme h3, .callout-jcredtheme h4, .callout-jcredtheme h5 {
	color: #fa5c65;
  }

  .callout-jcyellowtheme {
	border-left-color: #ffe007;
  }

  .callout-jcyellowtheme h2, .callout-jcyellowtheme h3, .callout-jcyellowtheme h4, .callout-jcyellowtheme h5 {
	color: #ffe007;
  }

  .callout-jccyantheme {
	border-left-color: #38b5d2;
  }

  .callout-jccyantheme h2, .callout-jccyantheme h3, .callout-jccyantheme h4, .callout-jccyantheme h5 {
	color: #38b5d2;
  }

  .callout-jcgraytheme {
	border-left-color: #d6dade;
  }

  .callout-jcgraytheme h2, .callout-jcgraytheme h3, .callout-jcgraytheme h4, .callout-jcgraytheme h5 {
	color: #d6dade;
  }

  .callout-jcnavytheme {
	border-left-color: #083ba7;
  }

  .callout-jcnavytheme h2, .callout-jcnavytheme h3, .callout-jcnavytheme h4, .callout-jcnavytheme h5 {
	color: #083ba7;
  }

  .callout-dark {
	border-left-color: #343a40;
  }

  .callout-dark h2, .callout-dark h3, .callout-dark h4, .callout-dark h5 {
	color: #343a40;
  }

/* ドロップダウンボタン用スタイル定義 */
.dropdown-btn-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  font-size:small;
  line-height: 2.2rem;
}

.dropdown-btn-item:hover, .dropdown-btn-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa;
}

.dropdown-btn-item.active, .dropdown-btn-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #b3b7bb;
}

.dropdown-btn-item.disabled, .dropdown-btn-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent;
}
  
/* bootstrap validationのチェックアイコンと目マーク被り解消 */
input[autocomplete="new-password"] {
	background-position:right calc(2em + .1875rem) center !important;
}
