@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');
@import url('https://fonts.googleapis.com/css?family=M+PLUS+1p');
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@700&display=swap');

body {
	font-family: "Noto Sans JP","Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo ,sans-serif;
	font-size: 14px;
	line-height: 1.4em;
	background-color: #e4f3fa;
}
a {
	color: #0066CC;
}
.mbnone {
	margin-bottom: 0px !important;
}

::placeholder{
	color:#D5D5D5 !important;
}

.mmodal {
	backdrop-filter: blur(12px);
}

.input-group>.custom-file, .input-group>.custom-select, .input-group>.form-control, .input-group>.form-control-plaintext {
    width: auto;
}

/* parts */
.line-gray {
	height: 0px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: rgba(0,0,0,.125);
	background-color: #FFFFFF;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
	margin-top: 0px;
}
.btn {
	display:flex;
	align-items: center;
    justify-content: center;
    min-width: 60%;
}
.btn .fas , .btn .far {
	margin-right: 4px;
}
.btn.right-icon i {
	margin-right: 0px;
	margin-left: 4px;
}
.btn-gray {
	background-color: #999999;
	background-image: none;
	box-shadow: none;
	border: 1px solid #999999;
	color: #FFFFFF !important;
}
.btn-gray:hover , .btn-gray:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-blue {
	background-color: #0071be;
	background-image: none;
	box-shadow: none;
	border: 1px solid #0071be;
	color: #FFFFFF !important;
}
.btn-blue:hover , .btn-blue:focus {
	color: #FFFFFF;
	background-color: #2694d4;
}
.btn-lblue {
	background-color: #2694d4;
	background-image: none;
	box-shadow: none;
	border: 1px solid #2694d4;
	color: #FFFFFF !important;
}
.btn-lblue:hover , .btn-lblue:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-sky {
	background-color: #0099FF;
	background-image: none;
	box-shadow: none;
	border: 1px solid #0066FF;
	color: #FFFFFF !important;
}
.btn-sky:hover , .btn-sky:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-green {
	background-color: #009933;
	background-image: none;
	box-shadow: none;
	color: #FFFFFF !important;
}
.btn-green:hover , .btn-green:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-brown {
	background-color: #CC6600;
	background-image: none;
	box-shadow: none;
	border: 1px solid #CC6600;
	color: #FFFFFF !important;
}
.btn-brown:hover , .btn-brown:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-red {
	background-color: #FF0000;
	background-image: none;
	box-shadow: none;
	border: 1px solid #FF0000;
	color: #FFFFFF !important;
}
.btn-red:hover , .btn-red:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-orange {
	background-color: #FF6600;
	background-image: none;
	box-shadow: none;
	border: 1px solid #FF6600;
	color: #FFFFFF !important;
}
.btn-orange:hover , .btn-orange:focus {
	color: #FFFFFF;
	opacity: 0.5; 
}
.btn-white {
	background-color: #FFFFFF;
	background-image: none;
	box-shadow: none;
	border: 1px solid #FFFFFF;
	color: #333333 !important;
}
.btn-white:hover , .btn-white:focus {
	opacity: 0.5;
	background-color: #CCCCCC;
}
.btn-white .fas , .btn-white .far {
	color: #0071be;
}
.btn-center {
	display:flex;
	justify-content: center; 
}
.btn-center .btn {
	margin-right: 2px;
	margin-left: 2px;
}
.btn-flex .btn {
    min-width: auto !important;
	margin-right: 4px;
	margin-left: 4px;
}
.btn-xs {
	padding: 0.20rem 0.3rem;
	font-size: 13px;
	border-radius: 0.2rem;
	white-space: nowrap;
}
.btn-cap {
	flex-basis:100%;
	font-size:10px;
}
.btn.disabled {
    opacity: 45%;
}
.btn.unselected {
    opacity: 75%;
}
.btn.selected {
    pointer-events:none;
}

