

/* 全体的なスタイル
-------------------------------------------------- */
/* フッターの下の空白と明るめの本文 */

body {
	color: #5a5a5a;
	/* モーダルを使うたびに画面がずれる問題 */
	padding-right: 0 !important
}

header {
	margin-bottom:2rem;
}

/* マーケティング・コンテンツ
-------------------------------------------------- */

/* カルーセルの下の3列の中のテキストを整列 */
.marketing .col-lg-4 {
	margin-bottom: 1.5rem;
	text-align: center;
}
.marketing h2 {
	font-weight: 400;
}
.marketing .col-lg-4 p {
	margin-right: .75rem;
	margin-left: .75rem;
}


/* フィーチャー
------------------------- */

.featurette-divider {
	margin: 5rem 0; /* ブートストラップの&lt;hr&gt;をもっと外に出す */
}

/* マーケティングの見出しを細めにする */
.featurette-heading {
	font-weight: 300;
	line-height: 1;
	letter-spacing: -.05rem;
}


/* レスポンシブCSS
-------------------------------------------------- */

@media (min-width: 40em) {
	/* カルーセルコンテンツのサイズを大きくする */
	.carousel-caption p {
		margin-bottom: 1.25rem;
		font-size: 1.25rem;
		line-height: 1.4;
	}

	.featurette-heading {
		font-size: 50px;
	}
}

@media (min-width: 62em) {
	.featurette-heading {
		margin-top: 7rem;
	}
}

.carousel {
	margin-bottom:0;
}


/* トップに戻るボタンCSS
-------------------------------------------------- */

/* パソコン・スマホ共通のCSS */
#PageTopBtn {
		position: fixed; /*ボタンの配置場所を固定*/
		bottom: -10px; /*下からのボタンの配置場所を指定*/
		right: 10px; /*右からのボタンの配置場所を指定*/
}
#PageTopBtn a {
		display: block; /*配置の調整*/
		text-decoration: none; /*文字の下線を消す*/
		color: #fff; /*文字の色*/
		background: #00bfff; /*ボタンの背景色*/
		text-align: center; /*文字を中央に配置*/
		border-radius: 5%; /*ボタンの角を少し丸くする*/
		outline: none; /*クリックしたときの黒い枠を消す*/
}
#PageTopBtn a:hover {
		text-decoration: none;
		background: #87cefa; /*マウスオーバー時の背景色*/
}

/* パソコンで表示する場合のCSS */
@media (min-width: 768px) {
	#PageTopBtn {
			font-size: 13px; /*文字のサイズ*/
	}
	#PageTopBtn a {
			width: 100px; /*ボタンの幅*/
			height: 70px; /*ボタンの高さ*/
			padding: 24px 0; /*文字の配置場所の調整*/
	}
}

/* スマホで表示する場合のCSS */
@media (max-width: 767px) {
	#PageTopBtn {
			font-size: 10px;
	}
	#PageTopBtn a {
			width: 70px;
			height: 50px;
			padding: 17px 0;
	}
}

/* 画像リストサムネイル用 */
.list_photo {
	width:200px;
	height:200px;
	background-size:cover;
	background-position:50% 50%;
	padding:0;
	margin:0 auto;
}

.thum_photo {
	width:auto;
	height:100px;
	background-size:cover;
	background-position:50% 50%;
	padding:0;
	margin:0 auto;
}

/*マップ表示用*/
.mapbox {
		margin-bottom: 2rem;
		background: #f1f1f1;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
	width:100%;
}
.mapbox .box-title {
		font-size: 1.2em;
		background: #f89174;
		padding: 4px;
		text-align: center;
		color: #FFF;
		font-weight: bold;
		letter-spacing: 0.05em;
}
.mapbox p {
		margin: 0;
	text-align:center;
	display:inline;
}

.maps td {
	text-align: left;
}
.maps a {
	padding-right:10px;
}

.maps span{
	padding-right:10px;
    color: #696969;
}

.area_on {
	color:#FF8B00;
	font-weight:bold;
	display: inline;
}
.area_off {
	color:#ccc;
	display:inline;
}

