@charset "utf-8";

/* UTILITY */
/* -------------------------------------------------- */
.m1b {
	margin-bottom: 1px !important;
}

.m2b {
	margin-bottom: 2px !important;
}

.m3b {
	margin-bottom: 3px !important;
}

.m4b {
	margin-bottom: 4px !important;
}

.m5b {
	margin-bottom: 5px !important;
}

.m6b {
	margin-bottom: 6px !important;
}

.m7b {
	margin-bottom: 7px !important;
}

.m8b {
	margin-bottom: 8px !important;
}

.m9b {
	margin-bottom: 9px !important;
}

.m10b {
	margin-bottom: 10px !important;
}

.m13b {
	margin-bottom: 13px !important;
}

.m15b {
	margin-bottom: 15px !important;
}

.m20b {
	margin-bottom: 20px !important;
}

.m25b {
	margin-bottom: 25px !important;
}

.m30b {
	margin-bottom: 30px !important;
}

.m35b {
	margin-bottom: 35px !important;
}

.m40b {
	margin-bottom: 40px !important;
}

.m45b {
	margin-bottom: 45px !important;
}

.m50b {
	margin-bottom: 50px !important;
}

.m55b {
	margin-bottom: 55px !important;
}

.m65b {
	margin-bottom: 65px !important;
}

.m70b {
	margin-bottom: 70px !important;
}

.m80b {
	margin-bottom: 80px !important;
}

.m20t {
	margin-top: 20px !important;
}

.m5l {
	margin-left: 5px !important;
}

.m9l {
	margin-left: 9px !important;
}

.m10l {
	margin-left: 10px !important;
}

.m12l {
	margin-left: 12px !important;
}

.m15l {
	margin-left: 15px !important;
}

.m20l {
	margin-left: 20px !important;
}

.m25l {
	margin-left: 25px !important;
}

.m30l {
	margin-left: 30px !important;
}

.m150l {
	margin-left: 150px !important;
}

.m570l {
	margin-left: 570px !important;
}

.m5r {
	margin-right: 5px !important;
}

.m10r {
	margin-right: 10px !important;
}

.m15r {
	margin-right: 15px !important;
}

.m20r {
	margin-right: 20px !important;
}

.m25r {
	margin-right: 25px !important;
}

.m30r {
	margin-right: 30px !important;
}

.m40r {
	margin-right: 40px !important;
}

.m50r {
	margin-right: 50px !important;
}

.p5b {
	padding-bottom: 5px !important;
}

.p10b {
	padding-bottom: 10px !important;
}

.p15b {
	padding-bottom: 15px !important;
}

.p20b {
	padding-bottom: 20px !important;
}

.p25b {
	padding-bottom: 25px !important;
}

.p30b {
	padding-bottom: 30px !important;
}

.p40b {
	padding-bottom: 40px !important;
}

.p50b {
	padding-bottom: 50px !important;
}

.p60b {
	padding-bottom: 60px !important;
}

.p70b {
	padding-bottom: 70px !important;
}

.p80b {
	padding-bottom: 80px !important;
}

.p5t {
	padding-top: 5px !important;
}

.p8t {
	padding-top: 8px !important;
}

.p10t {
	padding-top: 10px !important;
}

.p15t {
	padding-top: 15px !important;
}

.p17t {
	padding-top: 17px !important;
}

.p20t {
	padding-top: 20px !important;
}

.p25t {
	padding-top: 25px !important;
}

.p30t {
	padding-top: 30px !important;
}

.p10a {
	padding: 10px !important;
}

.p20a {
	padding: 20px !important;
}

.p0r {
	padding-right: 0px !important;
}

.p5r {
	padding-right: 5px !important;
}

.p10r {
	padding-right: 10px !important;
}

.p20r {
	padding-right: 20px !important;
}

.p15r {
	padding-right: 15px !important;
}

.p25r {
	padding-right: 25px !important;
}

.p30r {
	padding-right: 30px !important;
}

