@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700;800&display=swap');

/*.m-plus-rounded-1c-regular {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus-rounded-1c-bold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.m-plus-rounded-1c-extrabold {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 800;
  font-style: normal;
}*/

/*TOPに戻るのスムーズスクロールはこれ*/
html {
  scroll-behavior: smooth;
	
}

/*フォント指定*/
body,.menu-content .page-menu li a{
	font-family: "M PLUS Rounded 1c", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
.footer_top_list,.footer_bottom_list,.footer_site_list dt{
    font-family: "M PLUS Rounded 1c", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: 400;
  font-style: normal;
}
h1,h2,h3,h4,h5,h6, .footer_contact_title, button{
	font-family: "M PLUS Rounded 1c", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: 700;
  font-style: normal;
}
button{
	font-family: "M PLUS Rounded 1c", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: 800;
  font-style: normal;
}

html {
    font-size: 16px; 
	overflow-x: hidden;
    height: 100%;
	overscroll-behavior: none;/*ビヨヨン効果を無効化する*/
}
body{
    color: #333333;
	min-width: 320px;
	overscroll-behavior: contain;/*親要素にスクロールが伝わらないようにする*/
		caret-color: transparent;
	/*display: none;*/
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    animation: fadeIn 1.5s ease 0s 1 normal;
	/*text-align: justify;*/
}
  @keyframes fadeIn {
    0% {
      opacity: 0
    }
    100% {
      opacity: 1
    }
  }
  @-webkit-keyframes fadeIn {
    0% {
      opacity: 0
    }
    100% {
      opacity: 1
    }
}
@media (min-width: 576px) {
  body {
    font-size: calc(1rem + ((1vw - 5.76px) * 0));
    min-height: 0vw;
  }
}
@media (min-width: 1200px) {
  body {
    font-size: 16px;
  }
}

h1,h2,h3,h4,h5,h6, .footer_contact_title, span{
    color: #333333;
	font-size: 100%;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	padding: 0;
	margin: 0;
}

/*header{
	z-index:9999;
	position: sticky;
	top: 0;
}*/
/*モバイルのときスクロールで任意のところからheader固定してるよ。*/
/*@media screen and (max-width: 575px) {
header{
	top: -68px;
}
}
@media screen and (max-width: 470px) {
header{
	top: -63px;
}
}
@media screen and (max-width: 380px) {
header{
	top: -55px;
}
}*/
main{
	padding: 1rem;
}

/* リストの装飾*/
ol,li{
	list-style:  none;      /* デフォルトのアイコンを消す */
    margin:  0;             /* デフォルト指定上書き */
    padding: 0;        
}
dl,dt,dd{
   font-weight:normal;
    margin:  0;             /* デフォルト指定上書き */
    padding: 0;        
}
a{
	display: block;
	height: auto;
	width: 100%;
	transition: 0.2s;
	box-sizing: border-box;
}
a:hover,button:hover{
	transition: 0.2s;
	text-decoration: none;
}
a:link{
    color: #333333;
}
a:visited{
  color: #333333;
}
a:active{
  color: #333333;
}
form{
	display: block;
	height: auto;
}
button {
	padding: 0;
	background-color: transparent;
	border: none;
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	transition: 0.2s;
	display: block;
	height: auto;
	width: 100%;
}
/*p,dt,dd{
	text-align: left;
  text-justify: auto;
}*/
/*img{
	display: block;
	max-width: 100%;
	object-fit: contain;
	height: auto;
	box-sizing: border-box;
	width: 100%;
}*/
/*label:hover{
	cursor: pointer;
}*/
.big110{
	font-size: 110%;
}
.big120{
	font-size: 120%;
}
.big130{
	font-size: 130%;
}
.big140{
	font-size: 140%;
}
.big150{
	font-size: 150%;
}
.big160{
	font-size: 160%;
}
.small90{
	font-size: 90%!important;
}
.small80{
	font-size: 80%!important;
}
.small70{
	font-size: 70%!important;
}
.red{
color:red;
}

main{
	/*max-width: 1200px;*/
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	/*padding: 1rem;*/
}

@media all and (max-width:320px){
main{
	margin-top: 80px;
}
}
@media all and (max-width: 576px) {
main{
	margin-top: 80px;
  }
}
@media all and (min-width:577px){
main{
	margin-top: 80px;
}
}
@media all and (min-width:850px){
main{
	margin-top: 120px;
}
}

/*トップへ戻るボタン*/
.back {
	position: fixed;
	bottom: 10px;
	right: 10px;
	padding: 1pt;
	z-index: 600;
	width: 80px;
	border-radius: 50%;
	transition: 0.5s!important;
}
.back:hover{
	transform:translateY(-20px);
	transition: 0.5s;
}
@media all and (min-width:577px){
	.back{
		width: 100px;
	}
}
.pagetop_link{
  right: 120px;
  bottom: 70px;
  opacity: 1;
  transition: all 0.5s ease;
}
a{
	text-decoration: none;
}
.max-1200{
	max-width: 1200px;
	margin: auto;
	width: 100%;
}

.title_blue_line{
	border-bottom: solid 4px #a7cce7;
}
.text_blue a{
	color: #0000FF;
	font-weight: bold;
}
.link-text a{
	display: inline!important;
	text-decoration: underline;
}
.link-text a:hover{
	text-decoration: none!important;
	opacity: 0.5;
}
.text-center{
	text-align: center;
}