@charset "utf-8";
/* Box sizing rules */
/* Box sizingの定義 */
*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Remove default padding */
/* デフォルトのpaddingを削除 */
ul[class],
ol[class] {
	padding: 0;
}

/* Remove default margin */
/* デフォルトのmarginを削除 */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core body defaults */
/* bodyのデフォルトを定義 */
body {
	/* min-height: 100vh;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-feature-settings : "palt";
	color: #333333; */
}

/* Remove list styles on ul, ol elements with a class attribute */
/* class属性を持つul、ol要素のリストスタイルを削除 */
ul[class],
ol[class] {
	list-style: none;
}

/* A elements that don't have a class get default styles */
/* classを持たない要素はデフォルトのスタイルを取得 */
a:not([class]) {
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
/* img要素の扱いを簡単にする */
img {
	vertical-align: bottom;
}

/* Natural flow and rhythm in articles by default */


/* Inherit fonts for inputs and buttons */
/* inputやbuttonなどのフォントは継承を定義 */
input,
button,
textarea,
select {
	font: inherit;
	appearance: none;
	-webkit-appearance: none;
}

/* その他 */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr{
	margin: 0px;
	padding: 0px;
}
a{
	outline:none;
	text-decoration:none;
}
a img{
	border:none;
}
.clearfix::after{
	content: "";
	display: block;
	clear: both;
}
.scroll-lock {
	overflow:hidden;
}



/* PC ================================================== */
@media all and (min-width:960px){
.tablet, .sp {display: none!important;}
.pc {display: inline-block;}

body {
	width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;;
  font-size: 14px;
  color: #404040;
	line-height: 1.5;
	letter-spacing: 0.075em;
	/* font-weight: 600; */
}
.link {
	width: 212px;
	position: relative;
	display: flex;
	align-items: center;
}
.link::after{
	content:"";
	width: 21px;
	height:21px;
	position: absolute;
	right:40px;
	background: url(/img/arrow-icon-bk.svg);
}
	.link a {
		display: inline-block;
		color: #404040;
		font-size: 16px;
		font-weight: bold;
		letter-spacing: 0.075em;
		border-bottom: 1px solid #404040;
		padding-bottom: 1px;
	}

h1{
	font-family: 'Barlow', sans-serif;
	font-size: 36px;
	color:#1B904B;
	line-height: 1.2;
}
.ttl-box{margin-bottom: 20px;}
.ttl-box span {
	display: inline-block;
	margin: 0px 0 0;
	font-size: 16px;
	letter-spacing: 0.2em;
}
.side-box:hover {
	opacity: 0.8;
}

/* slider */
.bx-wrapper {
	margin:0;
	box-shadow: none;
}

h2{}

h3{}

h4{}

h5{}

header {
	width: 100%;
	height: 80px;
	position: fixed;
	background-color: #fff;
	border-bottom: 1px solid #DEDEDE;
	z-index: 100;
}
	.header-inner {
		width: 97%;
		height: 100%;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		align-items: center;
		font-weight: 700;
	}
	.header-left {
		display: flex;
	}
		.header-logo {
			padding: 0 0 0 0px;
			margin: 0 30px 0 0;
		}
		.header-logo a {
		}
		.header-logo a img {
			width: 152px;
			height: 36px;
		}
		.header-news-inner {
			display: flex;
			align-items: center;
			padding-bottom: 8px;
			border-bottom: 1px solid #1B904B;
		}
		.header-news-inner p {
			margin-right: 8px;
		}
		.date {
			font-size: 14px;
			color: #1B904B;
		}
		.category-box {
			display: inline-block;
			width:auto;
			text-align: center;
			font-size: 12px;
			color: #FFFFFF!important;
			font-weight: bold;
			background-color: #1B904B;
			border-radius: 26px;
			padding: 2px 20px;
			white-space: nowrap;
		}
		.news-ttl {
			font-family: 'Barlow', sans-serif;
			font-size: 14px;
			color: #000001;
			font-weight: bold;
			width: 240px;
			margin-left: 10px;
			white-space: nowrap;
			overflow: hidden;
			text-overflow: ellipsis;
		}
.nav-area {

}
	.nav-ul {
		display: flex;
		font-size: 14px;
	}
		.nav-ul li {
			height: 80px;
			line-height: 80px;
			margin: 0 0 0 20px;
		}
		.nav-ul li:hover {
			border-bottom: 1px solid #1B904B;
		}
		.nav-ul li:hover a{
			color: #1B904B!important;
		}
		.nav-ul li a{
			color: #404040;
			white-space: nowrap;
		}
		.current-menu-item {
			border-bottom: 1px solid #1B904B;
		}
			.current-menu-item a {
				color: #1B904B!important;
			}


footer {
	width: 100%;
	height: 140px;
	margin-top: 160px
}
	.footer-inner {
		width: 97%;
		height: 100%;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.footer-left {
		display: flex;
		align-items: center;
	}
		.footer-logo {
			padding: 0 0 0 0px;
			margin: 0 20px 0 0;
		}
		.footer-logo img {
			width: 152px;
			height: 36px;
		}
			.privacy {
				font-size: 10px;
				text-decoration: underline;
			}
				.privacy a {
					color: #404040;
				}
		small {
			font-family: 'Barlow', sans-serif;
			font-style: 10px;
			font-weight: bold;
		}

		.sepa {
			width: 80px;
			margin:100px auto;
			border-top: 1px solid #1B904B;
		}
		.current-menu-item {
			
		}
}

/* Tablet ================================================== */
@media all and (min-width:560px) and (max-width:959px){
.pc {display: none;}
.tablet {display: inline-block;}
body {
	width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;;
  font-size: 18px;
  color: #404040;
	line-height: 1.5;
	letter-spacing: 0.08em;
}
.link {
	width: 212px;
	position: relative;
	display: flex;
	align-items: center;
}
.link::after{
	content:"";
	width: 21px;
	height:21px;
	position: absolute;
	right:0;
	background: url(/img/arrow-icon-bk.svg);
}
	.link a {
		display: inline-block;
		color: #404040;
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 0.06em;
		border-bottom: 1px solid #404040;
		padding-bottom: 1px;
	}

h1{
	font-family: 'Barlow', sans-serif;
	font-size: 38px;
	color:#1B904B;
}
.ttl-box {
	width: 100%;
	margin: 0 auto;
}
.ttl-box span {
	display: inline-block;
	margin: 0;
	font-size: 18px;
	letter-spacing: 0.2em;
}

h2{}

h3{}

h4{}

h5{}

header {
	width: 100%;
	height: 75px;
	position: fixed;
	background-color: #fff;
	/* border-bottom: 1px solid #DEDEDE; */
	z-index: 1000;
}
	.header-inner {
		width: 96%;
		height: 100%;
		margin: 0 auto;
	}
	.header-left {
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
		.header-logo {
			padding: 0 0 0 0px;
			margin: 0 30px 0 0;
		}
		.header-logo a {
		}
		.header-logo a img {
			width: 139px;
			height: 33px;
		}
		.category-box {
			display: inline-block;
			width:auto;
			text-align: center;
			font-size: 14px;
			color: #FFFFFF;
			font-weight: bold;
			background-color: #1B904B;
			border-radius: 26px;
			padding: 5px 20px;
			white-space: nowrap;
		}

.hum-nav-area {
	position: fixed;
	width:100%;
	height: 100vh;
	z-index: 100;
	background-color: #fff;
	display: none;
}
	.nav-inner {
		width: 94%;
		height: 100%;
		margin:0 auto;
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.nav {
		font-size: 24px;
	}
		.nav p {
			margin: 0 0 40px 0px;
		}
		.nav a{
			color: #404040;
			white-space: nowrap;
		}

/* hum */
.hum-area {
	width: 62px;
	height: 62px;
	background-color: #1B904B;
	border-radius: 100%;
}
	.hum {
		width: 100%;
		height: 100%;
		position: relative;
	}
		.hum span {
			color:#fff;
			font-size: 14px;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%,-50%);
			-webkit-transform: translate(-50%,-50%);
		}
			.active {
				display: block;
			}
			.close {

			}
footer {
	width: 100%;
	height: 200px;
}
	.footer-inner {
		width: 95%;
		height: 100%;
		margin: 0 auto;
		padding: 30px 0;
	}
		.footer-right {
			width: 100%;
			display: flex;
			justify-content: space-between;
			align-items: center;
		}
		.footer-logo {
			width: 100%;
			height: 130px;
			padding: 50px 0;
			margin: 0 auto 0;
			text-align: center;
		}
		.footer-logo img {
			width: 143px;
			height: 34px;
		}
			.privacy {
				font-size: 10px;
				text-decoration: underline;
			}
				.privacy a {
					color: #404040;
				}
		small {
			font-family: 'Barlow', sans-serif;
			font-size: 12px;
			font-weight: bold;
		}
		.sepa {
			width: 80px;
			margin:80px auto;
			border-top: 1px solid #1B904B;
		}

}

/* SP ================================================== */
@media all and (max-width:559px){
.pc {display: none!important;}
.sp {display: inline-block;}

body {
	width: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;;
  font-size: 18px;
  color: #404040;
	line-height: 1.5;
	letter-spacing: 0.08em;
}
.link {
	width: 155px;
	position: relative;
	display: flex;
	align-items: center;
}
.link::after{
	content:"";
	width: 21px;
	height:21px;
	position: absolute;
	right:0;
	background: url(/img/arrow-icon-bk.svg);
}
	.link a {
		display: inline-block;
		color: #404040;
		font-size: 14px;
		font-weight: bold;
		letter-spacing: 0.06em;
		border-bottom: 1px solid #404040;
		padding-bottom: 1px;
	}

h1{
	font-family: 'Barlow', sans-serif;
	font-size: 32px;
	color:#1B904B;
	line-height: 1.2;
}
.ttl-box {
	width: 100%;
	margin: 0 auto;
}
.ttl-box span {
	display: inline-block;
	margin: 0;
	font-size: 14px;
	letter-spacing: 0.2em;
}

h2{}

h3{}

h4{}

h5{}

header {
	width: 100%;
	height: 75px;
	position: fixed;
	/* border-bottom: 1px solid #DEDEDE; */
	background-color: #fff;
	z-index: 1000;
}
	.header-inner {
		width: 96%;
		height: 100%;
		margin: 0 auto;
	}
	.header-left {
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
		.header-logo {
			padding: 0 0 0 0px;
			margin: 0 30px 0 0;
		}
		.header-logo a {
		}
		.header-logo a img {
			width: 120px;
			height: auto;
		}
		.category-box {
			display: inline-block;
			width:auto;
			text-align: center;
			font-size: 12px;
			color: #FFFFFF;
			font-weight: bold;
			background-color: #1B904B;
			border-radius: 26px;
			padding: 3px 14px;
			white-space: nowrap;
		}

.hum-nav-area {
	position: fixed;
	width:100%;
	height: 100vh;
	z-index: 100;
	background-color: #fff;
	display: none;
}
	.nav-inner {
		width: 94%;
		height: 100%;
		margin:0 auto;
		padding: 150px 0;
		text-align: center;
	}
	.nav {
		font-size: 20px;
		/* margin: 100px; */
	}
		.nav p {
			margin: 0 0 40px 0px;
		}
		.nav a{
			color: #404040;
			white-space: nowrap;
		}

/* hum */
.hum-area {
	width: 60px;
	height: 60px;
	background-color: #1B904B;
	border-radius: 100%;
}
	.hum {
		width: 100%;
		height: 100%;
		position: relative;
	}
		.hum span {
			color:#fff;
			font-size: 12px;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%,-50%);
			-webkit-transform: translate(-50%,-50%);
			font-weight: 600;
		}
			.active {
				display: block;
			}
			.close {

			}
footer {
	width: 100%;
	height: 200px;
}
	.footer-inner {
		width: 95%;
		height: 100%;
		margin: 0 auto;
		padding: 30px 0;
	}
		.footer-right {
			width: 100%;
			display: flex;
			justify-content: space-between;
			align-items: center;
		}
		.footer-logo {
			width: 100%;
			height: 130px;
			padding: 50px 0;
			margin: 0 auto 0;
			text-align: center;
		}
		.footer-logo img {
			width: 143px;
			height: 34px;
		}
			.privacy {
				font-size: 10px;
				text-decoration: underline;
			}
				.privacy a {
					color: #404040;
				}
		small {
			font-family: 'Barlow', sans-serif;
			font-size: 10px;
			font-weight: bold;
			letter-spacing: 0.01em;
		}
		.sepa {
			width: 60px;
			margin:80px auto;
			border-top: 1px solid #1B904B;
		}


}