.p40r {
	padding-right: 40px !important;
}

.p50r {
	padding-right: 50px !important;
}

.p55r {
	padding-right: 55px !important;
}

.p60r {
	padding-right: 60px !important;
}

.p70r {
	padding-right: 70px !important;
}

.p75r {
	padding-right: 75px !important;
}

.p90r {
	padding-right: 90px !important;
}

.p100r {
	padding-right: 100px !important;
}

.p110r {
	padding-right: 110px !important;
}

.p120r {
	padding-right: 120px !important;
}

.p0l {
	padding-left: 0 !important;
}

.p10l {
	padding-left: 10px !important;
}

.p15l {
	padding-left: 15px !important;
}

.p20l {
	padding-left: 20px !important;
}

.p25l {
	padding-left: 25px !important;
}

.p30l {
	padding-left: 30px !important;
}

.p200l {
	padding-left: 200px !important;
}

.box60 {
	width: 60px !important;
}

.box85 {
	width: 85px !important;
}

.box100 {
	width: 100px !important;
}

.box110 {
	width: 110px !important;
}

.box120 {
	width: 120px !important;
}

.box130 {
	width: 130px !important;
}

.box140 {
	width: 140px !important;
}

.box160 {
	width: 160px !important;
}

.box180 {
	width: 180px !important;
}

.box200 {
	width: 200px !important;
}

.box230 {
	width: 230px !important;
}

.box250 {
	width: 250px !important;
}

.box260 {
	width: 260px !important;
}

.box280 {
	width: 280px !important;
}

.box285 {
	width: 285px !important;
}

.box290 {
	width: 290px !important;
}

.box330 {
	width: 330px !important;
}

.box340 {
	width: 340px !important;
}

.box300 {
	width: 300px !important;
}

.box310 {
	width: 310px !important;
}

.box320 {
	width: 320px !important;
}

.box350 {
	width: 350px !important;
}

.box355 {
	width: 355px !important;
}

.box365 {
	width: 365px !important;
}

.box370 {
	width: 370px !important;
}

.box400 {
	width: 400px !important;
}

.box420 {
	width: 420px !important;
}

.box450 {
	width: 450px !important;
}

.box440 {
	width: 440px !important;
}

.box460 {
	width: 460px !important;
}

.box480 {
	width: 480px !important;
}

.box500 {
	width: 500px !important;
}

.box510 {
	width: 510px !important;
}

.box530 {
	width: 530px !important;
}

.box600 {
	width: 600px !important;
}

.box640 {
	width: 640px !important;
}

.clear {
	clear: both !important;
}

.cen {
	text-align: center !important;
}

.left {
	text-align: left !important;
}

.right {
	text-align: right !important;
}

.fLeft {
	float: left !important;
}

.fRight {
	float: right !important;
}

.bold {
	font-weight: bold !important;
}

.txtRed {
	color: #d21d00 !important;
}

.txtRed2 {
	color: #CC0000 !important;
}

.txtBlue {
	color: #0052E5 !important;
}

.txtPink {
	color: #F246A4 !important;
}

.txtGold {
	color: #A98552 !important;
}

.txtGray {
	color: #666666 !important;
}

.txtWhite {
	color: #FFFFFF !important;
}

.txt11 {
	font-size: 92% !important;
}

.txt13 {
	font-size: 109% !important;
}

.txt14 {
	font-size: 117% !important;
}

.txt15 {
	font-size: 125% !important;
}

.txt17 {
	font-size: 142% !important;
}

.txt18 {
	font-size: 150% !important;
}

.txt20 {
	font-size: 167% !important;
}

.lh190 {
	line-height: 190% !important;
}

.bNone {
	border: none !important;
}

.vaMiddle {
	vertical-align: middle !important;
}

/* 投稿の画像配置 */
.alignright {
	display: block;
	margin: 0 0 10px auto;
}

/* 配置位置 左 */
.alignleft {
	display: block;
	margin: 0 auto 10px 0;
}

