﻿/*---------------------------------------------
	Google Fonts
  ---------------------------------------------*/

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

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

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

body, dl, dt, dd, ul, ul li, h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea, p, blockquote, th, td,
section, nav, article, aside, hgroup, header, address,
figure, figcaption, div {
	margin: 0;
	padding: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	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;
}
ul li {
	list-style-type: none;
}


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

body {
	font-family:'Noto Sans JP', "メイリオ", "Meiryo", "Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Osaka", "ＭＳ Ｐゴシック", arial, helvetica, clean, sans-serif;
	color: #333;
	font-size: 16px;
	line-height:1.5;
	text-align: left;
	-webkit-text-size-adjust: none;
}
.gothic {
	font-family: 'Noto Sans JP', sans-serif;
}
.mincho {
	font-family: 'Noto Serif JP', serif;
}

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

a {
	outline: none;
	text-decoration: none;
	color: #482a1d;
}

a:hover {
	/*text-decoration: underline;*/
	color: #b29c91;
}

/*******************************
　clearfix
*******************************/

.clearfix:after {
	clear:both;
	display:block;
	height:0px;
	content:"･";
	visibility:hidden;
}
.clearfix {
	min-height:1px;
	inline-table;
	clear:both;
}
*html .clearfix {
	height:1px;
}


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

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

.small { font-size:85% !important; }
.large { font-size:115% !important; }
.x-large { font-size:125% !important; }
.red { color:#ff0000 !important; }
.gray { color:#AAAAAA !important; }
.blue { color:#2c73b5 !important; }
.green { color:#088f4a !important; }
.pink { color:#DC3970 !important; }

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

.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; }
.pb1 { padding-bottom:1px !important; }
.pb5 { padding-bottom:5px !important; }
.pb10 { padding-bottom:10px !important; }
.pb15 { padding-bottom:15px !important; }

.photo_l {
	float:left;
	margin:0 15px 5px 0;
}
.photo_r {
	float:right;
	margin:0 0 5px 15px;
}

.clear {
	clear:both;
}

#loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
	text-align: center;
}
.loadingBar {
	width: 0;
	height: 3px;
	background-color:#8cbb00;
	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:#555;
}
.loaded {
  opacity: 0;
  visibility: hidden;
}
.spinner {
  width: 100px;
  height: 100px;
  margin: 200px auto;
	/*background:url(../images/clinic_logo.png);
	background-size:100px;*/
	position:relative;
}
.spinner div {
	position:absolute;
	left:0;
	top:0;
	width: 100px;
  height: 100px;
	z-index:-1;
	background-color: #ddd;
	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;
  }
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}
.loader_panel {
	width:100%;
	height:100vh;
	display: flex;
	justify-content: center;
	align-items: center;
}
.loader {
  color: #8cbb00;
  font-size: 10px;
  margin:0 auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0;
}
.loader:before {
  left: -3.5em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 3.5em;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}

