/*** The new CSS reset - version 1.11.3 (last updated 25.8.2024) ***/

*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}a,button{cursor:revert}ol,ul,menu,summary{list-style:none}ol{counter-reset:revert}img{max-inline-size:100%;max-block-size:100%}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert;box-sizing:border-box}::placeholder{color:unset}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable="true"]){-webkit-user-drag:element}:where(dialog:modal){all:revert;box-sizing:border-box}::-webkit-details-marker{display:none}

/* -----------------------------------------------------------
	追記
-------------------------------------------------------------- */
html {
  overflow-x: auto;
  overflow-y: scroll;
  font-size: 62.5%;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

h1,h2,h3,h4,h5,h6,
p,ul,ol,li,div,dl,dt,dd,
form,img,hr,table,tr,td,
br,em,figure {
  margin: 0px;
  padding: 0px;
  border: none;
  font-style: normal;
}

h1,h2,h3,h4,h5,h6 {
  font-weight: 500;
  font-size: 1.6rem;
}

ul,ol,dl {
  list-style: none;
}

@media screen and (max-width: 768px) {
	
  img {
    height: auto;
    margin: 0 auto;
  }

}

/*body*/
body {
	margin: 0 auto;
	padding: 0;
	line-height: 1;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	color: #333;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	background: #fff;
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
	min-width: 1300px;
}

p {
	font-size: 1.6rem;
	line-height: 1.7;
}

#main {
	display: block;
}

@media screen and (max-width: 768px) {
	body {
		min-width: inherit;
	}

	*:focus {
		outline: none !important;
	}

	a.anchor {
		margin-top: -60px;
		padding-top: 60px;
	}

	/* iOSでのデフォルトスタイルをリセット */
	input[type="submit"],
	input[type="button"] {
		border-radius: 0;
		-webkit-box-sizing: content-box;
		-webkit-appearance: button;
		appearance: button;
		border: none;
		box-sizing: border-box;
		cursor: pointer;
	}

	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
		display: none;
	}

	input[type="submit"]::focus,
	input[type="button"]::focus {
		outline-offset: -2px;
	}

}

/*link*/
a:link,
a:visited {
	color: #333;
	text-decoration: none;
	transition: 0.5s;
}

a 
a:hover {
	transition: 0.5s;
}

a.anchor {
	margin-top: -100px;
	padding-top: 100px;
	display: block;
}

::-moz-selection {
	color: #fff;
	background: #656f72;
}

/* 電話リンク PC:OFF */
a[href^="tel:"] {
	pointer-events: none;
}

@media screen and (max-width: 768px) {
	a:link,
	a:visited {
		transition: 0;
	}

	/* 電話リンク SP:ON */
	a[href^="tel:"] {
		pointer-events: inherit;
	}
}

@media screen and (max-width: 768px) {
	a:link,
	a:visited {
		transition: 0;
	}

	.press:hover {
		transform:none;
		opacity: 1;
	}
	
}

/*fontawefont 表示*/
.font {
  font-size: 1.6rem;
}
.font::before{
/*  必須！  */
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
/* 必須終わり！ */
  padding-right: 5px;
  color: #333;
}
.font.comment::before {
	content:"\f086";
}

@media screen and (max-width: 667px){
	
}

/* -----------------------------------------------------------
        root
-------------------------------------------------------------- */
:root {
    --gray: #EBEBEB;
    --red: #FB4943;
    --navy: #758494;
    --blue: #006BE0;
    --gradation: linear-gradient(45deg, #00AFFF, #006BE0);
    --montserrat: 'Montserrat', sans-serif;
    --basefont: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