/* 配置位置 右 */
.aligncenter {
	display: block;
	margin: 0 auto 10px;
}

/* 配置位置 中央 */
/* .alignright { float: right; padding: 0px 0 10px 10px; } */
/* 後続のテキスト左回り込み */
/*.alignleft { float: left; padding: 0px 10px 10px 0; }*/
/* 後続テキスト右回り込み */

/* LINK */
/* -------------------------------------------------- */
/*a {outline: 0;}*/
a:link,
a:visited {
	text-decoration: none;
	color: #333333;
}

a:hover {
	text-decoration: none;
	color: #0A7C25;
}

a:active {
	text-decoration: none;
	color: #0A7C25;
}

/* CLEARFIX */
/* -------------------------------------------------- */
.cf:before,
.cf:after {
	content: " ";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	*zoom: 1;
}

/* OUTLINE */
/* -------------------------------------------------- */
html {
	font-size: 15px;
}


body {
	background: #FFFFFF;
	color: #333333;
	line-height: 140%;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*COMMON */
/* -------------------------------------------------- */
.pc {
	display: none !important;
}

img {
	width: 100%;
	height: auto;
}


@font-face {
	font-family: "ttlFont";
	src: url("honoka.eot?") format('eot'),
		url("honoka.woff") format('woff'),
		url("honoka.otf") format('opentype');
}

.ttlFont {
	font-family: "ttlFont";
}

/*ヘッダー */
/* -------------------------------------------------- */
body {
	position: relative;
	overflow-x: hidden;
	-webkit-text-size-adjust: 100%;
	word-break: break-all;
}

body * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html.open {
	height: 100%;
}

.open body {
	position: fixed;
	left: 0;
	width: 100%;
	height: 100%;
}

#wrapper {
	padding-top: 44px;
	padding-bottom: 0 !important;
}

header {
	display: none;
}

#spHeader {
	width: 100%;
	height: 44px;
	position: fixed;
	top: 0;
	left: 0;
	background: #FFFFFF;
	border-bottom: 1px #EFEFEF solid;
	z-index: 10000;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#spHeaderIn {
	width: 100%;
	height: 44px;
	position: relative;
}

#spLogo {
	padding-top: 5px;
	text-align: center;
}

#spLogo img {
	height: 34px;
	width: auto;
}

#spBtn {
	width: 44px;
	height: 44px;
	position: absolute;
	top: 0px;
	left: 0px;
	cursor: pointer;
}

.open #spBtn {
	background: url(../img/sp_header_menu_btn_close.jpg) 0 0 no-repeat;
	-webkit-background-size: 44px;
	background-size: 44px;
}

#spBtn img {
	height: 44px;
	width: auto;
}

.open #spBtn img {
	display: none;
}

/* ナビ */
#spNav {
	position: fixed;
	top: 0;
	left: -200px;
	width: 200px;
	height: 100%;
	background: #333333;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	z-index: 10001;
}

#spNav li {
	border-bottom: 1px #CCCCCC dotted;
	background: url(../img/sp_icon5.png) 95% center no-repeat;
	-webkit-background-size: 8px;
	background-size: 8px;
}

.spNavContact a {
	background: #a40000;
}

.spNavLine a {
	background: #33ad35;
}

#spNav a {
	width: 100%;
	color: #FFFFFF;
	padding: 10px 20px;
	display: block;
	box-sizing: border-box;
}

#spNav a:hover {
	color: #CCCCCC;
}

.layer {
	position: fixed;
	top: 0;
	z-index: 1;
	display: none;
	width: 100%;
	height: 100%;
	background-color: transparent;
	z-index: 1000;
}




/* FV */
/* -------------------------------------------------- */

.fv {
	position: relative;
}

.singleFv {
	height: 190px;
	overflow: hidden;
}

