 .mv {
	position: relative;
	height: 500px;
	background: url("../img/mv.jpg") center center no-repeat;
	background-size: cover;
	}
@media screen and (max-width: 767.98px) {
.mv {
	background: url("../img/mv_sp.jpg") center center no-repeat;
	background-size: cover;
	}
}

.mv h1 {
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	color: #fff;
	padding: 15px;
	font-size: 30px;
	font-weight: 600;
	text-shadow: 0 1px 3px rgba(0.0,0,.5);
	line-height: 1em;
	background: rgb(0,96,0);
	background: linear-gradient(90deg, rgba(0,96,0,1) 0%, rgba(0,96,0,0) 100%);
	animation: anim_mv_h1 1s ease both 1s;
	}
@keyframes anim_mv_h1 {
	0% { opacity: 0; transform: translateX(-100px); }
	100% { opacity: 1; transform: translateX(0px); }
	}
@media screen and (max-width: 767.98px) {
.mv h1 {
	font-size: 6vw;
	line-height: 1.5em;
	}
}

.block1 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	}

.info {
	width: 50%;
	padding: 50px 50px 50px 0;
	}
@media screen and (max-width: 767.98px) {
.info {
	width: 100%;
	padding: 10vw 4vw 0;
	}
}
.info h2 {
	display: block;
	margin: 0 0 20px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1em;
	}
@media screen and (max-width: 767.98px) {
.info h2 {
	font-size: 5vw;
	}
}

.info ul {
	display: block;
	height: 350px;
	overflow: auto;
	}

.info li {
	display: block;
	}

.info a {
	display: block;
	padding: 10px 0;
	color: #333;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.5em;
	}
@media screen and (max-width: 767.98px) {
.info a {
	font-size: 4vw;
	}
}

.info a span {
	display: block;
	}

.info a:hover {
	color: #20992A;
	}

.about {
	width: 50%;
	padding: 50px 0;
	}
@media screen and (max-width: 767.98px) {
.about {
	width: 100%;
	padding: 10vw 4vw;
	}
}

.about h2 {
	display: block;
	margin: 0 0 20px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1em;
	}
@media screen and (max-width: 767.98px) {
.about h2 {
	font-size: 5vw;
	}
}

.about p {
	display: block;
	font-size: 14px;
	font-weight: 300;
	line-height: 2em;
	}
@media screen and (max-width: 767.98px) {
.about p {
	font-size: 4vw;
	}
}

.about a.bt {
	display: block;
	width: 180px;
	margin: 30px 0 0 0;
	padding: 10px 0;
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 1em;
	text-align: center;
	background: #D2CF2A;
	border-radius: 30px;
	float: right;
	}
@media screen and (max-width: 767.98px) {
.about a.bt {
	margin: 10vw auto;
	font-size: 4vw;
	float: none;
	}
}

.about a.bt:hover {
	background: #B2AF13;
	}

.about a.bt::before {
	content: "\f054" !important;
	font-family: FontAwesome;
	padding: 0 5px 0 0;
	}

.menu {
	display: block;
	width: 100%;
	margin: 0 auto;
	}

.menu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	}

.menu li {
	position: relative;
	display: block;
	width: calc(100% / 3);
	height: 180px;
	margin: 0 0 30px;
	overflow: hidden;
	}
@media screen and (max-width: 767.98px) {
.menu li {
	width: 100%;
	}
}

.menu li img {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	display: block;
	width: 100%;
	height: 150px;
	object-fit: cover;
	transition: .5s ease;
	}

.menu li:hover img {
	transform: translateX(-50%) scale(1.1);
	}

.menu li h3 {
	position: absolute;
	left: 50%;
	top: 70px;
	transform: translateX(-50%);
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 1em;
	text-shadow: 0 0 5px rgba(0,0,0,.9);
	}
@media screen and (max-width: 767.98px) {
.menu li h3 {
	width: 100%;
	font-size: 6vw;
	}
}

.menu li p {
	position: absolute;
	bottom: 0;
	display: block;
	width: 100%;
	padding: 10px 0;
	color: #333;
	font-size: 14px;
	font-weight: 300;
	line-height: 1em;
	background: #fff;
	}
@media screen and (max-width: 767.98px) {
.menu li p {
	font-size: 4vw;
	}
}

.menu li a {
	display: block;
	text-align: center;
	}

.menu li a span {
	display: block;
	}

/* 背景色（ストライプ）をつける */
.about {
    margin: 0 auto 2em; /* 外側の余白（上下と中央配置） */
    padding: 2em; /* 内側余白 */
    background-image: repeating-linear-gradient(
        -45deg,           /* ストライプの角度 */
        #f2f3f7 0,        /* ストライプの色（薄いグレー） */
        #f2f3f7 3px,      /* ストライプの太さ（3pxの間隔） */
        transparent 3px,  /* 透明部分 */
        transparent 6px   /* 透明部分（3pxから6pxまで） */
    );
}

/* pタグの余白 */
.about p {
    margin: 0;
}
/* 手書きノート風 */
.about {
    margin: 0 auto 2em; /* 外側の余白（上下と中央配置） */
    padding: 3em 2em 2em; /* 内側余白（上・左右・下） */
    position: relative;
    background: #f4f3f2; /* 背景色（ノート風の淡い色） */
}

.about::before {
    content: '';
    position: absolute;
    inset: 0.5em 0 0 0; /* 上から0.5em、左右と下を0に */
    margin: 0 auto; /* 水平方向中央揃え */
    width: 95%; /* ドット線の横幅 */
    border-top: dotted 10px #fff; /* ドット線（太さ10px、白） */
}

/* pタグの余白 */
.about p {
    margin: 0;
}