.mark-gray {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #999999;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
}
.mark-blue {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #0066FF;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 8px;
	padding-left: 8px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
}
.mark-lblue {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #0099FF;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 8px;
	padding-left: 8px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-sky {
	line-height: 1em;
	color: #333333;
	background-color: #99CCFF;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 8px;
	padding-left: 8px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-green {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #0099ff;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
}
.mark-lgreen {
	line-height: 1em;
	color: #333333;
	background-color: #B9DC96;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-red {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #FF3300;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-orange {
	line-height: 1em;
	color: #FFFFFF;
	background-color: #FF9900;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	border-radius:5px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-lorange {
	line-height: 1em;
	color: #333333;
	background-color: #FFDD97;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px ;
	display: inline-block;
	border-radius: 2px;
}
.mark-lbrown{
	line-height: 1em;
	color: #333333;
	background-color: #e0ca94;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-right: 10px;
	padding-left: 10px;
	margin-bottom: 0px;
	font-size: 13px !important;
	display: inline-block;
	border-radius: 2px;
}

.card-blue {
    border: 1px solid #0099ff !important;
}

.badge-red {
	font-weight: normal;
	color: #FFFFFF;
	background-color: #FF0000;
	padding-top: 0.25em;
	padding-right: 0.4em;
	padding-bottom: 0.3em;
	padding-left: 0.4em;
	font-size: 10px;
	border-radius: 0rem;
}
.badge-lblue {
	font-weight: normal;
	color: #FFFFFF;
	background-color: #0066FF;
	padding-top: 0.25em;
	padding-right: 0.4em;
	padding-bottom: 0.3em;
	padding-left: 0.4em;
	font-size: 10px;
	border-radius: 0rem;
}

/* form */
.form-body {
}
.form-body .form-group {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #DDD;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
.form-group-bottom {
	margin-bottom: 0px;
}
.form-text {
	font-size: 13px;
}
.form-detail {
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #DDD;
	margin-top: 10px;
	padding-top: 10px;
}
.form-inline .input-group {
	margin-right: 10px;
}
.form-inline .form-text.form-text-sleft {
	margin-left: 10px;
}
.form-inline .form-space-text {
	margin-right: 5px;
	margin-left: 5px;
	font-size: 16px;
}
.form-inline-multiple {
	margin-bottom:10px;
}
.form-group .form-inline-multiple:last-child {
	margin-bottom:0px;
}
.form-control.error-red {
	border-color:#dc3545;
}
.form-control.decided-blue {
	border-color:#0099ff;
}
.form-inline .input-length-pc150 {
	width: 150px;
}
.form-inline .input-length-pc200 {
	width: 200px;
}
.form-inline .input-length-pc300 {
	width: 300px;
}
.form-inline .input-length-pc350 {
	width: 350px;
}
.form-inline .input-length-pc500 {
	width: 500px;
}
.invalid-feedback {
	font-size: 13px;
	display: block;
	margin-bottom:3px;
}
.invalid-feedback:before {
	content: '\e002';
	font-family: "Material Icons";
	margin-right: 3px;
}
.form-check-inline {
	flex-wrap:wrap;
	line-height: 1.8em;
}
.form-check-inline .form-check-label {
    margin-right:15px;
	cursor: pointer;
}
.form-check .form-check-input.checkbox {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-checkbox.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 5px;
	margin-bottom: 0px;
	margin-left: 0px;
	cursor: pointer;
}
.form-check .form-check-input.checkbox:checked {
	background-image: url(../svg/custom-checkbox-check.svg);
}
.form-check .form-check-input.radio {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-radio.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 3px;
	margin-bottom: 0px;
	margin-left: 0px;
	cursor: pointer;
}
.form-check .form-check-input.radio:checked {
	background-image: url(../svg/custom-radio-check.svg);
}
.form-check .form-check-label {
	font-size: 14px;
}
.form-check .form-check-label.is-invalid {
	color: #dc3545;
}
label.form-check-label {
	display:flex;
	cursor: pointer;
}
label.form-check-label .left {
	flex-basis:30px;
}
label.form-check-label .right {
	flex:1;
}
label.form-check-label .form-check-input.checkbox {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-checkbox.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 5px;
	margin-bottom: 0px;
	margin-left: 0px;
	cursor: pointer;
}
label.form-check-label .form-check-input.checkbox:checked {
	background-image: url(../svg/custom-checkbox-check.svg);
}
label.form-check-label .form-check-input.radio {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-radio.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 3px;
	margin-bottom: 0px;
	margin-left: 0px;
	cursor: pointer;
	position: relative !important;
}
label.form-check-label .form-check-input.radio:checked {
	background-image: url(../svg/custom-radio-check.svg);
}
.form-check-flex {
	display:flex;
	align-items: center;
}
.form-check-flex select {
	width:auto;
}
.error-check .form-check-label {
    color:#dc3545;
}

.form-label {
	display:flex;
	align-items: center;
}
.form-label .fl-text {
	font-weight: bold;
	display: block;
	margin-right: 5px;
}
.form-cr-inline-end {
	margin-left: 15px;
}
.form-radioin {
	display:flex;
	align-items: center;
	padding-left: 15px;
}
.form-radioin .form-radioin-text {
	font-size: 18px;
    margin-right: .40rem;
}
.form-radioin .form-check-inline {
    margin-right: .20rem;
}
.form-pflex {
	display:flex;
	align-items: center;
	flex-wrap:wrap;
	margin-right: -10px;
}
.form-pflex .form-pflex-item {
	flex-basis:50%;
}
.form-pflex .form-pflex-item .mb-3 {
	padding-right:10px;
	margin-bottom: 10px;
}
.flexbox-two {
	display:flex;
	align-items: center;
	margin-bottom: 15px;
}
.flexbox-two-item {
	flex:1;
	margin-left:10px;
	margin-right:10px;
}
.flexbox-two-item-img {
}
.flexbox-text {
	margin-bottom: 10px;
	text-align: center;
}
.flexbox-bt {
	display:flex;
	align-items: center;
	justify-content:center;
}
.form-cate-block {
	display:flex;
	margin-bottom: 5px;
}
.form-cate-block .form-cate-left {
	margin-right:10px;
	text-align: right;
}
.form-cate-block .from-cate-right {
	flex:1;
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #DDD;
}
.from-cate-title {
	font-weight: bold;
	color: #FFFFFF;
	background-color: #0084ed;
	padding: 10px;
	font-size: 14px;
}
.form-cate-list {
	display:flex;
	align-items: center;
	flex-wrap:wrap;
}
.form-cate-list .form-cate-list-item {
	margin-right: 20px;
	margin-bottom: 5px;
}
.app-none-textbox {
	display: block;
	padding: 10px;
	margin-bottom: 20px;
	border: 1px solid rgba(0,0,0,.125);
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}
.flexbox-2w {
	display:flex;
	align-items: center;
	margin-bottom: 20px;
}
.flexbox-2w-item {
	flex:1;
	margin-left:10px;
	margin-right:10px;
}
.flexbox-2w-img {
	padding-right: 10px;
	padding-left: 10px;
}
.flexbox-2w-img img {
	margin-right: 30px;
	margin-left: 30px;
}
.flexbox-3w-link {
	display:flex;
	align-items: center;
	flex-wrap:wrap;
}
.flexbox-3w-link-item {
	flex-basis: 33.333%;
	padding-bottom: 5px;
}

/* flow */
.form-flow {
	margin-top: 10px;
    display:flex;
}
.form-flow-in {
	height: auto;
	position: relative;
	margin-right: 0px;
	margin-left: 25px;
}
.form-flow-number {
	display:block;
	list-style-type: none;
	margin: 0px;
	padding: 0px;
	text-align: center;
	z-index: 60;
	position: relative;
}
.form-flow-number li.flow-number-space {
	flex:1;
	flex-shrink:0;
	height:21px;
}
.form-flow-number li.flow-number {
	flex-basis: 30px;
	flex-shrink:0;
}
.form-flow-number li.flow-number .flow-number-mark {
	color: #666666;
	background-color: #CCCCCC;
	border-radius:50%;
	display: block;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	height: 30px;
	width: 30px;
	padding-top: 5px;
	font-weight: bold;
	margin-bottom: 0px;
    position: relative;
}
.form-flow-number li.flow-number .flow-number-mark.select {
	background-color: #0071be;
	color: #FFFFFF;
}
.form-flow-number li.flow-number .flow-number-mark.select.end {
	background-color: #99ccff;
}
.form-flow-bar {
	display:block;
	list-style-type: none;
	padding: 0px;
	position: absolute;
	left: 13px;
	top: 0px;
	width: 4px;
	height:100%;
	margin: 0px;
	z-index: 1;
}
.form-flow-bar li.flow-bar {
	height: 16.666%;
	width: 3px;
	background-color: #CCCCCC;
	flex-shrink:0;
}
.form-flow-bar li.flow-bar.select {
    background-color: #CCCCCC;
}
.form-flow-bar li.flow-bar.select.end {
    background-color: #DDDDDD;
}
.form-flow-text {
	display:block;
	list-style-type: none;
	width:100%;
	padding: 0px;
	text-align: center;
	margin-top: 3px;
	margin-right: 15px;
	margin-bottom: 0px;
	margin-left: 15px
}
.form-flow-text li.flow-text-space {
	flex:1;
	flex-shrink:0;
	height:9px;
}
.form-flow-text li.flow-text {
    flex-shrink: 0;
    text-align: left;
    padding-top: 0px;
    color: #999999;
    font-size: 13px;
    line-height: 1.3em;
    padding-bottom: 0px;
    height: 42px;
}
.form-flow-text li.flow-text h2 {
    font-size: 18px;
    margin-top:0px;
    margin-bottom:3px;
    color:#333333;
}
.form-flow-text li.flow-text h2 a {
    color:#999999;
}
.form-flow-text li.flow-text p {
    margin-bottom: 0px;
    font-size: 12px;
    color:#666666;
}
.form-flow-text li.flow-text.select h2 a {
    color:#0082FB;
    text-decoration:underline;
}
.form-flow-text li.flow-text h2 a:hover , .form-flow-text li.flow-text h2 a:focus {
    opacity: 0.5;
    text-decoration: none;
}
.form-flow-text li.flow-text.select.end h2 a  {
	opacity: 0.5 !important;
    background-color: #ffffff;
    color:#333333 !important;
    text-decoration: none;
}
.form-flow-text li.flow-text.select.end p  {
    color:#999999;
}
.form-flow-number li.flow-number .flow-number-mark.select.end:after {
    position: absolute;
    top: 50%;
    left: -25px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    font-family: "Font Awesome 5 Free";
    content: "\f00c";
    color:#0071be;
    opacity: inherit;
    font-size: 20px;
}

/* page-textbox */
.page-textbox {
	border: 1px solid #dddddd;
	padding-top: 10px;
	padding-right: 15px;
	padding-bottom: 10px;
	padding-left: 15px;
	margin-bottom: 10px;
}
.page-textbox-bg-gray {
	background-color: #F7F7F7;
}
.page-textbox-bg-yellow {
	background-color: #FFFFCC;
}
.page-textbox-bg-red {
	background-color: #ffe9e9;
}
.icon-text {
    display:flex;
}
.icon-text .icon{
	font-size: 18px;
	margin-right: 8px;
    display: block;
}
.icon-text .icon.icon-gray {
	color: #666666;
}
.icon-text .icon.icon-blue {
	color: #0071be;
}
.icon-text .icon.icon-orange {
	color: #FF6600;
}
.icon-text .icon.icon-red {
	color: #FF3300;
}

/* nav */
#nav-open {
	width: 32px;
	height: 32px;
	vertical-align: middle;
	position: absolute;
	top: 52px;
	cursor: pointer;
	right: 10px;
	display: inline-block;
	z-index: 300;
}
#nav-open span, #nav-open span:before, #nav-open span:after {
	position: absolute;
	transition: all 0.1s;
	height: 4px;
	width: 32px;
	border-radius: 3px;
	background-color: #2694d4;
	display: block;
	content: '';
	z-index: 200;
}
#nav-open span:before {
  bottom: -11px;
}
#nav-open span:after {
  bottom: -22px;
}
#nav-open.active {
	width: 32px;
	height: 32px;
	background-color: #FFFFFF;
}
#nav-open.active span {
	-webkit-transform: translateY(11px) rotate(-45deg);
	transform: translateY(11px) rotate(-45deg);
	background-color: #2694d4;
}
#nav-open.active span:before {
	height:32px;
	width: 32px;
	border-radius: 0px;
	opacity: 0;
}
#nav-open.active span:after {
	-webkit-transform: translateY(-22px) rotate(45deg);
	transform: translateY(-22px) rotate(90deg);
	background-color: #2694d4;
}

