@charset "utf-8";
h2,h3,h4,h5{font-family:"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
	
/* 共通 */
.mb15{margin-bottom: 15px!important;}
.mb30{margin-bottom: 30px!important;}
.mb50{margin-bottom: 50px!important;}
.mb80{margin-bottom: 80px!important;}
.pd30{padding:30px;}
.pd80{padding:80px 0;}
.fs18{font-size: 18px!important;}
.fs20{font-size: 20px!important;}
.fs22{font-size: 22px!important;}
.fs26{font-size: 26px!important;}
.center,.center_l{text-align: center;}
.wb{font-weight: bold;}
.fcg{color:#60ab4a!important;}
.bgg{background: #eaf9e6;}
.border{border-bottom: 1px solid #d1cbc3;}
.flexbox,.flexcenter {
	display: flex;
    flex-wrap: wrap;
	width: 100%;
}
.flexbox{justify-content: space-between;}
.flexcenter{justify-content: center;}
.al-center{align-items: center!important;}
.shadow{
	background: #fff;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
	border-radius: 25px;
}
.c2 > *{width: 48%;margin: 0 1%;}
.c3 > *{width: 31%;margin: 0 1%;}
.c4 > *{width: 24%;margin: 0 0.5%;}
.c2 > *:not(:nth-last-child(-n+2)) {
    margin-bottom: 30px;
}
.c3 > *:not(:nth-last-child(-n+3)) {
    margin-bottom: 30px;
}
.c4 > *:not(:nth-last-child(-n+4)) {
    margin-bottom: 30px;
}
.sp_on{display: none;}

/* ヘッダー
------------------------------------------------------------*/
header{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin:10px 50px;
}
h1{
	font-size: 0.77rem;
	font-weight: 400;
	margin-bottom:20px
}
header div:first-child{width:400px;}
header div:last-child{width:calc(100% - 400px);}
/* ナビゲーション
------------------------------------------------------------*/
/* pc-nav */
.pc-nav > ul{display: flex; justify-content: flex-end;align-items:center;}
.pc-nav a{
	display: block;
	padding-bottom: 2px; /* テキストと下線の間隔 */
	background-image: linear-gradient(#60ab4a, #60ab4a);
	background-repeat: no-repeat;
	background-position: bottom right; /* 下線の初期位置 */
	background-size: 0 2px; /* 下線のサイズ（横幅、高さ） */
	transition: background-size 0.3s;
}
.pc-nav > ul > li:last-child{margin-left:5vw;}
.pc-nav > ul > li:not(:first-child){margin-left: 3vw;}
.pc-nav{
	position: relative;
	z-index: 3;
}
.pc-nav a:hover{
	color: #60ab4a;
	opacity: 1.0;
	background-position: bottom left; /* 下線のホバー時位置 */
	background-size: 100% 3px; /* 下線の横幅を100%にする */
}

/* ドロワー */
.drawer-hamburger {
	display: none !important;
	width: 2.5rem !important;
	height:2.5rem;
	padding: 0px 10px 10px 8px!important;
	position: fixed;
	top:5px !important;
	right:5px !important;
	background: #60ab4a!important;
	border-radius:5px;
	z-index: 99!important;
}
.drawer-hamburger-icon,.drawer-hamburger-icon:after,.drawer-hamburger-icon:before {
	background-color: #fff !important;
	height: 1.2px !important;
}
.drawer-open .drawer-hamburger-icon:before,.drawer-open .drawer-hamburger-icon:after{
	width: 100%!important;
	padding-left: 40px!important;
}
.drawer-open .drawer-hamburger-icon {background-color: transparent !important;}
.drawer-open .drawer-hamburger-icon:after, .drawer-open .drawer-hamburger-icon:before {top: 0 !important;}
.drawer-nav {z-index: 3!important;width: 100% !important;background: #fff;height: 100%!important;}
.drawer-overlay {z-index: 2!important;background: none !important;}
.drawer--top.drawer-open .drawer-nav{
	opacity: 1!important;
	visibility: visible;
}
/* この下でデザイン */
.drawer-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.drawer-menu{
	max-width: 800px;
	width: 80%;
	height: 100%;
    overflow-y: scroll;
}
.drawer-menu ul{
	padding:20px 0; 
}
.drawer-menu > li:not(:nth-last-child(-n+2)){
	border-bottom: 1px #E6E6E6 solid;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.drawer-menu > li:last-child a{
	margin: auto;
}
.drawer-menu.drawer-top > li a{
	display: block;
	text-align: center;
	font-weight: bold;
}

/* 共通　コンテンツ
------------------------------------------------------------*/
#pagetop {
    position: fixed;
    right: 1.2%;
	bottom: -150px;
	transition: .3s ease-out;
	z-index: 2!important;
}
#pagetop a:hover {opacity: 0.5;}
#pagetop.is-active {
  bottom: 10px;
}
.content{width: 100%;padding: 60px 0;}
.inner-box{max-width: 1200px;width: 90%;margin: 0 auto;}

.ti2{display:flex; align-items: center; justify-content: center;}
.ti2 h2{
	font-size:1.45rem;
	line-height:1.3;
	letter-spacing: 2px;
	text-align: center;
}
.ti2::before,.ti2::after{
	content: '';
	width: 21px;
	height: 74px;
	vertical-align: middle;
	background-image: url("../images/ti.webp");
	background-repeat: no-repeat!important;
	background-size: contain!important;
	padding-right:5rem;
}
.ti2::after{transform: scale(-1, 1);}


/* フッター
------------------------------------------------------------*/
footer .flexbox > div{width:47%;}

.map iframe{width:100% !important; height: 100% !important; border-radius: 10px;}
.copy{
	background:#60ab4a;
	text-align: center;
	color: #fff;
	font-size: 18px;
	letter-spacing: 3px;
	padding:20px 0;
}
footer img{max-width:600px;width:100%;display:block; height: auto; margin: auto;}
footer img.ftel{max-width:430px;width:100%;height: auto; margin: auto;}
footer dl div{display:flex;padding:5px 0;}
footer dl dt:not(:last-child){width:8em;color:#60ab4a;}
footer dl dt:not(:last-child)::before{content: "";display:inline-block; width:7px;height: 7px;background:#60ab4a;border-radius: 50%;margin-right: 10px;}
footer dl dt:last-child{width:100%;padding:10px;margin-top:10px; border-top:1px solid #d1cbc3; border-bottom:1px solid #d1cbc3;}

/* 1500px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1500px){
	header div:first-child{width:300px;}
	header div:last-child{width:calc(100% - 380px);}
	a.logo img{width: 250px;}
	.pc-nav > ul{display: flex; justify-content: space-between;align-items:center;}
	.pc-nav > ul > li:last-child{margin-left:auto;}
	.pc-nav > ul > li:not(:first-child){margin-left: auto;}
	.pc-nav > ul a{font-size: 16px;}
	.pc-nav > ul > li:last-child img{width:250px;}
}
	/* 1200px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1200px){
	a[href^="tel:"]{pointer-events: auto;}
	#pagetop img {width: 50px;height: auto;}

	/* 共通 */
	.mb15{margin-bottom: 10px!important;}
	.mb20{margin-bottom: 15px!important;}
	.mb30{margin-bottom: 20px!important;}
	.mb50{margin-bottom: 30px!important;}
	.mb80{margin-bottom: 50px!important;}
	.pd30{padding:15px;}
	.fs18{font-size: 16px!important;}
	.fs20,.fs22,.fs24{font-size: 18px!important;}
	.c4 > *{width: 48%;margin: 0 1%;}
	.c4 > *:not(:nth-last-child(-n+2)) {margin-bottom: 15px;}
	/* ヘッダー
	--------------------------------------*/
	header{margin:10px 30px;}
	h1{font-size: 0.75rem;margin-bottom:10px;margin-right:0px;}

	/*　共通コンテンツ
	--------------------------------------*/
	.content{padding: 60px 0;}
	.title{margin-bottom: 40px;}
	.title p::before{
		width: 22px;
		height: 11px;
		margin-bottom: 8px;
	}
	.title p{
		font-size: 18px;
		margin-bottom: 8px;
		letter-spacing: 2px;
		line-height: 120%;
	}
	.title h2{
		font-size: 25px;
		letter-spacing: 1px;
	}

	/* フッター
	--------------------------------------*/
	.copy{
		font-size: 14px;
		letter-spacing: 2px;
	}
}
/* 1080px以下から
------------------------------------------------------------*/
@media only screen and (max-width:1080px){
	body {min-width: 1030px!important;font-size:1rem;}
	header div:first-child{width:calc(100% - 60px);}

	/* ナビゲーション
	--------------------------------------*/
	.drawer-hamburger {display: block!important;}
	.drawer-nav{padding: 30px !important;}
	.pc-nav{display: none;}
	.drawer-menu.drawer-top > li:not(:nth-last-child(-n+2)){
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
	.drawer-menu.drawer-top > li a,.drawer-menu.drawer-top > li span{font-size: 16px;}
	.drawer-menu.drawer-top > li span::after{right: 35%;top: 6px;}
	.drawer-menu.drawer-top > li:last-child a{
		width: 80%;
		padding: 15px 0;
		background-size: 18px;
	}
	.drawer-menu.drawer-top > li:nth-last-child(2){margin-bottom: 25px;}

}
/* 768px以下から
------------------------------------------------------------*/
@media only screen and (max-width:768px){
	body {min-width: 710px!important;}

	/* 共通 */
	.center_l{text-align: inherit;}
	.c2 > *{width: 100%;margin: 0;}
	.c2 > *:not(:last-child){margin-bottom: 30px;}
	.c3 > *{width: 48%;}
	/* ヘッダー
	--------------------------------------*/
	header,#main_area{margin:0 5px 10px;}
	a.logo img{width: 200px;}

	/*共通コンテンツ*/
	.ti2 h2{
		font-size:1.2rem;
		line-height:1.2;
		letter-spacing: 1px;
	}
	.ti2::before,.ti2::after{
		padding-right:2rem;
	}
	/*フッター*/
	footer .flexbox div{width:100%;}
	.map iframe{width:100%!important; height: 400px!important; border-radius: 10px;}
}

/* 500px以下から
------------------------------------------------------------*/
@media only screen and (max-width:500px){
    body {min-width: 100% !important;width: 100%;}
	/* 共通 */
	.c3 > *{width: 100%;margin: 0;}
	.c3 > *:not(:last-child){margin-bottom: 30px;}
	.c3 > * img{display: block; margin:auto;}
	.c4 > *{width: 100%;margin: 0;}
	.c4 > *:not(:last-child) {margin-bottom: 15px;}
	.sp_on{display: block;}
	.sp_non{display: none;}
	

	/* ナビゲーション
	--------------------------------------*/
	.drawer-hamburger {
		width: 2rem !important;
	}
	.drawer-open .drawer-hamburger-icon:before,.drawer-open .drawer-hamburger-icon:after{padding-left: 30px!important;}
	.drawer-menu.drawer-top > li span::after{right: 23%;}
	.drawer-nav{padding: 50px 0;}
	.drawer-menu{
		height: 100%;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	.drawer-menu > li:last-child a{width:100% !important;}
	footer dl div{display:block;}
}