@import url('https://fonts.googleapis.com/css2?family=Hina+Mincho&family=Noto+Sans+JP:wght@100..900&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');


/* 標準可変メディア
   メモ : 可変メディアでは、HTML からメディアの高さおよび幅の属性を削除する必要がある
   http://www.alistapart.com/articles/fluid-images/ 
*/

*
{
	box-sizing: border-box;
}

img, object, embed, video 
{
	max-width: 100%;
}

html
{
	scroll-behavior: auto;

}

html,body
{
	min-width: 1200px;
}

body
{
	font-family: font-family: "Noto Sans JP", sans-serif, "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Roboto, "Droid Sans", "メイリオ", Meiryo, Verdana, "ＭＳＰゴシック", sans-serif;
	margin: 0px;
	line-height: 160%;
	text-align: center;
	color: var(--font-color);
	font-size: 18px;
	padding-top: 50px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	font-weight: normal;
	background-color: var(--body-bg-color);
}

img
{
	border: none;
	vertical-align:bottom;
	margin: 0px;
	padding: 0px;
}

p
{
	margin: 0px;

}

strong
{
}

form
{
	margin: 0px;
	padding: 0px;
}

hr
{
	clear: both;
	margin-top: 24px;
}



.none
{
	display: none !important;
}


iframe
{
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}

input:placeholder-shown 
{
    color: #bababa; 
}

/* Google Chrome, Safari, Opera 15+, Android, iOS */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder 
{
    color: #bababa; 
}


/* Firefox 18- */
input:-moz-placeholder ,
textarea:-moz-placeholder 
{    color: #bababa; opacity: 1; }

/* Firefox 19+ */
input::-moz-placeholder 
textarea::-moz-placeholder 
{   color: #bababa; opacity: 1; }

/* IE 10+ */
input:-ms-input-placeholder
textarea:-ms-input-placeholder
 {   color: #bababa !important; }



.fixed 
{
	position: fixed;
	width: 100%;
	height: 100%;
}

/** pt (pc/タブレット共通) pc(PC専用) tb(タブレット専用) sp(スマホ専用) */
.disp
{
	display: inline;
}


.pt{}
.pc{}
.ps{}
.tb{display: none;}
.ts{display: none;}
.sp{display: none;}

.


article
{
	padding-bottom: 60px;
}

.body
{
	width: 1200px;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	position: relative;
	display: flow-root;
}

.annotation
{
	text-indent: -1em;
	padding-left: 1em;
	line-height: 140%;
}

#loader-bg 
{
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 9998;
background: rgba(255, 255, 255, 1);

}
#loader 
{
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #fff;
  z-index: 9999;
}


/* PCのみ設定  768 以上*/
@media screen and (min-width:1200px)
{

}

@media (max-width: 1199px) 
{
}


/* タブレットレイアウト : 768 px 〜 959 px*/
@media screen and (min-width:768px) and (max-width:1199px)
{

.pt{}
.pc{display: none;}
.ps{display: none;}
.tb{display: inline;}
.ts{display: inline;}
.sp{display: none;}

article .body,
footer .body
{
	width: auto !important;
	padding-right: 20px;
	padding-left: 20px;
	margin-top: 0px;
}

html,body
{
	min-width: initial;
}

}

/* スマホ設定  768 以下*/
@media screen and (max-width:767px)
{

html,body
{
	min-width: initial;
}


body
{
	padding-top: 50px;

}

.pt{display: none;}
.pc{display: none;}
.ps{display: inline;}
.tb{display: none;}
.ts{display: inline;}
.sp{display: inline;}


html,body
{
	min-width:100%;
	font-size: 16px;
}

img
{
	height: auto;
	width: auto;
}

article
{
	width: auto;
	padding-right: 0%;
	padding-left: 0%;
	margin-top: 0px;
	margin-bottom: 0px !important;
	padding-top: 0em;
	padding-bottom: 30px;
}

.body
{
	width: auto !important;
	padding-right: 20px;
	padding-left: 20px;
	margin-top: 0px;
}

article a:before,
footer a:after,
article a:hover,
article a:hover:before,
footer a:hover:after
{
	transform: none;
	transform-origin: unset;
	background-color: transparent;

}



}