/* sf-menu */
#sf-menu {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: .2s ease-in-out;
}
#sf-menu.open {
  display: block;
  opacity: 1;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.9);/*背景色*/
  overflow: hidden;/*ブラー効果でボヤけた部分を非表示*/
}
#sf-menu.open:before {
  content: '';
  overflow: hidden;
  -webkit-filter: blur(10px);
  -moz-filter: blur(10px);
  -o-filter: blur(10px);
  -ms-filter: blur(10px);
  filter: blur(10px);
  z-index: -1;/*重なり順序を一番下にしておく*/
}
#sf-menu .sf-menu-wrap {
	display:block;
	height: 100%;
	background-color: #0062AE;
	overflow-y:scroll;
	margin-right: 60px;
}
#sf-menu .sf-menu-item a:after {
    vertical-align: middle;
}
#sf-menu .sf-menu-item a {
	display: block;
	padding-top: 6px;
	padding-bottom: 6px;
	background-color: #0062AE;
	text-align: left;
	color: #FFFFFF;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #EEE;
	font-size:14px;
	padding-left: 15px;
}
#sf-menu .sf-menu-item a:hover , #sf-menu .sf-menu-item a:focus {
	text-decoration:none;
	background-color: #2694d4;
	border-left:none;
}
#sf-menu .sf-menu-item i {
	margin-right:3px;
}