.fvh1 {
	width: 100%;
	display: block;
	background: #000000;
	color: #FFFFFF;
	text-align: center;
	padding: 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.fvTtl {
	display: block;
	margin-bottom: 1%;
}

.fvTtlMain {
	width: 70%;
	padding-bottom: 10px;
	margin: 0 auto 10px;
	font-size: 1.200rem;
	border-bottom: 1px #FFFFFF dotted;
	display: block;
}

.fvTtlInner {
	display: inline-block;
	position: relative;
	padding: 0 2% 2%;
	font-size: 125%;
	font-weight: bold;
}

.fvTtlTxt {
	display: block;
}

.fvTtlInner:after {
	width: 100%;
	height: 3px;
	display: block;
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #ff9b0d;
}

#spFv {
	min-height: 120px;
	overflow: hidden;
}

#spFv img {
	width: 100%;
}

/* パンくず */
/* -------------------------------------------------- */
#panNav {
	width: 95%;
	margin: 3% auto;
	font-size: 134%;
	color: #666666;
}

#panNav li {
	display: inline-block;
	font-size: 0.9rem;
	padding-left: 14px;
	margin-left: 4px;
	background: url(../img/sp_icon1.png) 0 center no-repeat;
	-webkit-background-size: 4px 8px;
	background-size: 4px 8px;
	vertical-align: middle;
}

#panNav li:first-child {
	margin-left: 0;
	background: none;
}

#panNav li:first-child:before {
	content: none;
}

#panNav li img {
	width: 15px;
	height: 15px;
	vertical-align: text-bottom;
}

#panNav a {
	color: #333333;
}

#panNav a:hover {
	color: #666666;
}

/* ボタン */
/* -------------------------------------------------- */
.commonBtn1 {
	width: 80%;
}

.commonBtn1 a {
	width: 100%;
	display: block;
	padding: 10px 20px;
	font-size: 1.167rem;
	color: #da2805;
	border: 1px #da2805 solid;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/sp_icon4.png) 95% center no-repeat;
	-webkit-background-size: 8px;
	background-size: 8px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
}


/* pager */

#pageNavWrap {
	width: auto;
	margin: 0 auto 120px;
	text-align: center;
	font-size: 134%;
	color: #da2805;
}

#pager a,
#pager span {
	display: inline-block;
	padding: 5px 10px;
	border: 1px solid #0A7C25;
	color: #0A7C25;
}

#pager a:first-child {
	margin-left: 0;
}

#pager span.current,
#pager a:hover {
	background: #0A7C25;
	color: #fff;
}

#pager img {
	vertical-align: middle;
}


/* フッター */
/* -------------------------------------------------- */
#footFix {
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 100;
}


#spContactWrap {
	width: 98%;
	margin: 0 auto 0.2em;
	display: flex;
	flex-wrap: wrap;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0px 5px 15px 0px rgba(0, -50, -50, 0.65);

	& li.halfBtn {
		width: 50%;
		height: 60px;
		background: #0a7c25;
		font-family: 'ヒラギノ角ゴシック', 'sans-serif';
		font-size: clamp(18px, 4.8vw, 20px);
		font-weight: 700;

		& a {
			width: 100%;
			height: 100%;
			display: flex;
			align-items: center;
			justify-content: center;
			flex-direction: column;
			gap: 0 0.5em;
			color: #fff;
			letter-spacing: 0.02em;
			position: relative;

			& span {
				width: 14em;
				display: flex;
				align-items: center;
				justify-content: center;
				margin-bottom: 0.5em;
				padding-bottom: 0.5em;
				border-bottom: 1px solid;
				font-size: clamp(9px, 2.5vw, 11px);
				font-weight: 300;
				text-align: center;
				line-height: 1.1;
				letter-spacing: 0.01em;
				padding: 0.25em 0.5em;
				background: #fff;
				color: #0a7c25;
				border-radius: 10px;
			}

			& p {
				width: 74%;
				display: flex;
				/* flex-direction: column; */
				align-items: center;
				justify-content: center;
				gap: 0 0.5em;

			}

			& .arrow {
				width: auto;
				margin: 0;
				padding: 0;
				position: relative;
				display: flex;
				color: #000;
				/* vertical-align: middle; */
				/* text-decoration: none; */
				border: none;
				font-size: 1.6rem;
			}
		}

		& a::after {
			content: "";
			display: block;
			width: 100%;
			height: 100%;
			background: #fff;
			position: absolute;
			top: 0;
			opacity: 0.1;
		}

		& .arrow::before,
		& .arrow::after {
			position: absolute;
			top: 0;
			bottom: 0;
			left: 0;
			margin: auto;
			content: "";
			vertical-align: middle;
		}

		& .arrow::before {
			width: 0.6em;
			height: 0.6em;
			-webkit-border-radius: 50%;
			border-radius: 50%;
			/* background: #fff; */
			border: 1px solid #fff;
		}

		& .arrow::after {
			left: 6px;
			width: 2px;
			height: 2px;
			border-top: 1px solid #fff;
			border-right: 1px solid #ffffff;
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
		}
	}
}

