*, *::before, *::after {
box-sizing: border-box;
margin: 0;
padding: 0;
}

.-center {
text-align: center;
}

.-flex {
	display: flex;
	flex-wrap: wrap;
	align-content: center;
/*	align-items: center;*/
	justify-content: space-between;
}
.-flex.-center {
justify-content: center;
}
.-flex.-stretch {
align-items: stretch;
}

.-link.-text {
color: inherit;
}
.-link.-text:hover {
color: #00833e;
text-decoration: underline;
}
.-link-text {
color: inherit;
}
.-link-image {
transition: opacity 0.2s;
}
.-link:hover .-link-text {
color: #00833e;
text-decoration: underline;
}
.-link:hover .-link-image {
opacity: 0.8;
}

img {
vertical-align: bottom;
}
img.-fit {
width: 100%;
height: auto;
}
img.-fit-sp {
width: auto;
max-width: 100%;
height: auto;
}

.--indent {
padding-left: 1em;
text-indent: -1em;
}

.-bold {
font-weight: 700;
}

.-shadow {
border-radius: 10px;
box-shadow: 0 5px 15px rgba(200, 200, 200, 0.5);
}

.inner {
width: 1000px;
margin-right: auto;
margin-left: auto;
}

.toppage header {
width: 100%;
height: 75px;
background-color: #ffffff;
}
.toppage header .image-container {
width: 96%;
height: 100%;
margin-right: auto;
margin-left: auto;
padding-top: 20px;
padding-bottom: 20px;
}
.toppage header .image-container img {
width: auto;
height: 100%;
}

.logo {
height: 105px;
}
.logo-container {
width: auto;
height: auto;
}

.top {
position: relative;
}
.top .visual {
width: 100%;
min-width: 1000px;
max-height: 564px;
overflow: hidden;
}
.top .read {
-webkit-transform: translateY(50%);
z-index: 1;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
      transform: translateY(50%);
font-size: 22px;
letter-spacing: 0.15em;
line-height: 2;
}
.top .read .text-container {
height: 245px;
background-color: rgba(255, 255, 255, 0.9);
align-items: center;
}
.top .read .text-container span {
color: #cf8415;
}

.contents {
border-top: 1px solid #f2f2f2;
border-bottom: 1px solid #f2f2f2;
background-color: #f2f2f2;
}

.-new-icon::before {
z-index: 1;
position: absolute;
top: -35px;
left: 40px;
width: 95px;
height: 95px;
background: center/cover url("../img/icon-new.png");
content: "";
}

/*++ピックアップ記事
++++++++++++++++++++++++++++*/
.top-article {
position: relative;
width: 100%;
margin: 208px auto 95px;
}
.top-article a{
	display:block;
}
.top-article .article-container {
height: 100%;
overflow: hidden;
}
.top-article .col-text {
	align-content: start;
	width: 50%;
	padding: 100px 60px 50px;
	background-color: #ffffff;
}
.top-article .col-text .name {
	width: 100%;
	min-height: 215px;
	margin-bottom: 15px;
	font-size: 28px;
	color:#000;
}
.top-article a:hover .col-text .name {
	color:#00833e;
}
.top-article .col-text .date {
	width: 100%;
	color: #777;
	font-size: 14px;
}
.top-article .col-image {
	width: 50%;
}
.top-article .col-image img {
	width: 100%;
	height: 100%;
	object-fit:cover;
	font-family:"object-fit:cover;";
}

/*++記事一覧
++++++++++++++++++++++++++++*/
.iteminner {
	width: 1030px;
	margin:0 auto;
}
.article-list {
	align-content: flex-start;
	width: 100%;
	margin-bottom: 20px;
	overflow: hidden;
}
.article-list.open {
height: auto;
margin-bottom: 0;
}
.article-list .article-container {
	display:block;
	margin:0 15px 55px 15px;
	background-color: #ffffff;
	width: 300px;
	overflow: hidden;
}
.article-list .article-container:nth-child(n+7){
	display:none;
}
.article-list .article-container .col-text {
	width: 100%;
	min-height: 165px;
	padding: 25px;
	background-color: #ffffff;
	color: #000;
}
.article-list .col-text .name {
	min-height: 60px;
	margin-bottom: 15px;
	font-size: 18px;
}
.article-list .col-text .date {
	color: #777;
	font-size: 14px;
}
.article-list .col-image {
	width:300px;
	height:200px;
}
.article-list .col-image img{
	width:300px;
	height:200px;
	object-fit:cover;
	font-family:"object-fit:cover;";
}