/* header */
header {
	background-color: #FFFFFF;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #DDD;
}
header .h-header {
	background-color: #0071be;
	padding-top: 10px;
	padding-bottom: 10px;
}
header .h-header h1 {
	font-size: 11px;
	color: #FFFFFF;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	margin-top: 0px;
	margin-bottom: 0px;
    text-align: center;
}
#h-box {
	margin-left: auto;
	margin-right: auto;
	display:flex;
	align-items: center;
    justify-content: center;
	padding-bottom: 0px;
	width: 100%;
	padding-top: 0px;
}
.h-logo {
	text-align: center;
	flex-basis: 175px;
	flex-shrink:0;
	padding-top: 10px;
	padding-bottom: 10px;
}
.h-logo a {
	display:flex;
	align-items: center;
	min-height: 45px;
	margin-right: auto;
	margin-left: auto;
}
.h-logo a img {
	width: auto;
	height: 45px;
}

.form-check-inline {
	flex-wrap:wrap;
	line-height: 1.8em;
}
.form-check-inline .form-check-label {
    margin-right:15px;
	cursor: pointer;
}
.form-check .form-check-input.checkbox {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-checkbox.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 5px;
	margin-bottom: 0px;
	margin-left: 0px;
}
.form-check .form-check-input.checkbox:checked {
	background-image: url(../svg/custom-checkbox-check.svg);
}
.form-check .form-check-input.radio {
	height: 22px;
	width: 22px;
	-webkit-appearance: none;
	appearance: none;
	background-image: url(../svg/custom-radio.svg);
	background-repeat: no-repeat;
	background-position: center;
	outline:none;
	vertical-align: middle;
	margin-top: 0px;
	margin-right: 3px;
	margin-bottom: 0px;
	margin-left: 0px;
}
.form-check .form-check-input.radio:checked {
	background-image: url(../svg/custom-radio-check.svg);
}
.form-check .form-check-label {
	font-size: 16px;
}
.form-check .form-check-label.is-invalid {
	color: #dc3545;
}