& li#web.halfBtn {
	background: #ae090d;

	& .arrow::after {
		/* border-top: 1px solid #ee7800;
		border-right: 1px solid #ee7800; */
	}

	& a span {
		color: #ae090d;
	}
}

& li#spContactTel {
	width: 100%;
	height: 50px;
	/* padding: clamp(0.2em, 1.8vw, 0.5em); */
	background: #f0f4f2;
	background: #fff;
	color: #016832;
	font-family: 'ヒラギノ角ゴシック', 'sans-serif';
	font-size: clamp(20px, 5.8vw, 24px);
	letter-spacing: -0.01em;

	& #spContactTelInner {
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: row;
		gap: 0;
		text-decoration: none;
		color: inherit;
		color: #016832 !important;

		/* --x-gradient: linear-gradient(90deg, #016832 0 10px, transparent 0 calc(100% - 10px), #016832 calc(100% - 10px));
			--y-gradient: linear-gradient(#016832 0 10px, transparent 0 calc(100% - 10px), #016832 calc(100% - 10px));
			position: relative;
			background-image:
				var(--x-gradient),
				var(--y-gradient),
				var(--x-gradient),
				var(--y-gradient);
			background-repeat: no-repeat;
			background-size: 100% 2px, 2px 100%, 100% 2px, 2px 100%;
			background-position: top, right, bottom, left; */


		& span {
			width: auto;
			margin-right: 1em;
			margin-bottom: 0;
			padding-right: 1em;
			padding-bottom: 0;
			border-right: 1px solid;
			border-bottom: none;
			font-size: clamp(11px, 2.7vw, 13px);
			line-height: 1.4;
		}

		& strong {
			font-weight: 700;
		}

		& img {
			width: auto;
			height: 66%;
			aspect-ratio: 3 / 4;
			margin-left: 0.4em;
			margin-top: -0.2em;
		}
	}

}

/* #spContactWrap {
	width: 98%;
	height: 70px;
	margin: 0 auto 0.2em;
	background: #1fad35;
	color: #fff;
	font-family: 'ヒラギノ角ゴシック', 'sans-serif';
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.05em;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.25em 0;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0px 5px 15px 0px rgba(0, -50, -50, 0.65);

	& #btnList {
		width: 94%;
		margin: 0 auto;
		display: flex;
		align-items: stretch;
		justify-content: center;
		gap: 0 2%;

		& li {
			width: 32%;

			& a {
				width: 100%;
				padding: 0.75em 0;
				background: #fff;
				border-radius: 20px;
				color: #000;
				font-size: 11px;
				font-weight: 600;
				letter-spacing: 0;
				line-height: 1.1;
				display: flex;
				justify-content: center;
				align-items: center;
				position: relative;

				& .arrow {
					width: 6px;
					height: 6px;
					border-top: 2px solid #000;
					border-right: 2px solid #000;
					-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
					position: absolute;
					right: 6px;
				}
			}
		}

		& li#line a {
			color: #06c755;

			& .arrow {
				border-top: 2px solid #06c755;
				border-right: 2px solid #06c755;
			}
		}

		& li#web a {
			color: #ee7800;

			& .arrow {
				border-top: 2px solid #ee7800;
				border-right: 2px solid #ee7800;
			}
		}
	}
} */