.dspnone {
	display:none;
}
.prdlist {
	margin-bottom:3rem;
}
.prdlist img{
	display:block;
}
.prdlist p {
	padding:0;
	margin:0;
}
p.ttl {
	padding-top:0.5rem;
}
p.price {
	font-size:1.5rem;
	text-align:center;
	margin-bottom:0.4rem;
}
h3.prdname {
	padding-top:1rem;
	text-align:center;
	font-size:1.5rem;
}
p.detail {
	text-align:center;
	margin:1rem 0;
}
.prd_detail {
	padding:0 1.5rem;
	padding-top:1rem;
}
.prdlist button {
	margin-top: 1rem;
}
.algright {
	text-align:right;
}
p.news {
	padding-left:0.5rem;
	margin:0;
}
.calendar td,.calendar th{
	text-align:center;
	width:14%;
}
.calendar th{
	background-color:#EFEFEF;
}
.sunday {
	color:#f00;
	font-weight:bold;
}
.saturday {
	color:#00f;
	font-weight:bold;
}


#accordion .card-header {
	background-color: #77b8ff;
	font-size:1.3rem;
}
#accordion .btn {
	border:none;
	font-size:1.2rem;
}
#accordion .btn:focus {
	outline: 0;
	box-shadow: 0 0 0 transparent;
}
#accordion .card-header button[data-toggle="collapse"].collapsed::after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f0ab";/* angle-double-down */
	float: right;
}
#accordion .card-header button[data-toggle="collapse"]::after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f0aa";/* angle-double-up */
	float: right;
	color:#fff;
}
#accordion h4 {
	font-size:1.2rem;
	display:inline;
}
/*カードデザイン*/

.card-header {
	font-size: 1rem;
	background:none;

	border-bottom:none;
}

.card .card-header a[data-toggle="collapse"] {
  display: block;
  padding: .75rem 1.25rem;
  margin: -.75rem -1.25rem;
}

#accordion .card-header button[data-toggle="collapse"].collapsed::after {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f0ab";/* angle-double-down */
  float: right;
}
#accordion .card-header button[data-toggle="collapse"]::after {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: "\f0aa";/* angle-double-up */
  float: right;
	color:#fff;
}
#accordion h4 {
	font-size:1.2rem;
	display:inline;
}
h1 {
	padding-bottom:1rem;
	margin-bottom:1.5rem;
}
.btmspc {
	padding-bottom:1rem;
}
.page-item {
	display: inline;
	clear:both;
}
.topspc {
	padding-top:2rem;
}
.nav-link{
	color:#fff;
}
.padl {
	padding-left:1rem;
}

.btn-success {
 color:#fff;
 background-color:#F39800;
 border-color:#F39800
}
.btn-success:hover {
 color:#fff;
 background-color:#F39800;
 border-color:#F39800
}
.page-item.active .page-link {
 z-index:1;
 color:#fff;
 background-color:#5BC2D9;
 border-color:#5BC2D9
}

.btn-primary {
 color:#fff;
 background-color:#2583AD;
 border-color:#2583AD
}
.btn-primary:hover {
 color:#fff;
 background-color:#2583AD;
 border-color:#2583AD
}

.btn-danger {
 color:#fff;
 background-color:#E83E33;
 border-color:#E83E33
}
.btn-danger:hover {
 color:#fff;
 background-color:#E83E33;
 border-color:#E83E33
}
.table-noborder {
  border-top: 0px !important;
  border-bottom: 0px !important;
}

.btn-graph {
 color:#fff;
 background-color:#00b000;
 border-color:#00b000
}
.btn-graph:hover {
 color:#fff;
 background-color:#00b000;
 border-color:#00b000
}

.nekkei-title {
    font-size:20pt;
    text-align:center;
}
.nekkei-month {
    font-size:20pt;
    text-align:center;
}
.nekkei-target-month {
    text-align:right;
}
.nekkei-target-month a{
   color:#fff;
    display: block;
    text-decoration:none;
}
.nekkei-target-month li {
    display:inline-block;
    font-size:12px;
    color:#fff;
    background:rgba(190,190,190,1);
    width:24px;
    height:24px;
    text-align:center;
    line-height:24px;
}
.nekkei-target-month li.active {
    background:rgba(89,194,216,1);
}
.nekkei-list {
    margin-top:30px;
}
.nekkei-list ul {
    list-style: none;
}
.demo {
    height:100vh;
}
.nekkei-month a {
    color:#666;
    text-decoration: none;
}
.nekkei-month a {
    color:#666;
    text-decoration: none;
}