/* content */
#content {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 15px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 15px;
}
.chatbot-date {
    color:#999999;
    background-color: #FFFFFF;
    border: solid 1px rgba(0,0,0,.125);
    margin-bottom: 15px;
    padding-top: 5px;
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 5px;
    text-align: center;
    border-radius: 5px;
    letter-spacing:0.05em;
}
.chatbot-left , .chatbot-right {
    display: flex;
    margin-bottom: 15px;
}
.chatbot-left {

}
.chatbot-left .chatbot-icon {
    width:38px;
    height: 38px;
}
.chatbot-left .chatbot-icon img {
    width:38px;
    height: 38px;
    border-radius: 19px;
}
.chatbot-left .chatbot-textbox {
    flex:1;
    margin-left:10px;
    margin-right:138px;
}
.chatbot-left .chatbot-textbox .chatbot-name {
    font-size:12px;
    color:#999999;
}
.chatbot-left .chatbot-textbox .card {

}
.chatbot-left .chatbot-textbox .card .card-body {
    padding:10px;
    line-height: 1.6em;
}
.chatbot-center {
    margin-bottom: 15px;
}
.chatbot-center .chatbot-textbox {

}
.chatbot-right {

}
.chatbot-right .chatbot-textbox {
    flex:1;
    margin-right:10px;
    margin-left:138px;
}
.chatbot-right .chatbot-textbox .card {
    
}
.chatbot-right .chatbot-textbox .card .card-body {
    padding:15px;
    text-align: left;
}
.card-body .cr-line {
    border-top: 1px solid #0099ff;
}
.card-body .step-icon {
    width:120px;
    height: 120px;
}

