@charset "utf-8";



/*@font-face {
    font-family: 'Noto Serif JP';
    src: url('../noto_serif_jp/NotoSerifJP-Regular.otf') format('opentype'),url('../noto_serif_jp/NotoSerifJP-Medium.otf') format('opentype'),url('../noto_sans_jp/NotoSansJP-Regular.otf') format('opentype');
}*/



html{
	font-size: 10px;
	/*font-size: 62.5%;*/
}

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.0;
	letter-spacing: 0;
	color: #000000;
	overflow: hidden;
}

.clearFix:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	_zoom: 1;
}

a,a img,input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="image"],
#menu,#pageTop{
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

a:hover img,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="image"]:hover,
#pageTop img:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

#wrapper{
	position: relative;
	min-width: 1050px;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}



/**************************************************
 loading
**************************************************/
#loading{
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	background-color: #F8F8F1;
	z-index: 9999;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
#loading img{width: 100px;}
#loading.hide{animation: loading2 0.25s ease-in-out forwards 0.7s;}
#loading.hide img{animation: loading1 0.15s ease-in-out forwards 0.5s;}
@keyframes loading1{
	0% {
		transform:scale(1.0);
		opacity: 1;
	}
	100% {
		transform:scale(2.0);
		opacity: 0;
	}
}
@keyframes loading2{
	0% {
		height: 100vh;
	}
	100% {
		height: 0;
		display: none;
	}
}



/**************************************************
 contents
**************************************************/
#contents{
	position: relative;
	width: 50%;
}

header{
	height: 100vh;
	background: url("../img/header_bg.png") no-repeat center top;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
header h1 img{width: 425px;}
header p{
	position: relative;
	display: inline;
	font-size: 2.0rem;
	letter-spacing: 2px;
	line-height: 1.4;
	color: #3F1000;
	margin: 55px 0 0 0;
	padding: 0 20px;
}
header p::before,
header p::after{
	position: absolute;
	content: '';
	width: 30px;
	height: 2px;
	top: calc(50% - 0px);
	background-color: #3F1000;
}
header p::before{left: -30px;}
header p::after{right: -30px;}

#visualHanger{
	position: fixed;
	width: 50%;
	height: 100vh;
	min-width: 525px;
	top: 0;
	left: 0;
	z-index: 0;
}
#visualHanger ul li{
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
}
#visualHanger ul li img{display: none;}
#visualHanger ul li:nth-child(1){
	background: url("../img/visual1.jpg") no-repeat center center;
	background-size: cover;
}
#visualHanger ul li:nth-child(2){
	background: url("../img/visual2.jpg") no-repeat center center;
	background-size: cover;
}
#visualHanger ul li:nth-child(3){
	background: url("../img/visual3.jpg") no-repeat center center;
	background-size: cover;
}

#menu{
	position: fixed;
	width: 70px;
	height: 70px;
	top: 0;
	left: 0;
	background: url("../img/menu.png") no-repeat 0 0 #90B720;
	background-size: 70px 140px;
	cursor: pointer;
	z-index: 9991;
}
#menu.open{
	background: url("../img/menu.png") no-repeat 0 -70px #90B720;
	background-size: 70px 140px;
}

#navigation{
	position: fixed;
	width: 50%;
	min-width: 525px;
	height: 100vh;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.95);
	z-index: 9990;
	display: none;
}
#navigation ul{
	height: 100%;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
#navigation ul li{
	width: 100%;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: 500;
	letter-spacing: 3px;
	text-align: center;
}
#navigation ul li a{
	display: block;
	padding: 20px 0;
	color: #3F1000;
}
#navigation ul li a:hover{opacity: 0.5;}

article{padding: 0 0 50px 0;}

section{padding: 0 50px;}

#intro{
	font-size: 3.6rem;
	letter-spacing: 3px;
	line-height: 1.4;
	color: #3F1000;
	text-align: center;
	padding: 130px 0;
	background: url("../img/intro_bg.png") no-repeat center bottom;
}

article h2{
	position: relative;
	font-size: 3.5rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 3px;
	text-align: center;
	color: #3F1000;
	margin: 100px 0 0 0;
	padding: 0 0 35px 0;
}
article h2:before{
	position: absolute;
	content: '';
	width: 90px;
	height: 5px;
	bottom: 0;
	left:calc(50% - 45px);
	background: url("../img/h2_obj.png") no-repeat left top;
	background-size: 90px 5px;
}