.nav-item {
    padding-right:20px;
}
.tbl-list th {
    text-align:center;
}
.tbl-list td {
    text-align:left;
    vertical-align: middle !important;
}
.btn-blue-ak {
    background-color:#2b7c8d;
    cursor: pointer;
    border:none;
}
.btn-red-ak {
    background-color:#e94140;
    cursor: pointer;
    border:none;
}
.med_tbl th ,
.med_tbl td ,
.notice_tbl th,
.notice_tbl td {
    text-align: left;
}

.karada iframe , .nekkei iframe {
    width:100%;
    height:650px;
    border:1px solid #ccc !important;
}
.k-dtl-box img {
    width:auto;
    height:100%;
    margin:0 auto;
}
.k-dtl-box .imgbox{
    height:20vw;
    background-color:#ddd;
    text-align:center;
}
.k-dtl-box {
    margin-bottom:20px;
        clear:both;

}
.k-title {
    height:24px;
    line-height:24px;
    margin-top:20px;
}
.k-title span {
    background-color:#2b7c8d;
    color:#fff;
    font-size:11px;
    height:24px;
    line-height:24px;
    display:inline-block;
    padding:0 20px;
    margin-right:12px;
}
.k-box {
    border:1px solid #ccc;
}
.k-date {
    background-color:#eef9fb;
    color:#444;
    font-size:12px;
    padding:5px;
    margin:0;
    border-bottom:1px solid #ccc;
}
.k-outbox {
    width:100%;
    height:20vw;
}
.k-outbox .col5 {
    width:30%;
    float:left;
}
.k-outbox .col7 {
    width:69%;
    float:right;
}
.k-content {
    font-size:14px;
    padding:5px;
}

.sfblue {
	background-color:#5bc2d9;
}
.sfblue_light{
	background-color:#FFF6E6;
}

/*20220803*/
.sfblue .container {
    margin:0 auto;
    padding:0;
}
h1.headerttl {
    border:none;
    font-size:1.5rem;
    font-weight:bold;
    line-height:50px;
    padding:0;
    margin:0;
}
.navbar {
    margin:0;
    padding:10px 0;
}
.navbar-nav {
    margin-left:auto !important;
    margin-right:0!important;
}
h2 {
    font-size:1.5rem;
    font-weight:normal;
    line-height:40px;
    margin:0;
    padding:0;
    margin-bottom:20px;
}
.nav-link {
    border-radius: 5px;
}


/*患者情報一覧*/
.new_patient {
    margin-right:50px;
    maring-left:auto;
}

.search_patient{
     maring-left:auto;
    margin-right:0;
}
.subttl {
    margin-bottom:30px;
}
.prnwrap {
    font-size:1rem;
    line-height:1rem;
}
.prnwrap p {
    padding:10px 0;
    margin:0;
}
.prnbox * {
    color:#fff;
}
.prnbox {
    margin-left:10px;
    color:#fff;
}
.prnbox p {
    padding:10px;
    background-color:#5bc2d9;
    border-radius:5px;
    border:1px solid #5bc2d9;
}
.prnbox a:link,.prnbox a:hover{
    display:inline-block;
    width:100%;
    height:100%;
    padding:10px;
    background-color:#ccc;
    text-decoration: none;
    color:#fff;
    border-radius:5px;
}
.prnbox a:hover{
    background-color:#888;
}
.ak-tbl th {
    white-space: nowrap;
}
.ak-tbl .th1 {  width: 4rem; }
.ak-tbl .th2 {  width: 4rem; }
.ak-tbl .th3 {  width: 6rem; }
.ak-tbl .th4 {  width:10rem; }
.ak-tbl .th5 {  width: 6rem; }
.ak-tbl .th6 {  width: 4rem; }
.ak-tbl .th7 {  width:10rem; }
.ak-tbl .th8 {  width:10rem; }
.ak-tbl .th9 {  width: 6rem; }
.ak-tbl .th10 { width: 4rem; }
.ak-tbl .th11 { width: 4rem; }

.patimgs {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin:0 auto;
    width:50px;
    height:50px;
    border-radius:25px;
}
.patimgs2 {
    background-color:#ccc;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin:0 auto;
    width:100px;
    height:100px;
    border-radius:50px;
}
.cirimg {
    padding:0!important;
}


/*患者情報詳細*/
.sub1 * {
    border:none !important;
}
.sub2 * {
    border:none;
}
.marks td{
    padding-top:0;
    padding-bottom:0;
}
.i_waku {
    background-color:#eee;
    border-radius:5px;
    text-align:center;
    font-size:0.9rem;
}
.info2td,.info3td,.info4td,.info5td,.info6td {
    text-align:center;
    font-size:1rem;
}
.info1 {
    width:auto;
}
.info2,.info3,.info4,.info5,.info6 {
    max-width:110px;
}

