﻿@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&family=Noto+Serif+JP:wght@300;400;600&display=swap');

/*---------------------------------------------
	Browser Default Initialization
  ---------------------------------------------*/

html {
	/*overflow-y: scroll;*/
}

body, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6, div,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, hgroup, header, address,
figure, figcaption, footer {
	margin: 0;
	padding: 0;
	box-sizing:border-box;
}
address, caption, cite, code, dfn, em, th, var {
	font-style: normal;
	font-weight: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th {
	text-align: left;
}
q:before ,q:after {
	content: '';
}
object, embed {
	vertical-align: top;
}
hr, legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
img, abbr, acronym, fieldset {
	border: 0;
}
img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
ul li {
	list-style-type: none;
}


/*---------------------------------------------
	body
  ---------------------------------------------*/

body {
	font-family:'Noto Sans JP','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
	color: #555;
	text-align: left;
	-webkit-text-size-adjust: none;
}
.mf {
  font-family: 'Noto Serif JP', serif;
}
img {
	max-width: 100%;
	height: auto;
	width: auto\9;
}


/*---------------------------------------------
	Anchor
  ---------------------------------------------*/

a {
	outline: none;
	text-decoration: none;
	color: #333;
}
a:hover {
	text-decoration: none;
	color: #666;
}

/*---------------------------------------------
	Other
  ---------------------------------------------*/

.center { text-align:center; }
.left { text-align:left; }
.right { text-align:right; }

.small { font-size:0.9em !important; opacity: 0.8; }
.x-small { font-size:0.8em !important; }
.large { font-size:1.2em !important; }
.x-large { font-size:1.4em !important; }
.red { color:#ff0000 !important; }
.gray { color:#AAAAAA; }
.blue { color:#2c8691; }
.green { color:#088f4a; }
.pink {
	color:#DC3970;
}
.og {
	color:#df640a;
}

.fs10 { font-size:10px; }
.fs11 { font-size:11px; }
.fs12 { font-size:12px; }
.fs14 { font-size:14px; }
.fs15 { font-size:15px; }
.fs16 { font-size:16px; }
.fs18 { font-size:18px; }
.fs20 { font-size:20px; }
.fs22 { font-size:22px; }
.fs24 { font-size:24px; }

.mb0 { margin-bottom:0 !important; }
.mb5 { margin-bottom:5px !important; }
.mb8 { margin-bottom:8px !important; }
.mb10 { margin-bottom:15px !important; }
.mb15 { margin-bottom:10px !important; }
.mb20 { margin-bottom:20px !important; }
.mt0 { margin-top:0px !important; }
.mt5 { margin-top:5px !important; }
.mt10 { margin-top:10px !important; }
.mt15 { margin-top:15px !important; }
.mr5 { margin-right:5px !important; }
.mr10 { margin-right:10px !important; }
.mr15 { margin-right:15px !important; }
.ml0 { margin-left:0px !important; }
.ml5 { margin-left:5px !important; }
.ml8 { margin-left:8px !important; }
.ml10 { margin-left:10px !important; }
.ml15 { margin-left:15px !important; }

.pb0 { padding-bottom:0 !important; }
.pb05 { padding-bottom:0.5em !important; }
.pb1 { padding-bottom:1em !important; }
.pb2 { padding-bottom:2em !important; }

.pb5 { padding-bottom:5px !important; }
.pb10 { padding-bottom:10px !important; }
.pb15 { padding-bottom:15px !important; }

.pt0 { padding-top:0 !important; }
.pt1 { padding-top:1em !important; }
.pt2 { padding-top:2em !important; }

.lp0 { letter-spacing:0; }

.clear {
	clear:both;
}


#loading {
  width: 100%;
  height: 100%;
  transition: all 1s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
	text-align: center;
}
.loadingBar {
	width: 0;
	height: 3px;
	background-color:#3f4c65;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
	position: fixed;
	top: 0;
	left: 0;
	transition: all 0.2s linear 0s;
	z-index:10000;
}
#loading p {
	color:#ccc;
	font-size:0.8em;
}
.loaded {
  opacity: 0;
  visibility: hidden;
}
.spinner {
  /*width: 100px;
  height: 100px;
  margin: 200px auto;
	background:url(../images/clinic_logo.png);
	background-size:100px;*/
	position:relative;
	width: 100%;
  height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.spinner img {
	width:20em;
	padding-bottom:1em;
}
.spinner div {
	/*
	position:absolute;
	left:0;
	top:0;
	width: 100px;
  height: 100px;
	z-index:-1;
	background-color: #d7225d;
	border-radius: 100%;
  animation: sk-scaleout 1.5s infinite ease-in-out;
	*/
}
/* ローディングアニメーション */
@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(2.0);
    opacity: 0;
  }
}


.nodis {
  /*display: none !important;*/
}