.faq-text {
	background-color: #f8f8f8;
	padding-bottom:10px;
}
.faq-text .faq-title {
    background-color: #dfebf1;
    font-size: 14px;
    padding: 15px;
    margin-top: 0px;
    margin-bottom: 10px;
    display:flex;
}
.faq-text .faq-title .title {
    padding-top:5px;
    display:block;
}
.faq-mark-q {
	font-family: 'Jost', sans-serif;
	font-size: 20px;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #FF0000;
	border-radius: 50%;
    width:30px;
    height: 30px;
    padding-top:5px;
	line-height: 1em;
    text-align: center;
    display:block;
    flex-shrink: 0;
	margin-right: 13px;
}
.faq-mark-a {
	font-family: 'Jost', sans-serif;
	font-size: 20px;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #0066FF;
	border-radius: 50%;
    width:30px;
    height: 30px;
    padding-top:5px;
	line-height: 1em;
    text-align: center;
    display:block;
    flex-shrink: 0;
	margin-right: 5px;
}
.faq-abox {
	display:flex;
    padding-right: 10px;
    padding-left: 10px;
}
.faq-abox .a-mark {
	padding-right: 10px;
	padding-left: 5px;
}
.faq-abox .text {
	flex:1;
}
.faq-abox .faq-tel {
    font-size: 18px;
	color:#FF0000;
}


