/*-----
* basic-style.css ver1.0.0
* Common to all pages(全ページ共通)
-----*/
/***** variable *****/
:root{
	--basic-font-size:16px;
	--sans-font:"Noto Sans JP", sans-serif;
	--serif-font:"Noto Serif JP", serif;
	--key-color:#00401b;
	--key-color-2:#849d68;
	--key-color-3:#5e8137;
	--border-color:#e5e5e5;
}
/***** common *****/
html,body{
	font-size:var(--basic-font-size, 16px);
	font-family:var(--sans-font);
	font-style: normal;
}
img{
	max-width: 100%;
	pointer-events: none;
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	user-select:none;
}
h1,
h2,
h3,
h4,
h5,
h6{
	margin: 0;
}
h4,
h5,
h6{
	font: inherit;
}
ul,
ol{
	margin: 0;
	padding: 0;
	list-style: none;
}
.basic-box p,
.basic-box h1,
.basic-box h2,
.basic-box h3,
.basic-box h4,
.basic-box h5,
.basic-box h6{
	margin:0;
}
.icon-size img{
	width:calc(var(--basic-font-size) * 1.5);
}
.mt1,
.basic-box .mt1{
	margin-top:10px;
}
.mt2,
.basic-box .mt2{
	margin-top:20px;
}
.mt3,
.basic-box .mt3{
	margin-top:30px;
}
.mt4,
.basic-box .mt4{
	margin-top:40px;
}
.mb1,
.basic-box .mb1{
	margin-bottom:10px;
}
.mb2,
.basic-box .mb2{
	margin-bottom:20px;
}
.mb3,
.basic-box .mb3{
	margin-bottom:30px;
}
.mb4,
.basic-box .mb4{
	margin-bottom:40px;
}
.mb5,
.basic-box .mb5{
	margin-bottom:50px;
}
.mb6,
.basic-box .mb6{
	margin-bottom:60px;
}
.mb7,
.basic-box .mb7{
	margin-bottom:70px;
}
.mb8,
.basic-box .mb8{
	margin-bottom:80px;
}
.pt2,
.basic-box .pt2{
	padding-top:20px;
}
.pt3,
.basic-box .pt3{
	padding-top:30px;
}
.pt4,
.basic-box .pt4{
	padding-top:40px;
}
.pb2,
.basic-box .pb2{
	padding-bottom:2rem;
}
.pb3,
.basic-box .pb3{
	padding-bottom:30px;
}
.pb4,
.basic-box .pb4{
	padding-bottom:40px;
}
.pc-br{
	display:block;
}
.sp-br{
	display:none;
}
@media screen and (min-width:769px) and ( max-width:1100px){
	
}
@media screen and (max-width:768px){
	.pc-br{
		display:none;
	}
	.sp-br{
		display:block;
	}
}
/***** header *****/
.site-header{
	width: 100%;
	position: absolute;
	z-index: 10;
	background-color: rgb(255 255 255 / 95%);
}
.site-header>.inner{
	width: 100%;
	max-width: 1200px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	padding: 0 2%;
	margin: auto;
}
.site-header .main-menu{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
}
.site-header .logo{
	min-width: 280px;
	position: relative;
	z-index: 1;
	margin: 20px 0;
}
.site-header .logo>a{
	display: block;
	height: 100%;
}
.site-header .logo>a>img{
	display: block;
	height: 40px;
	object-fit: cover;
}
.site-header .gmenu{
	height: 80px;
}
.site-header .gmenu>.wrap{
	width: 100%;
	height: 100%;
}
.site-header .gmenu>.wrap>.menu-logo{
	display: none;
}
.site-header .gmenu>.wrap>.menu-logo>p{
	
}
.site-header .gmenu>.wrap>.head-navi{
	width: 100%;
	height: 100%;
}
.site-header .gmenu>.wrap>.head-navi>ul{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
.site-header .gmenu>.wrap>.head-navi>ul>li{
	height: 100%;
	position: relative;
}
.site-header .gmenu>.wrap>.head-navi>ul>li.pc-none{
	display:none;
}
.site-header .gmenu>.wrap>.head-navi>ul>li:has(.t1>a:hover),
.site-header .gmenu>.wrap>.head-navi>ul>li.active{
	background-color: var(--key-color);
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1{
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0 15px;
	transition: all 200ms 0s ease;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a{
	height: 100%;
	font-size: 18px;
	color: var(--key-color);
	display: flex;
	cursor: pointer;
	transition: all 200ms 0s ease;
	align-items: center;
	position: relative;
	z-index: 1;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a.no-link{
	cursor: default;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a:hover,
.site-header .gmenu>.wrap>.head-navi>ul>li.active>.t1>a{
	color: #fff;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>.image{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 10px;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>.image>div{
	
}
.site-header .gmenu>.wrap>.head-navi>ul>li:has(.t1>a:hover)>.t1>.image>div>svg path,
.site-header .gmenu>.wrap>.head-navi>ul>li.active>.t1>.image>div>svg path{
	stroke:#fff;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>.sp-image{
	display: none;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2{
	position: absolute;
	top: 80px;
	right: 0;
	background-color: rgb(255 255 255 / 95%);
	min-width: 250px;
	padding: 15px 25px;
	opacity: 0;
	display: none;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2.pc-none{
	display:none;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2.active{
	display: block;
	animation-name: menu-anime;
	animation-duration: 200ms;
	animation-timing-function: linear;
	animation-fill-mode:forwards;
}
@keyframes menu-anime{
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li{
	
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a{
	display: block;
	font-size: 18px;
	color: var(--key-color);
	transition: all 200ms 0s ease;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a:hover{
	opacity:0.5;
}
.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a>.sp{
	display:none;
}
.site-header .gmenu>.wrap>.kifu{
	display: none;
	text-align: center;
	margin-top: 30px;
}
.site-header .gmenu>.wrap>.kifu>a{
	width: 90%;
	display: inline-flex;
	font-size: 16px;
	font-weight: 500;
	line-height: 1em;
	background-color: #ffd422;
	color: #000;
	border: 1px solid var(--key-color-2);
	border-radius: calc(100% / 12) / 50%;
	padding: 15px 15px;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 10px;
	justify-content: center;
}
.site-header .gmenu>.wrap>.kifu>a>svg{
	width: 18px;
}
.site-header .gmenu>.wrap>.kifu>a>svg path{
	fill: #000;
}
.site-header .banner-space{
	min-width: 150px;
}
.site-header .space-menu>.hamburger{
	display:none;
}
@media (orientation: landscape) and (max-height: 450px){
	.site-header .logo{
		min-width: 210px;
	}
	.site-header .logo>a>img{ 
		height: 30px;
	}
}
@media screen and (max-width:768px){
	.site-header{
		background-color: #fff;
		height: 70px;
	}
	.site-header .logo.active{
		position: fixed;
		top: 0;
		left: 8px;
	}
	.site-header .logo>a>img{
		height: 30px;
	}
	.site-header .gmenu>.wrap>.menu-logo{
		display: block;
		margin-bottom: 20px;
	}
	.site-header .gmenu>.wrap>.menu-logo>p{
		font-size: 24px;
		font-weight: 900;
		color: #fff;
		text-align: center;
		letter-spacing: 4px;
	}
	.site-header .gmenu{
		position: fixed;
		z-index: 1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		display: none;
	}
	.site-header .gmenu>.wrap{
		background-color: var(--key-color-2);
		padding:30px 30px 10px;
		opacity:0;
		transition: all 200ms 0s ease;
	}
	.site-header .gmenu.active>.wrap{
		opacity:1;
	}
	.site-header .gmenu>.wrap>.head-navi{
		width: 80%;
		height: auto;
		margin: auto;
	}
	.site-header .gmenu>.wrap>.head-navi>ul{
		flex-direction: column;
		justify-content: flex-start;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li{
		height: auto;
		margin-bottom: 20px;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li.pc-none{
		display: block;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li.mb-menu{
		margin-bottom: 5px;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li:has(.t1>a:hover),
	.site-header .gmenu>.wrap>.head-navi>ul>li.active{
		background-color: transparent;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a:hover,
	.site-header .gmenu>.wrap>.head-navi>ul>li.active>.t1>a{
		color: var(--key-color);
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a:hover{
		opacity:0.5;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1{
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		height: auto;
		padding: 0;
		gap: 20px;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>a{
		font-size: 16px;
		color: #fff;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>.image{
		display: none;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t1>.sp-image{
		/*display: block;*/
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2{
		position: relative;
		top: 0;
		padding: 0 0 0 25px;
		opacity: 1;
		display: block;
		overflow: hidden;
		background-color: transparent;
		transition: all 200ms 0s ease;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2.pc-none{
		display: block;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2.active{
		height: 100%;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul{
		margin-top: 5px;
		gap: 5px;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a{
		font-size: 16px;
		color: #fff;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a>.pc{
		display: none;
	}
	.site-header .gmenu>.wrap>.head-navi>ul>li>.t2>ul>li>a>.sp{
		display: block;
	}
	.site-header .gmenu>.wrap>.kifu{
		display:block;
	}
	.site-header .banner-space{
	    display: none;
	}
	.site-header .space-menu>div{
		
	}
	.site-header .space-menu>div>.hamburger{
		position: fixed;
		z-index: 1;
		top: 15px;
		right: 15px;
		background-color: #fff;
		padding: 7px;
		transition: all 200ms 0s ease;
	}
	.site-header .space-menu>div>.hamburger.active{
		background-color: var(--key-color-2);
	}
	.site-header .space-menu>div>.hamburger>div{
		width: 32px;
		height: 32px;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: space-between;
	}
	.site-header .space-menu>div>.hamburger>div>span{
		display: block;
		width: 100%;
		height: 3px;
		background-color: #000;
		transition: all 200ms 0s ease;
	}
	.site-header .space-menu>div>.hamburger.active>div>span{
		background-color: #fff;
	}
	.site-header .space-menu>div>.hamburger>div.active>span:nth-of-type(1){
		transform: rotate(45deg);
		transform-origin: top left;
		width: 43px;
	}
	.site-header .space-menu>div>.hamburger>div.active>span:nth-of-type(2){
		opacity:0;
	}
	.site-header .space-menu>div>.hamburger>div.active>span:nth-of-type(3){
		transform: rotate(-45deg);
		transform-origin: bottom left;
		width: 43px;
	}
	@keyframes menu-anime{
		0%{
			opacity: 1;
		}
		100%{
			opacity: 1;
		}
	}
}
/***** footer *****/
.site-footer{
	background-color: var(--key-color-2);
}
.site-footer>.inner{
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 25px 2% 15px;
}
.site-footer .foot-menu{
	
}
.site-footer .foot-menu>ul{
	width: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
}
.site-footer .foot-menu>ul>li{
	
}
.site-footer .foot-menu>ul>li>div{
	
}
.site-footer .foot-menu>ul>li>div>.t1{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
}
.site-footer .foot-menu>ul>li>div>.t1>.t1-1{
	display: inline-block;
	font-size: 22px;
	font-weight: 900;
	color: #fff;
	word-break: keep-all;
	margin-right: 20px;
}
.site-footer .foot-menu>ul>li>div>.t1>.t1-2{
	display: inline-block;
	font-size: 18px;
	font-weight: 500;
	color: #fff;
	word-break: keep-all;
	margin-right: 20px;
}
.site-footer .foot-menu>ul>li>div>.t1>span{
	display: block;
	width: 100%;
	height: 1px;
	background-color: #fff;
}
.site-footer .foot-menu>ul>li>div>.t2{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 5px 20px;
	padding: 15px 0;
}
.site-footer .foot-menu>ul>li>div>.t2>li{
	
}
.site-footer .foot-menu>ul>li>div>.t2>li>a{
	display: inline-block;
	font-size: 18px;
	font-weight: 500;
	color: #fff;
}
.site-footer .foot-menu>ul>li>div>.t2>li>a:hover{
	text-decoration: underline;
	-webkit-text-decoration: underline;
}
.site-footer .copyright{
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding: 0 2%;
}
.site-footer .copyright>p{
	font-size: 14px;
	color: #fff;
}
@media screen and (max-width:768px){
	.site-footer>.inner{
		padding: 25px 5% 15px;
	}
	.site-footer .foot-menu>ul>li>div>.t1{
		justify-content: center;
	}
	.site-footer .foot-menu>ul>li>div>.t1.pos-1{
		width: 60%;
		justify-content: left;
		margin: auto;
	}
	.site-footer .foot-menu>ul>li>div>.t1>span{
		display: none;
	}
	.site-footer .foot-menu>ul>li>div>.t1>.t1-1{
		letter-spacing: 5px;
	}
	.site-footer .foot-menu>ul>li>div>.t2>li>a{
		font-size: 16px;
	}
	.site-footer .foot-menu>ul>li>div>.t2{
		flex-direction: column;
		width: 60%;
		margin: auto;
		padding: 15px 0 20px 0;
	}
	.site-footer .copyright>p{
		font-size: 10px;
		text-align: center;
	}
}
/***** slde-banner *****/
.slde-banner{
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
	height: 80px;
}
.slde-banner>.wrap{
	height: 100%;
	display: flex;
	align-items: center;
}
.slde-banner>.wrap>a{
	display: inline-block;
	font-size: 19px;
	font-weight: 500;
	background-color: #99af80;
	color: #fff;
	padding: 10px 25px;
	transition: all 200ms 0s ease;
}
.slde-banner>.wrap>a:hover{
	opacity:0.5;
}
.slde-banner>.wrap>a>svg{
	display:none;
}
.slde-banner>.wrap>a>.sp{
	display:none;
}
@media screen and (max-width:768px){
	.slde-banner{
		position: relative;
		z-index: 9;
		background-color: var(--key-color-2);
		height: auto;
		min-height: 60px;
		padding-top: 10px;
	}
	.slde-banner>.wrap{
		flex-direction: row;
		justify-content: center;
	}
	.slde-banner>.wrap>a{
		font-size: 16px;
		position: fixed;
		bottom: 0;
		transform: translateY(70px);
		transition: all 200ms 0s ease;
	}
	.slde-banner>.wrap>a.active{
		width: 100%;
		display: flex;
		transform: translateY(0px);
		background-color: #5e8137;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: center;
		gap: 10px;
		align-items: center;
	}
	.slde-banner>.wrap>a>svg{
		display: block;
	}
	.slde-banner>.wrap>a>.pc{
		display:none;
	}
	.slde-banner>.wrap>a>.sp{
		display:block;
	}
}
/***** head-title-box *****/
.head-title-box{
	width: 100%;
	height: 100vh;
	min-height: 680px;
	overflow: hidden;
	position: relative;
	background-color: #726a72;
}
.head-title-box>.wrap{
	width: 100%;
	height: 100%;
	max-width: none;
	margin: auto;
}
.head-title-box>.wrap>.stand-box{
	width: 100%;
	height: 100%;
	position: relative;
}
.head-title-box>.wrap>.stand-box>.image{
	
}
.head-title-box>.wrap>.stand-box>.image>div{
	
}
.head-title-box>.wrap>.stand-box>.image>div>img{
	display: block;
	width: 100%;
	height: 100vh;
	min-height: 680px;
	object-fit: cover;
	object-position: 70% 60%;
}
.head-title-box>.wrap>.stand-box>.text{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 60px;
}
.head-title-box>.wrap>.stand-box>.text>div{
	width: 100%;
	padding: 0 10%;
	height: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
}
.head-title-box>.wrap>.stand-box>.text>div>.t1{
	font-size: 40px;
	font-weight: 700;
	color: #fff;
	line-height: 1em;
	margin-bottom: 40px;
}
.head-title-box>.wrap>.stand-box>.text>div>.t2{
	font-size: 50px;
	font-weight: 700;
	color: #fff;
	line-height: 1.2em;
	margin-bottom: 40px;
}
.head-title-box>.wrap>.stand-box>.text>div>.t3{
	font-size: 22px;
	font-weight: 700;
	color: #fff;
	line-height: 1.5em;
}
.head-title-box>.wrap>.stand-box>.text>div>.t3>.text-in{
	position: relative;
}
.head-title-box>.wrap>.stand-box>.text>div>.t3>.text-in::after{
	content: "はぐく";
	font-size: 10px;
	position: absolute;
	top: -19px;
	left: -3px;
	white-space: nowrap;
}
.head-title-box>.wrap>.slide-box{
	
}
.head-title-box>.wrap>.slide-box>.swiper1{
	
}
.head-title-box>.wrap>.slide-box>.swiper1>.swiper-wrapper{
	
}
.head-title-box>.wrap>.slide-box>.swiper1>.swiper-wrapper>.swiper-slide{
	
}
.head-title-box .swiper-slide>.image{
	width: 100%;
    height: auto;
}
.head-title-box .swiper-slide-active .image,
.head-title-box .swiper-slide-duplicate-active .image,
.head-title-box .swiper-slide-prev .image{
	animation-name:zoomUp;
	animation-duration:8000ms;
	animation-timing-function:linear;
	animation-fill-mode:both;
}
@keyframes zoomUp{
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.15);
	}
}
.head-title-box .swiper-slide>.image>img{
	max-width: unset;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	object-fit: cover;
	object-position: 50% 50%;
	transform-origin: center;
	height: auto;
	width: 100%;
}
.head-title-under-box{
	
}
.head-title-under-box>.wrap{
	
}
.head-title-under-box>.wrap>.stand-under-box{
	position: relative;
	width: 100%;
	height: 100%;
}
.head-title-under-box>.wrap>.stand-under-box>.image{
	
}
.head-title-under-box>.wrap>.stand-under-box>.image>div{
	
}
.head-title-under-box>.wrap>.stand-under-box>.image>div>img{
	display: block;
	width: 100%;
	height: 80vh;
	min-height: 550px;
	max-width: none;
	object-fit: cover;
}
.head-title-under-box>.wrap>.stand-under-box>.text{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.head-title-under-box>.wrap>.stand-under-box>.text>div{
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding-top: 50px;
}
.head-title-under-box>.wrap>.stand-under-box>.text>div>.t1{
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 4px;
	text-align: center;
	min-width: 40%;
	padding: 5px 20px;
}
.head-title-under-box>.wrap>.stand-under-box>.text.type1>div>.t1{
	background-color: var(--key-color);
	color: #fff;
}
.head-title-under-box>.wrap>.stand-under-box>.text.type2>div>.t1{
	background-color: #fff;
	color: #000;
}
@media (orientation: landscape) and (max-height: 450px) {
	
}
@media screen and (max-width:768px){
	.head-title-box>.wrap>.stand-box>.text>div>.t1{
		font-size: 28px;
		margin-bottom: 20px;
	}
	.head-title-box>.wrap>.stand-box>.text>div>.t2{
		font-size: 39px;
		margin-bottom: 20px;
	}
	.head-title-under-box>.wrap>.stand-under-box>.image>div>img{
		height: 40vh;
		min-height: auto;
	}
	.head-title-under-box>.wrap>.stand-under-box>.text>div>.t1{
		font-size: 20px;
	}
}
/***** up-bg *****/
.up-bg{
	width: 100%;
	position: relative;
	z-index: -1;
}
.up-bg>.wrap{
	position: absolute;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;
	overflow-x: clip;
	transform: translateY(30px);
}
.up-bg>.wrap>.lf{
	transform: translateX(-80px);
}
.up-bg>.wrap>.lf>img{
	
}
.up-bg>.wrap>.ri{
	transform: translateX(80px);
}
.up-bg>.wrap>.ri>img{
	
}
@media screen and (max-width:768px){
	.up-bg{
		display: none;
	}
}
/***** box1 *****/
.box1{
	position: relative;
}
.box1>.inner{
	position: relative;
}
.box1 .block1{
	width: 80%;
	margin: auto;
}
.box1 .block1.mb2{
	margin-bottom: 20px;
}
.box1 .block1.mb3{
	margin-bottom: 30px;
}
.box1 .block1.mb4{
	margin-bottom: 40px;
}
.box1 .block1>.title{
	text-align: center;
}
.box1 .block1>.title>.t1{
	font-size: 30px;
	font-weight: 700;
	color: var(--key-color);
}
.box1 .block1>.text{
	
}
.box1 .block1>.text>.t1{
	font-size: 30px;
	font-weight: 700;
	color: var(--key-color);
	line-height: 1.7em;
	text-align: center;
}
.box1 .block1>.text>.t2{
	display: block;
	font-size: 42px;
	font-weight: 700;
	color: var(--key-color);
	line-height: 1.7em;
	text-align: center;
}
.box1 .block1>.text>.t3{
	
}
.box1 .block1>.text>.t3.center{
	text-align: center;
}
.box1 .block1>.text>.t3>p{
	font-size: 20px;
	line-height: 2em;
}
.box1 .block1>.text>.t3>p.serif-font{
	font-family: var(--serif-font);
}
.box1 .block1>.text>.t4{
	
}
.box1 .block1>.text>.t4.center{
	text-align: center;
}
.box1 .block1>.text>.t4>p{
	font-size: 20px;
	line-height: 2em;
}
.box1 .block2{
	
}
.box1 .block2>.wrap{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}
.box1 .block2>.wrap>.image{
	width: 20%;
	padding: 0 20px;
}
.box1 .block2>.wrap>.image>img{
	display: block;
	width: 100%;
	max-width: none;
}
@media screen and (max-width:768px){
	.box1>.bg-box{
		display: none;
	}
	.box1>.inner{
		padding: 2rem 5%;
	}
	.box1 .block1{
		width: 100%;
	}
	.box1 .block1>.text>.t1{
		font-size: 16px;
	}
	.box1 .block1>.text>.t2{
		font-size: 22px;
	}
	.box1 .block1>.text>.t3>p{
		font-size: 16px;
	}
	.box1 .block1>.text>.t4>p{
		font-size: 16px;
	}
	.box1 .block2>.wrap>.image{
		width: 33%;
		padding: 0 10px;
		margin-bottom: 20px;
	}
}
/***** box2 *****/
.box2{
	
}
.box2.color2{
	background-color: var(--key-color-2);
}
.box2.color3{
	background-color:var(--key-color);
}
.box2>.inner{
	padding: 4rem 2%;
}
.box2 .title{
	text-align: center;
}
.box2 .title>.wrap{
	
}
.box2 .title>.wrap>.t1{
	font-size: 30px;
	font-weight: 700;
	color: #000;
}
.box2 .title>.wrap>.t1.co1{
	color: #fff;
}
.box2 .title>.wrap>.t2{
	font-size: 40px;
	font-weight: 700;
	color: #000;
}
.box2 .title>.wrap>.t2.co1{
	color: #fff;
}
.box2 .title>.wrap>.t3{
	position: relative;
}
.box2 .title>.wrap>.t3>div{
	
}
.box2 .title>.wrap>.t3>div>.t1{
	display: block;
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	font-size: 36px;
	font-weight: 700;
	line-height: 1em;
	color: var(--key-color-2);
	letter-spacing: 4px;
}
.box2 .title>.wrap>.t3>div>.pos1{
	top: -50px;;
}
.box2 .title>.wrap>.t3>div>img{
	
}
.box2 .title>.wrap>.t4{
	font-size: 30px;
	font-weight: 700;
	color: #fff;
}
.box2 .title>.wrap>.t5{
	font-size: 40px;
	font-weight: 700;
	color: #fff;
}
.box2 .block1{
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	position: relative;
}
.box2 .block1.h600{
	min-height: 600px;
}
.box2 .block1>.text{
	width: 100%;
	height: 100%;
	min-height: 450px;
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.box2 .block1>.text>.t1{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: flex-start;
	gap: 10px;
	position: relative;
	z-index: 1;
}
.box2 .block1>.text>.t1.o-mb1,
.box2 .block1>.text>.t1.o-mb2{
	margin-bottom: 40px;
}
.box2 .block1>.text>.t1>span{
	font-size: 38px;
	font-weight: 700;
	background-color: var(--key-color);
	color: #fff;
	display: inline-flex;
	padding: 3px 12px;
	letter-spacing: 7px;
}
.box2 .block1>.text>.t1>span.fsize1{
	font-size: 32px;
}
.box2 .block1>.text>.t1>span.co1{
	background-color: #fff;
	color: var(--key-color);
}
.box2 .block1>.text>.t1>span.co2{
	background-color: var(--key-color-2);
	color: #fff;
}
.box2 .block1>.text>.t1>span.co3{
	background-color: var(--key-color-2);
	color: #fff;
}
.box2 .block1>.text>.t1>span.sp-on{
	display:none;
}
.box2 .block1>.text>.t1>span>.sp-off{
	display:block;
}
.box2 .block1>.text>.t2{
	font-size: 20px;
	line-height: 1.7em;
}
.box2 .block1>.text>.t2.co1{
	color: #fff;
}
.box2 .block1>.text>.t2.w50{
	max-width: 48%;
}
.box2 .block1>.text>.t3{
	
}
.box2 .block1>.text>.t3>a{
	display: inline-flex;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	background-color: var(--key-color);
	color: #fff;
	border: 1px solid var(--key-color);
	border-radius: calc(100% / 9) / 50%;
	padding: 20px 25px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	gap: 10px;
	transition: all 300ms 0s ease;
}
.box2 .block1>.text>.t3>a.co1{
	background-color: #fff;
	color: var(--key-color);
}
.box2 .block1>.text>.t3>a:hover,
.box2 .block1>.text>.t3>a.co1:hover{
	opacity:0.5;
}
.box2 .block1>.text>.t3>a>.up{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
}
.box2 .block1>.text>.t3>a>.up>svg{
	width: 18px;
}
.box2 .block1>.text>.t3>a.co1>.up>svg path{
	fill:var(--key-color);
}
.box2 .block1>.text>.t3>a>.up>span{
	
}
.box2 .block1>.text>.t3>a>.low{
	
}
.box2 .block1>.text>.t3>a>.low>span{
	
}
.box2 .block1>.text>.sp-image{
	display: none;
}
.box2 .block1>.image{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
	justify-content: flex-end;
}
.box2 .block1>.image>div{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: flex-end;
}
.box2 .block1>.image>div>img{
	width: 60%;
	height: 100%;
	max-height: 500px;
	object-fit: contain;
	object-position: right;
	transform: scale(1.1);
	transform-origin: top right;
}
.box2 .block1>.image.type1>div>img{
	width: 50%;
}
.box2 .block1>.image.type2>div>img{
	width: 45%;
}
.box2 .block1>.image.type3>div>img{
	width: 45%;
	transform: scale(1);
}
.box2 .block2{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-evenly;
}
.box2 .block2>.left{
	
}
.box2 .block2>.left>.t1{
	font-size: 28px;
	font-weight: 700;
	color: #fff;
	line-height: 1.7em;
}
.box2 .block2>.left>.t2{
	font-size: 20px;
	color: #fff;
	line-height: 1.7em;
}
.box2 .block2>.right{
	
}
.box2 .block2>.right>a{
	display: inline-flex;
	width: 350px;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	background-color: var(--key-color-2);
	color: #fff;
	border: 1px solid var(--key-color-2);
	border-radius: calc(100% / 12) / 50%;
	padding: 20px 25px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	gap: 10px;
	transition: all 300ms 0s ease;
}
.box2 .block2>.right>a.co1{
	background-color: #ffd422;
	color:#000;
}
.box2 .block2>.right>a.co1:hover{
	opacity:0.5;
}
.box2 .block2>.right>a>.up{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
}
.box2 .block2>.right>a>.up>svg{
	width: 18px;
}
.box2 .block2>.right>a>.up>svg path{
	
}
.box2 .block2>.right>a.co1>.up>svg path{
	fill:#000;
}
.box2 .block2>.right>a>.up>span{
	
}
@media screen and (max-width:768px){
	.box2>.inner{
		padding: 4rem 5%;
	}
	.box2 .title{
		margin-top: 40px;
	}
	.box2 .title>.wrap>.t1{
		font-size: 18px;
	}
	.box2 .title>.wrap>.t2{
		font-size: 24px;
	}
	.box2 .title>.wrap>.t3>div>.t1{
		font-size: 18px;
	}
	.box2 .title>.wrap>.t3>div>.pos1{
		top: -24px;
	}
	.box2 .title>.wrap>.t3>div>img{
		width: 70%;
	}
	.box2 .title>.wrap>.t4{
		font-size: 24px;
	}
	.box2 .title>.wrap>.t5{
		font-size: 28px;
	}
	.box2 .block1{
		flex-direction: column;
	}
	.box2 .block1>.text{
		min-height: auto;
	}
	.box1 .block1>.title>.t1{
		font-size: 24px;
	}
	.box1 .block1>.title>.font-s{
		font-size: 16px;
	}
	.box2 .block1>.text>.t1.o-mb1{
		margin-bottom: 20px;
	}
	.box2 .block1>.text>.t1>span,
	.box2 .block1>.text>.t1>span.fsize1{
		font-size: 24px;
		letter-spacing:3px;
	}
	.box2 .block1>.text>.t1>span.sp-on{
		display: block;
	}
	.box2 .block1>.text>.t1>span>.sp-off{
		display: none;
	}
	.box2 .block1>.text>.t2{
		font-size: 16px;
	}
	.box2 .block1>.text>.t2.w50{
		max-width: 100%;
	}
	.box2 .block1>.text>.t3{
		text-align: center;
	}
	.box2 .block1>.text>.t3>a{
		font-size: 16px;
		padding: 15px 25px;
	}
	.box2 .block1>.text>.sp-image{
		display: block;
	}
	.box2 .block1>.text>.sp-image>div{
		transform: translateY(-40px);
	}
	.box2 .block1>.image{
		display: none;
	}
	.box2 .block1>.image>div>img{
		width: 100%;
		transform: scale(1);
	}
	.box2 .block1>.image.type2>div>img,
	.box2 .block1>.image.type3>div>img{
		width: 100%;
		max-height: none;
	}
	.box2 .block2{
		flex-direction: column;
	}
	.box2 .block2>.left{
		margin-bottom: 20px;
	}
	.box2 .block2>.left>.t1{
		font-size: 18px;
	}
	.box2 .block2>.left>.t2{
		font-size: 16px;
	}
	.box2 .block2>.right>a{
		font-size: 16px;
		width: 300px;
		padding: 15px 25px;
	}
}
/***** box3 *****/
.box3{
	
}
.box3>.inner{
	padding: 0rem 2% 4rem;
}
.box3 .block1{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
.box3 .block1>.image{
	width: 45%;
	padding-right: 50px;
}
.box3 .block1>.image>div{
	position: relative;
	width: 100%;
	height: 100%;
}
.box3 .block1>.image>div>img{
	width: 100%;
	max-width: none;
}
.box3 .block1>.image>div>div{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.box3 .block1>.image>div>div>svg{
	
}
.box3 .block1>.image>div>div>svg path{
	
}
.box3 .block1>.text{
	width: 55%;
}
.box3 .block1>.text>.wrap{
	height: 100%;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-between;
}
.box3 .block1>.text>.wrap>.up>.t1{
	font-size: 38px;
	font-weight: 700;
	margin-bottom: 10px;
}
.box3 .block1>.text>.wrap>.up>.t2{
	
}
.box3 .block1>.text>.wrap>.up>.t2>.t2-1{
	font-size: 24px;
	font-weight: 700;
}
.box3 .block1>.text>.wrap>.up>.t2>.t2-2{
	font-size: 18px;
	line-height: 1.7em;
}
.box3 .block1>.text>.wrap>.low{
	
}
.box3 .block1>.text>.wrap>.low>a{
	display: flex;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	color: #fff;
	background-color: var(--key-color-2);
	border: 1px solid var(--key-color-2);
	padding: 20px 10px;
	justify-content: center;
	transition: all 300ms 0s ease;
}
.box3 .block1>.text>.wrap>.low>a:hover{
	opacity:0.5;
}
.box3 .block1>.text>.wrap>.low>a>.up{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
}
.box3 .block1>.text>.wrap>.low>a>.up>svg{
	width: 18px;
}
.box3 .block1>.text>.wrap>.low>a>.up>svg path{
	transition: all 300ms 0s ease;
}
.box3 .block1>.text>.wrap>.low>a>.up>span{
	
}
@media screen and (max-width:768px){
	.box3>.inner{
		padding: 0rem 5% 4rem;
	}
	.box3 .block1>.image{
		width: 100%;
		padding-right: 0;
		margin-bottom: 20px;
	}
	.box3 .block1{
		flex-direction: column;
	}
	.box3 .block1>.text{
		width: 100%;
	}
	.box3 .block1>.text>.wrap>.up{
		margin-bottom: 20px;
	}
	.box3 .block1>.text>.wrap>.up>.t1{
		font-size: 24px;
		text-align: center;
	}
	.box3 .block1>.text>.wrap>.up>.t2>.t2-1{
		font-size: 18px;
	}
	.box3 .block1>.text>.wrap>.up>.t2>.t2-2{
		font-size: 16px;
	}
	.box3 .block1>.text>.wrap>.low>a{
		font-size: 16px;
		padding: 15px 10px;
	}
}
/***** box4 *****/
.box4{
	
}
.box4>.inner{
	
}
.box4 .title{
	text-align: center;
}
.box4 .title>.wrap{
	
}
.box4 .title>.wrap>.t1{
	font-size: 30px;
	font-weight: 700;
	color: #000;
}
.box4 .title>.wrap>.t2{
	font-size: 40px;
	font-weight: 700;
	color: #000;
}
.box4 .title>.wrap>.t3{
	position: relative;
}
.box4 .title>.wrap>.t3>div{
	
}
.box4 .title>.wrap>.t3>div>.t1{
	display: block;
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	font-size: 36px;
	font-weight: 700;
	line-height: 1em;
	color: var(--key-color-2);
	letter-spacing: 4px;
}
.box4 .title>.wrap>.t3>div>img{
	
}
.box4 .block1{
	
}
.box4 .block1>.wrap{
	width: 80%;
	margin: auto;
}
.box4 .block1>.wrap>.post-list{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 30px;
}
.box4 .block1>.wrap>.post-list>li{
	
}
.box4 .block1>.wrap>.post-list>li>div{
	padding-bottom: 20px;
	border-bottom: 1px solid var(--key-color-2);
}
.box4 .block1>.wrap>.post-list>li>div>.t1{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 20px;
	margin-bottom: 10px;
}
.box4 .block1>.wrap>.post-list>li>div>.t1>span{
	display: block;
	font-size: 18px;
}
.box4 .block1>.wrap>.post-list>li>div>.t1>a{
	font-size: 18px;
	line-height: 1em;
	color: var(--key-color-2);
	border: 1px solid var(--key-color-2);
	border-radius: 15px / 50%;
	padding: 3px 20px 5px;
	transition: all 200ms 0s ease;
}
.box4 .block1>.wrap>.post-list>li>div>a.t2{
	font-size: 18px;
	line-height: 1.7em;
	transition: all 200ms 0s ease;
}
.box4 .block1>.wrap>.post-list>li>div>.t1>a:hover,
.box4 .block1>.wrap>.post-list>li>div>a.t2:hover{
	opacity:0.5;
}
.box4 .block2{
	
}
.box4 .block2>.wrap{
	text-align: center;
}
.box4 .block2>.wrap>a{
	display: inline-flex;
	width: 350px;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	background-color: var(--key-color-2);
	color: #fff;
	border: 1px solid var(--key-color-2);
	border-radius: calc(100% / 12) / 50%;
	padding: 20px 25px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	gap: 10px;
	transition: all 300ms 0s ease;
}
.box4 .block2>.wrap>a:hover{
	opacity:0.5;
}
.box4 .block2>.wrap>a>.up{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
}
.box4 .block2>.wrap>a>.up>svg{
	width: 18px;
}
.box4 .block2>.wrap>a>.up>svg path{
	transition: all 300ms 0s ease;
}
@media screen and (max-width:768px){
	.basic-box>.inner{
		padding: 2rem 5%;
	}
	.box4 .title>.wrap>.t2{
		font-size: 24px;
	}
	.box4 .title>.wrap>.t3>div>.t1{
		font-size: 18px;
	}
	.box4 .title>.wrap>.t3>div>img{
		width: 70%;
	}
	.box4 .block1>.wrap{
		width: 100%;
	}
	.box4 .block1>.wrap>.post-list>li>div>.t1>span{
		font-size: 14px;
	}
	.box4 .block1>.wrap>.post-list>li>div>.t1>a{
		font-size: 13px;
		border-radius: 10px / 50%;
		padding: 3px 10px 5px;
	}
	.box4 .block1>.wrap>.post-list>li>div>a.t2{
		font-size: 14px;
	}
	.box4 .block2>.wrap>a{
		width: 80%;
		font-size: 16px;
		padding: 15px 10px;
	}
}
/***** box5 *****/
.box5{
	
}
.box5>.inner{
	


}
.box5 .block1{
	text-align: center;
}
.box5 .block1>a{
	display: inline-flex;
	width: 50%;
	min-width: 300px;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
	background-color: #fff;
	border: 1px solid var(--key-color-2);
	border-radius: 60px / 50%;
	padding: 10px 20px;
	transition: all 300ms 0s ease;
}
.box5 .block1>a:hover{
	background-color: var(--key-color-2);
}
.box5 .block1>a>p{
	font-size: 24px;
	font-weight: 700;
	color: var(--key-color-2);
	letter-spacing: 4px;
	transition: all 300ms 0s ease;
}
.box5 .block1>a:hover>p{
	color: #fff;
}
.box5 .block1>a>div{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: 7px;
}
.box5 .block1>a>div>svg{
	width: 20px;
}
.box5 .block1>a>div>svg path{
	fill: var(--key-color-2);
	transition: all 300ms 0s ease;
}
.box5 .block1>a:hover>div>svg path{
	fill: #fff;
}
.box5 .block1>a>div>span{
	font-size: 30px;
	font-weight: 700;
	color: var(--key-color-2);
	transition: all 300ms 0s ease;
}
.box5 .block1>a:hover>div>span{
	color: #fff;
}
@media screen and (max-width:768px){
	.box5 .block1>a{
		width: 100%;
		min-width: unset;
		border-radius: 50px / 50%;
	}
	.box5 .block1>a>p{
		font-size: 16px;
	}
	.box5 .block1>a>div>span{
		font-size: 20px;
	}
}






/*****  *****/


@media screen and (max-width:768px){
	
	
}
/***** fade-target *****/
.fade-target{
	transition: all 600ms 0s ease-out;
	transform: translateY(20px);
	opacity: 0;
}
.f-active{
	transform: translateY(0);
	opacity: 1;
}
@media screen and (max-width:768px){
	
	
}
/***** bread-box *****/
.bread-box{
	
}
.bread-box>.inner{
	padding: 1rem 2% 1rem;
}
.bread-box>.inner>ol{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	font-size: 16px;
	gap: 5px;
}
.bread-box>.inner>ol>li{
	
}
.bread-box>.inner>ol>li>a{
	display: inline-block;
}
.bread-box>.inner>ol>li>a>span{
	
}
@media screen and (max-width:768px){
	.bread-box{
		display: none;
	}
	.bread-box>.inner{
		padding: 1rem 5% 1rem;
	}
}
/***** back top top *****/
.backtoup{
	position: fixed;
	bottom: 10px;
	right: 10px;
	cursor: pointer;
	opacity: 0;
	transition: opacity 200ms 0s ease;
	z-index: 10;
}
.backtoup.btuActive{
	opacity: 1;
}
.backtoup>div{
	width: 100%;
	height: 100%;
	position: relative;
	border: 1px solid var(--border-color);
	border-radius: 50%;
	transform: scale(0.9);
	transition: all 200ms 0s ease;
}
.backtoup:hover>div{
	transform: scale(1);
}
.backtoup>div>svg>path{
	stroke: var(--border-color);
}
@media screen and (max-width:768px){
	
	
}
/***** 404 *****/
.not-found-box .text-box{
	min-height: 50vh;
	text-align: center;
}
.not-found-box .text-box>.p-1{
	font-size: 2rem;
	font-weight: bold;
	font-family: monospace, monospace;
	margin-bottom: 2rem;
}
.not-found-box .text-box>div>p>a:hover{
	text-decoration: underline;
	-webkit-text-decoration: underline #000;
}
@media screen and (max-width:768px){
	
	
}