.link-button {
margin-top: 80px;
padding-bottom: 85px;
}
.link-button .button {
	position: relative;
	width: 380px;
	height: 75px;
	margin-right: auto;
	margin-left: auto;
	border: 3px solid #959595;
	background-color: #ffffff;
	color: #000;
}
.link-button .button::before {
	-webkit-transform: translateY(-50%);
	z-index: 1;
	position: absolute;
	top: 50%;
	right: 23px;
	width: 19px;
	height: 10px;
	transform: translateY(-50%);
	background: center/cover url("../img/arrow.png");
	content: "";
}
.link-button .button:hover {
	text-decoration:none;
}

.contact {
	height: 265px;
	font-size: 14px;
	line-height: 2;
}
.contact a{
	text-decoration:underline;
}

@media screen and (max-width: 768px) {
img.-fit-sp {
width: 100%;
}
.-shadow {
border-radius: 1.3333333333vw;
box-shadow: 0 0.6666666667vw 2vw rgba(200, 200, 200, 0.5);
}
.-pc {
display: none;
}
.inner {
	width: auto;
	margin:0 4%;
}
.toppage header {
height: 10.6666666667vw;
}
.toppage header .image-container {
width: 89.3%;
padding-top: 4.6666666667vw;
padding-bottom: 0.6666666667vw;
}
.logo {
height: 17.3333333333vw;
}
.logo-container {
width: 46vw;
height: auto;
}
.top .visual {
min-width: 0;
height: auto;
max-height: none;
}
.top .read {
bottom: -12%;
font-size: 3.4666666667vw;
}
.top .read .text-container {
height: 48.2666666667vw;
}
.-new-icon::before {
-webkit-transform: translateY(-50%);
top: 0;
left: 2.2%;
width: 18.6666666667vw;
height: 18.6666666667vw;
        transform: translateY(-50%);
}
.top-article {
height: auto;
margin: 50vw auto 12.6666666667vw;
}
.top-article a:hover{

}
.top-article .col-text {
order: 2;
width: 100%;
height: auto;
padding: 6.6666666667vw;
}
.top-article .col-text .name {
	min-height: 20.6666666667vw;
	margin-bottom: 2vw;
	font-size: 4vw;
	color:#000;
}
.top-article .col-text .date {
font-size: 2.6666666667vw;
}
.top-article .col-image {
	order: 1;
	width: 100%;
}
.top-article .col-image img {
	width: 100%;
	height: auto;
}

.iteminner {
	width: auto;
	margin:0 4%;
}
.article-list {
	margin-bottom: 0.8vw;
}
.article-list .article-container {
	width: 48.6%;
	margin: 0 0 3.3vw 0;
}
.article-list .article-container:nth-child(n+7){
	display:none;
}
.article-list .article-container .col-image {
	width: 100%;
	height: 18vh;
}
.article-list .article-container .col-image img{
	width: 100%;
	height: 100%;
	object-fit:cover;
}
.article-list .article-container .col-text {
	min-height: 30.6666666667vw;
	padding: 3.3333333333vw;
}
.article-list .article-container .col-text .name {
	min-height: 18vw;
	margin-bottom: 2vw;
	font-size: 3.2vw;
}
.article-list .article-container .col-text .date {
	font-size: 2.6666666667vw;
}
.link-button {
margin-top: 8.6666666667vw;
padding-bottom: 13.3333333333vw;
}
	.link-button .button {
		width: 66.6666666667vw;
		height: 10.6666666667vw;
		border: 0.4vw solid #959595;
		font-size: 3.2vw;
	}
	.link-button .button::before {
		right: 4.4vw;
		width: 3.0666666667vw;
		height: 1.7333333333vw;
	}
}

@media screen and (min-width: 769px) {
.-sp {
	display: none;
}
}