.chatbot-timeline {
    border-bottom:solid 1px #DDDDDD;
    text-align: center;
    position: relative;
    margin-top:30px;
    margin-bottom:30px;
}
.chatbot-timeline p {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    margin-top:0px;
    margin-bottom:0px;
    background-color: #e4f3fa;
    padding-left:5px;
    padding-right:5px;
    color:#999999;
    letter-spacing:0.05em;
}

.movie-box {
    width:100%;
    height:auto;
}
.movie-box video {
    width:100%;
    min-width: 240px;
    height:auto;
}
.consent-box {
    width:100%;
    height:360px;
    overflow-y:scroll;
}
.consent-box-in {
    margin:10px;
    margin-right: 15px;
    line-height: 1.6em;
    font-size: 13px;
}
.consent-block {
    margin-bottom:20px;
}
.consent-title {
    font-weight: 600;
    font-size: 14px;
}
.consent-stitle {
    font-size: 14px;
}
.consent-text {
    display: block;
    margin-left:20px;
}
.consent-text ul {
    padding:0px;
    padding-left:23px;
}
.consent-text ul li {

}
.consent-text-right {
    white-space: nowrap;
    width:175px;
    display: inline-block;
    text-align: left;
}

.uploadbox {
    width:100%;
    height:auto;
    text-align: center;
}
.uploadbox .upload-bt {
    display: inline-block;
    margin-left:auto;
    margin-right:auto;
}
.uploadbox .upload-bt:hover , .uploadbox .upload-bt:focus {
    opacity: 0.5;
    text-decoration: none;
}
.uploadbox .imgbox {
    width:100%;
    height:auto;
    text-align:center;
    margin-bottom:5px;
    background-color:#eeeeee;
    vertical-align: middle;
    min-width: 300px;
    max-width: 300px;
    min-height: 225px;
    margin-left:auto;
    margin-right:auto;
}
.uploadbox .imgbox img {
    max-width:300px !important;
    height:auto;
}
.uploadbox .upload-bt p {
	display:flex;
	align-items: center;
    justify-content: center;
	background-color: #2694d4;
	background-image: none;
	box-shadow: none;
	border: 1px solid #2694d4;
	color: #FFFFFF !important;
    padding:5px;
    padding-left:10px;
    padding-right:10px;
    border-radius: 3px;
    margin-bottom: 0px;
}
.uploadbox .upload-bt p .far , .uploadbox .upload-bt p .fas {
    margin-right:3px;
}