.cats {
    text-align:center;
    font-size:0.9rem;
    color:#666;
    margin-right:3px;
    margin:0 auto;
}
.cats:last-child{
    margin-right:0;
}
.cats a {
    background-color:#eee;
    color:#666;
    line-height:30px;
    width:calc(25% - 4px);
    display:inline-block;
}
.cats a:hover {
    text-decoration: none;
}
.cat_active{
    background-color: #5bc2d9 !important;
    color:#fff !important;
}
.btn1 {
    position:absolute;
    bottom:3px;
    left:3px;
    width:40px !important;
    height:40px !important;
}
.btn2 {
    position:absolute;
    bottom:3px;
    left:43px;
    width:40px !important;
    height:40px !important;
}
.kiroku1 {
    width:35%;
}
.kiroku2 {
    width:35%;
    margin:0 1%;
}
.kiroku3 {
    width:28%;
}
.kirokubox h3{
    font-size:1.2rem;
    text-align: center;
    display:block;
    margin-bottom:15px;
}

.kirokubox {
    margin-bottom:30px;
}

.kiroku3 a {
    display:block;
    padding:10px;
    background-color:#7acb62;
    color:#fff;
    width:70%;
    text-align:center;
    margin:0 auto;
    margin-bottom:15px;
}

.kiroku1,.kiroku2,.kiroku3 {
    border:1px solid #ccc;
    padding:20px;
}

.kirokuttl {
    padding-right:20px !important;
}
.kiroku2 .form-group {
    max-width:45%;
    margin:20px 0;
}

.kikan {
    margin:25px 0;
}

.kirokubtn {
    margin:0 auto;
    background-color:#2b7c8d;
    color:#fff;
    cursor: pointer;
}

.rec_cat {
    display: inline-block;
    width:5rem;
    text-align:center;
    color:#fff;
    border-radius:15px;
    margin-right:10px;
    font-size:0.9rem;
}
.rec_ttl {
    display: inline-block;
    margin-left:10px;
    font-weight:bold;
}
.recbox{
    font-size:1rem;
    line-height: 30px;
    padding:10px;
}

.k-dtl-box .imgbox2{
    height:200px;
    background-color:#ddd;
    text-align:center;
}
.recboxinner {
    height:200px;
}

.recboxinner .col7{
    height:200px;
}

.recboxinner p {
    padding:10px 10px 0 10px;
    margin:0;
}

.recboxinner p span {
    display: inline-block;
    width:5rem;
    text-align:center;
    border-radius:5px;
    margin-right:10px;
    font-size:0.9rem;
    background-color:#eef9fb;
    opacity: 1;
    border:1px solid #ccc;
}
.contwrap {
    height:110px;
    overflow-y: auto;
    margin:10px;
}

.contwrap2 {
    height:140px;
    overflow-y: auto;
    margin:10px;
}
.kiroku2 input[type=date] {
    font-size:0.9rem;
    padding:0;
    text-align: center;
    padding-left:10px;
}

.dr_comment dl {
    display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.dr_comment dl,dt,dd {
    line-height:38px;
}

.dr_comment dt {
    width:8rem;
}
.dr_comment dt span{
    float:right;
    margin-top:10px;
    margin-right:10px;
}
.dr_comment .txtarea {
    width:100%;
}

.dr_comment .dr_dd{
    width: calc(100% - 8rem);
    text-align: center;
}
.dr_comment input[type=date] {
    float:left;
    width:50%;
    text-align: center;
}
.dr_comment input[type=time] {
    float:right;
    width:49%;
    text-align: center;
}

.srcform input[type="text"] {
    max-width:50px;
}
.srcform2 input[type="checkbox"] {
    max-width:30px;
}
.srcform2 div {
    width:5rem;
}
.ovflow {
    height:calc(100vh - 400px);
    overflow-y: scroll;
}
.err_msg {
    font-size:1.2rem;
    color:#f00;
    font-weight:bold;
    width:100%;
}
.tgt_names {
    border:1px solid #ddd;
    padding:2px 5px;
    display:inline-block;
    margin-right:5px;
    margin-top:5px;
}
.btns button{
    cursor: pointer!important;
}