/* #spContactTel img {
	width: 100%;
}

#spContact {
	width: 75%;
	position: absolute;
	right: 6%;
	top: 46%;
}

#spContact img {
	width: 100%;
}

.spContact_line-btn {
    width: 48%;
    float: left;
}
.spContact_contact-btn {
    width: 48%;
    float: right;
} */

#spToggleBtn {
	position: absolute;
	top: -36px;
	right: 2%;
	cursor: pointer;
}

#spToggleBtn img {
	width: auto;
	height: 36px;
}

#spPageTop {
	position: absolute;
	right: 0;
	top: 0;
}

#spPageTop img {
	height: 44px;
	width: auto;
}

#foot2 {
	border-top: 3px #CCCCCC solid;
	padding: 20px 0 0 0;
}

#fConWrap {
	padding-bottom: 30px;
}

#fContactTel {
	padding-bottom: 20px;
}

#fContactBox {
	padding: 10px;
}

#fLogo {
	text-align: center;
	padding-bottom: 20px;
}

#fLogo img {
	height: 40px;
	width: auto;
}

#fInfo {
	padding: 10px;
}

.fInfoIn {
	padding-bottom: 20px;
}

#fInfo h4 {
	display: inline-block;
	padding: 5px 10px;
	background: #000;
	color: #FFFFFF;
}

#copy {
	padding: 0 0 80px 0;
	text-align: center;
}

/* スライド */
.archieveSlider {
	padding: 0 10px;
	margin-bottom: 20px;
}

.spYear {
	padding-bottom: 5px;
}

.spZissekiCat {
	padding-bottom: 10px;
}

.spZissekiCat li {
	padding: 5px 10px;
	margin: 0 5px 5px 0;
	display: inline-block;
	color: #FFFFFF;
	background: #a40000;
}

.spBuytit {
	background: #000;
	color: #FFFFFF;
	font-weight: bold;
	padding: 10px;
	font-weight: 1.067rem;
}

#zissekiBtn {
	width: 80%;
	margin: 0 auto 50px;
}

.achivement h3 {
	padding: 0 10px 20px 10px;
}

.achivement h3 img {
	width: auto;
	height: 20px;
}

/* タイトル */
/* -------------------------------------------------- */
.commonTit1 {
	color: #097c25;
	font-size: 1.200rem;
	font-weight: bold;
	padding-bottom: 10px;
	text-align: left;
}

/* 回遊リンク */
/* -------------------------------------------------- */

#linkArea {
	padding: 10px 10px 50px 10px;
}

#linkAreaList {
	bottom: 50px;
}

#linkAreaList li {
	float: left;
	width: 31%;
	margin-right: 2.3%;
}

.blogImg {
	text-align: center;
}

#blogTxt p {
	padding-bottom: 1.5em;
}

/* pager */
.pager1 {
	margin-bottom: 10%;
	text-align: center;
}

.pager1 li {
	margin: 0 3px;
	display: inline-block;
	vertical-align: middle;
}


.pager1 span {
	display: inline-block;
	padding: 15px 20px;
	border: 1px solid #0A7C25;
	font-size: 117%;
	color: #0A7C25;
	line-height: 1;
}

.pager1 img {
	height: 15px;
	width: auto;
	vertical-align: middle;
}

.pager1 .none span {
	display: inline-block;
	padding: 15px 20px;
	border: 1px solid #CCCCCC;
	font-size: 117%;
	color: #CCCCCC;
	line-height: 1;
}

.pagenation span {
	border: none;
	color: #333333;
}