article h3{
	position: relative;
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 2px;
	color: #3F1000;
	margin: 50px 0 0 0;
	padding: 0 0 0 30px;
}
article h3:before{
	position: absolute;
	content: '';
	width: 20px;
	height: 5px;
	top: 10px;
	left: 0;
	background-color: #90B821;
}

article p{
	font-size: 1.6rem;
	line-height: 1.8;
	padding: 30px 0 0 0;
}
article p.style1{
	font-size: 1.8rem;
	font-weight: 500;
	padding: 20px 0 0 0;
}

#profile{
	margin: 40px 0 0 0;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#profile .proCont{
	width: calc(67% - 30px);
	order: 2;
}
#profile .proCont dl dt{
	font-size: 2.0rem;
	font-weight: 700;
	letter-spacing: 2px;
	color: #3F1000;
}
#profile .proCont dl dt:nth-child(3){margin-top: 35px;}
#profile .proCont dl dd{
	font-size: 1.5rem;
	line-height: 1.8;
	padding: 15px 0 0 0;
	color: #3F1000;
}
#profile .proCont dl dd:nth-child(4){line-height: 1.0;}
#profile .proCont dl dd ul{
	list-style: disc;
	padding: 0 0 0 25px;
	line-height: 1.4;
}
#profile .proCont dl dd ul li{margin: 10px 0 0 0;}
#profile .proCont dl dd ul li:first-child{margin: 0;}
#profile .photoHanger{
	width: 33%;
	font-size: 1.5rem;
	line-height: 1.4;
	letter-spacing: 2px;
	text-align: center;
	color: #3F1000;
	order: 1;
}
#profile .photoHanger img{
	display: block;
	width: 100%;
	margin-bottom: 10px;
}
#profile .photoHanger strong{
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
}

.imageHanger{margin: 100px 0 0 0;}
.imageHanger img{width: 50%;}

table{
	margin: 30px 0 0 0;
	width: 100%;
	border-top: 1px solid #661A00;
	font-size: 1.6rem;
	font-size: 500;
	color: #3F1000;
	text-align: center;
}
table th{
	padding: 12px 10px;
	background-color: #E4E980;
}
table td{
	padding: 12px 10px;
	border-bottom: 1px solid #661A00;
}

.phoneNum{
	margin: 50px auto 0 auto;
	width: 400px;
	height: 100px;
	font-size: 4.0rem;
	font-weight: 700;
	letter-spacing: 3px;
	color: #FFFFFF;
	background: url("../img/phone_bg.png") no-repeat center center;
	background-size: auto 100%;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.phoneNum img{
	width: 50px;
	margin-right: 10px;
}

.facHanger{
	margin: 50px 0 0 0;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
}
.facHanger img{
	width: 62%;
	order: 2;
}
.facHanger div{
	width: 38%;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 2px;
	color: #3F1000;
	padding: 30px;
	background-color: #F0F8F2;
	order: 1;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#map{margin: 40px 0 0 0;}
#map iframe{
	width: 100%;
	height: 400px;
}



/**************************************************
 footer
**************************************************/
footer{background-color: #F8F8F1;}

footer p{
	padding: 50px 10px 0 10px;
	font-size: 1.6rem;
	line-height: 1.4;
	text-align: center;
}
footer p img{
	display: block;
	margin: 0 auto 30px auto;
	width: 250px;
}

.goals{
	display: block;
	width: 450px;
	margin: 30px auto 50px auto;
	padding: 15px 0;
	font-size: 1.2rem;
	line-height: 1.4;
	font-weight: 500;
	background-color: #FFFFFF;
	border-radius: 1.0rem;
	text-align: center;
}
.goals img{
	display: block;
	width: 200px;
	margin: 0 auto 10px auto;
}

#copyRight{
	padding: 20px 5px;
	font-size: 1.2rem;
	line-height: 1.3;
	color: #FFFFFF;
	text-align: center;
	background-color: #59B200;
}



/**************************************************
 news 2025.05
**************************************************/
ul.news{
	padding: 10px 20px 30px 20px;
	margin-top: 30px;
	background-color: #F8F8F1;
	border-radius: 10px;
}
ul.news li{
	font-size: 1.6rem;
	line-height: 1.3;
	margin-top: 20px;
}
ul.news li a{
	position: relative;
	display: block;
	padding: 0 0 0 15px;
	color: #000000;
}
ul.news li a:hover{opacity: 0.5;}
ul.news li a::before{
	position: absolute;
	content: '';
	width: 0;
	height: 0;
	top: 4px;
	left: 0;
	border-style: solid;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #90B821;
	border-right: 0;
}