.selection-box {
    border: solid 1px #2694d4;
    margin-top: 10px;
}
.selection-box .sb-left {
    padding: 10px;
    background-color: #ffff99;
    border-bottom: solid 1px #2694d4;
}
.selection-box .sb-right {
    padding: 10px;
}
.selection-box .sb-right input {
    width:100%;
    height:auto;
}
.schedule-header {
    display: flex;
    justify-content: space-between;
    border: solid 1px #2694d4;
    padding:5px;
    border-top:none;
    background-color: #c1d3de;
}
.schedule-header .this-month {
    flex: 1;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    padding-top:5px;
}
.schedule-box {
    width:100%;
    height:360px;
    overflow-y:scroll;
    border: solid 1px #2694d4;
    border-top:none;
    margin-bottom: 15px;
}
.schedule-box-in {
    margin:10px;
    line-height: 1.6em;
    font-size: 13px;
}
.month-block {
    width:100%;
    border-top:solid 1px #bbbbbb;
    border-left:solid 1px #bbbbbb;
    border-right:solid 1px #bbbbbb;
    display:flex;
    align-items: center;
    padding:5px;
    background-color: #c1d3de;
}
.month-block .month-title {
    flex:1;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
}
.week-block {
    width:100%;
    border-top:solid 1px #bbbbbb;
    border-left:solid 1px #bbbbbb;
    display:flex;
    flex-wrap:wrap;
}
.week-block .week-item {
    flex-basis: 14.285%;
    flex-shrink: 0;
    padding:5px;
    border-right:solid 1px #bbbbbb;
    border-bottom:solid 1px #bbbbbb;
    text-align: center;
    font-size: 16px;
}
.week-block .week-item.week-saturday {
    color:#0033ff;
    background-color: #cdf0f0;
}
.week-block .week-item.week-sunday {
    color:#ff3300;
    background-color: #ffebeb;
}
.day-block {
    width:100%;
    border-top:solid 1px #bbbbbb;
    border-left:solid 1px #bbbbbb;
    display:flex;
    flex-wrap:wrap;
}
.day-block .day-item {
    flex-basis: 14.285%;
    flex-shrink: 0;
    padding:5px;
    border-right:solid 1px #bbbbbb;
    border-bottom:solid 1px #bbbbbb;
    min-height: 110px;
}
.day-block .day-week {
    display:none;
}
.day-block .day-item .day-text {
    text-align: right;
    font-weight: 500;
    margin-bottom:5px;
}
.day-block .day-item.day-saturday {
    color:#0033ff;
    background-color: #cdf0f0;
}
.day-block .day-item.day-sunday {
    color:#ff3300;
    background-color: #ffebeb;
}
.day-block .day-item.day-empty {
    background-color: #f8f8f8;
}
.day-block .day-item.day-end {
    background-color: #f0f0f0;
}
.day-block .day-item.day-end .day-text {
    opacity: 0.5;
}
.day-block .day-item .day-link {
    line-height: 1.6em;
    margin-bottom:0px;
}
.day-block .day-item.inlink {
    background-image: url(../svg/mywork-cmark.svg);
	background-repeat: no-repeat;
	background-position: center center;
}

/* mypage */
.mypage-header {
    text-align: center;
    border-bottom: solid 1px #eeeeee;
    margin-bottom:10px;
}
.mypage-header .mypage-title {
    font-size: 18px;
    margin-bottom: 5px;
    font-weight: 600;
}
.mypage-header .mypage-title-cap {
    font-size: 12px;
}

/* footer */
#footer {
	width: 100%;
	background-color: #FFFFFF;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: rgba(0,0,0,.125);
	padding-bottom: 10px;
	padding-top: 10px;
}
#footer .copyright {
	font-size: 12px;
	color: #666666;
    text-align: center;
}

/* page-top */
.page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 60%;
	z-index: 200;
}
.page-top a {
	text-decoration: none;
	color: #fff !important;
	text-align: center;
	display: block;
	background-color:#2694d4;
	line-height: 0;
	border: 2px solid #FFF;
	height: 35px;
	width: 35px;
	border-radius:50%;
}
.page-top a .fas {
	font-size: 20px;
	margin-bottom: 2px;
}
.page-top a br {
}
.page-top a:hover , .page-top a:focus {
	text-decoration: none;
	background-color: #0062AE;
	color: #FFF !important;
}


@media screen and (min-width: 993px) {

}

@media screen and (max-width: 992px) {

.btn {
    min-width: 80%;
}

.form-inline {

}
.form-inline .input-group {
    padding-bottom:5px;
}

 .chatbot-left .chatbot-textbox {
    flex-basis: 85%;
    margin-right:auto;
}

.chatbot-right .chatbot-textbox {
    margin-left:0px;
    margin-right:0px;
}


}

/* h-fixed */
.h-fixed {
    position: fixed;
    z-index: 89;
    top: 0;
    left: 0;
    width: 100%;
}
.h-fixed #nav-open {
    position: fixed;
}

/* 20230106-add */
.chatbot-right .chatbot-textbox {
    max-width: 100%;
    box-sizing: border-box;
}
.form-inline .input-group {
    flex-wrap:nowrap !important;
}

/* 20230908-add */
.video-js {
    max-width: 100% !important;
    margin-left:auto;
    margin-right: auto;
}
.input-group {
    flex-wrap: nowrap !important;
}