



:root {
	--main-text-color: #575757;
	--main-bg-color: #FFFFFF;
	--plate-bg-color: #F08300;
	--footer-bg-color: #FFFFFF;
	--footer-border-color: #0099D9;
	--point-color01: #F08300;
	--point-color-light01: #FBD6AB;
	--point-color-middle01: #F49D3A;
	--text-color-middle01: #807F80;
	--obione-height: 80px;
	--obione-bg-color: var( --main-bg-color );
}







body,div,p,a,img,h,h1,h2,h3,h4,h5,h6,hr,header,footer,section,article
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}


body
{
	-webkit-text-size-adjust: 100%;
	margin: 0px;
	padding: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 12px;
	font-weight: 400;
	/*color: #674E47;*/
	color: var( --main-text-color );
	background-color: var( --main-bg-color );
}


img
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}


.anc01
{
	display: block;
	width: 0px;
	height: 0px;
	line-height: 0px;
	translate: 0 -183px;
}






#bodybox
{
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0px 0px 0px 0px;
	min-width: 1192px; /* 1128px; */
	/*overflow-x: hidden;*/
}


#headerbase
{
	display: block;
	position: relative;
	width: 100%;
	height: var( --obione-height );
	margin: 0 auto 0 auto;
	overflow: hidden;
}


header
{
	position: relative;
	width: 100%;
	min-width: 1192px;
	height: calc( 100% - 2px );
	margin: 0 auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
}


.midbase, #footerbase
{
	position: relative;
	width: 100%;
	margin: 0px 0px 0px 0px;
}


.midbox, footer
{
	position: relative;
	min-width: 1192px;
	margin: 0px auto 0px auto;
	padding-top: 1px;
	padding-bottom: 1px;
}


#footerbase
{
	/*height: 440px;*/
	width: 100%;
	height: auto;
	background-color: var( --footer-bg-color );
	border-top: solid 36px var( --footer-border-color );
}


footer
{
	width: 100%;
	height: auto;
	padding-bottom: 100px;
	color: #FFFFFF;
}






.rtt01
{
	display: block;
	position: relative;
	width: 68px;
	height: 1em;
	margin: 60px 0px 82px auto;
	padding-top: 38px;
	/*font-family: 'Kaisei Tokumin', serif;*/
	font-size: 12px;
	font-weight: 400;
	line-height: 1em;
	text-align: center;
	vertical-align: top;
	color: inherit;
	letter-spacing: 0.1em;
	cursor: pointer;
	transition-duration: 150ms;
	will-change: transform;
}


.rtt01:hover
{
	/*color: rgba( 240, 180, 0, 0.7 );*/
	/*opacity: 0.7;*/
	-webkit-filter: drop-shadow( 0px 0px 4px rgba( 255, 255, 255, 0.8 ) );
	drop-shadow( 0px 0px 4px rgba( 255, 255, 255, 0.8 ) );
}


.rtt01::before
{
	content: '';
	display: block;
	position: absolute;
	left: -3px;
	right: 0px;
	top: 0px;
	margin: auto;
	width: 0px;
	height: 29px;
	border-right: solid 1px inherit;
}


.rtt01::after
{
	content: '';
	display: block;
	position: absolute;
	left: -3px;
	right: -1px;
	top: 1px;
	margin: auto;
	width: 0px;
	height: 12px;
	border-left: solid 1px inherit;
	-webkit-transform-origin: center top;
	transform-origin: center top;
	-webkit-transform: rotate( -52deg );
	transform: rotate( -52deg );
}


footer .rtt01
{
	position: absolute;
	left: -2048px;
	right: -2048px;
	bottom: 127px;
	margin: auto;
}












#obione
{
	display: block;
	position: fixed;
	top: 0;
	left: -2048px;
	right: -2048px;
	margin: auto;
	width: 100%;
	min-width: 1192px;
	max-width: 3072px;
	height: calc( var( --obione-height ) - 2px );
	padding-top: 1px;
	padding-bottom: 1px;
	background-color: var( --obione-bg-color );
	z-index: 3;
}


#obione::before
{
	content: '';
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	top: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	background-color: var( --obione-bg-color );
	box-shadow: 3px 3px 6px rgba( 34, 23, 20, 0.5 );
}


#headlogo01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	/*display: block;*/
	position: absolute;
	left: 67px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 240px;
	height: 50px;
	/*margin: 80px auto 0 auto;*/
	text-decoration: none;
	vertical-align: top;
	color: #674E47;
	cursor: pointer;
	transition-duration: 150ms;
	will-change: transform;
	/*background-color: #FFDDDD;*/
}


#headlogo01:hover
{
	opacity: 0.7;
}


#headlogo01 .logo01
{
	display: block;
	/*
	position: absolute;
	left: 0;
	top: 1px;
	*/
	position: relative;
	margin: 1px 0 0 0;
	width: 48px;
	height: 48px;
}


#headlogo01 .logo01 img, #headlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


#headlogo01 .bnbox01
{
	display: block;
	/*
	position: absolute;
	left: 54px;
	top: 0;
	*/
	position: relative;
	margin: 0 0 0 6px;
	width: 184px;
	height: 50px;
	text-align: left;
	color: #674E47;
	/*background-color: #DDFFDD;*/
}


#headlogo01 .bnbox01 img, #headlogo01 .bnbox01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


#headlogo01 .ccj01
{
	display: block;
	position: relative;
	width: 83px;
	margin: 0 auto 0 42px;
}


#headlogo01 .cnj01
{
	display: block;
	position: relative;
	width: 182px;
	margin: 4px 0 0 0;
}


#headlogo01 .cne01
{
	display: block;
	position: relative;
	/*width: 198px;*/
	width: 184px;
	margin: 3px 0 0 0;
}


#headrightbox
{
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 709px;
	/*background-color: #CCCCFF;*/
}


#hnavibox
{
	display: block;
	position: relative;
	width: 100%;
	height: 30px;
	margin: 0 0 0 0;
	color: #FFFFFF;
	background-color: var( --point-color01 );
	/*background-color: rgba( 200, 200, 255, 0.3 );*/
}


#hnavicont
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
}


.hnavi
{
	display: block;
	position: relative;
	margin: 0 8px 0 8px;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	transition-duration: 150ms;
	will-change: transform;
}


.hnavi:first-of-type
{
	margin-left: 0;
}


.hnavi:last-of-type
{
	margin-right: 0;
}


#hrecbtn
{
	display: block;
	position: relative;
	width: 74px;
	height: 20px;
	font-size: 11px;
	font-weight: 400;
	line-height: 19px;
	text-align: center;
	vertical-align: top;
	background-color: #036EB8;
	border-radius: 10px;
}


#hrecbtn:hover
{
	background-color: #35A4ED;
}


#htel
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 170px;
	height: 22px;
	transition-duration: 150ms;
	will-change: transform;
}


#htel:hover
{
	filter: drop-shadow( 0 0 2px rgba( 255, 255, 255, 0.7 ) );
}


#htel .icon
{
	display: block;
	position: relative;
	width: auto;
	height: 17px;
	border: 0;
}


#htel .tel
{
	display: block;
	position: relative;
	margin: -4px 0 0 4px;
	font-family: 'Murecho', sans-serif;
	font-size: 22px;
	font-weight: 500;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}


#hsearchbar
{
	display: block;
	position: relative;
	width: 119px;
	height: 30px;
	margin-left: 8px;
	background-color: #036EB8;
}


#hsearchform
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
	padding: 0;
}


#hsearchbox
{
	display: block;
	position: relative;
	width: 80px;
	height: 16px;
	margin: 7px 0 7px 2px;
	font-size: 12px;
	background-color: #FFFFFF;
	border: 0; 
}


#hsearchbtn
{
	display: block;
	position: relative;
	width: 30px;
	height: 30px;
	margin-left: 0;
	border: 0;
	background-color: transparent;
	cursor: pointer;
	transition-duration: 150ms;
}


#hsearchbtn:hover
{
	/*background-color: #35A4ED;*/
	opacity: 0.7;
}


#hsearchbtn .icon
{
	display: block;
	position: absolute;
	left: -100px;
	right: -100px;
	top: -100px;
	bottom: -100px;
	margin: auto;
	width: 16px;
	height: auto;
	border: 0;
}







#menubox
{
	display: block;
	position: relative;
	width: 100%;
	height: 50px;
	font-size: 14px;
}


#menucont
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 auto 0 auto;
	padding: 0;
	list-style: none;
	/*border-left: solid 1px rgba( 87, 87, 87, 0.8 );*/
}


#menucont > li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	height: 100%;
	text-align: center;
	vertical-align: top;
}


#menucont > li > a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	width: 117px;
	padding: 0;
	height: 50px;
	line-height: 50px;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: rgba( 87, 87, 87, 1.0 );
	border-left: solid 1px rgba( 87, 87, 87, 0.8 );
	transition-duration: 300ms;
	will-change: transform;
}



#menucont > li:last-of-type > a
{
	border-right: solid 1px rgba( 87, 87, 87, 0.8 );
}


/*
#menucont > li:hover > a
{
	background-color: #FEF4E8;
}
*/

#menucont > li > a .mtj
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	vertical-align: top;
	transition-duration: 150ms;
}


#menucont > li:hover > a .mtj
{
	opacity: 0.7;
}


#menucont > li > ul
{
	display: block;
	position: absolute;
	top: 50px;
	left: calc( 50% - 97px );
	margin: auto;
	width: 194px;
	height: auto;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	visibility: hidden;
	opacity: 0;
	z-index: 3;
	/*box-shadow: 3px 3px 6px rgba( 34, 23, 20, 0.5 );*/
	transition-duration: 600ms;
	will-change: transform;
}


#menucont > li:hover > ul
{
	/*display: block;*/
	visibility: visible;
	opacity: 1;
	z-index: 5;
}


#menucont > li > ul > li
{
	display: block;
	position: relative;
	width: 100%;
	height: 64px;
	margin: 0 0 0 0;
	padding: 0;
	border-top: solid 1px #FFFFFF;
	will-change: transform;
}

/*
#menucont > li:hover > ul > li
{
	opacity: 1;
}
*/

#menucont > li > ul > li:first-of-type
{
	border-top: 0;
}


#menucont > li > ul > li > a
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
	padding: 0;
	color: var( --main-text-color );
	background-color: #FDE8D0;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	opacity: 0;
	transition-duration: 150ms;
	will-change: transform;
}


#menucont > li:hover > ul > li > a
{
	margin-top: 0;
	opacity: 1;
}


#menucont > li > ul > li > a:hover
{
	color: #FFFFFF;
	background-color: var( --point-color01 );
}


#menucont > li > ul > li > a .smtj
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.2em;
	text-align: center;
	vertical-align: top;
	/*transition-duration: 150ms;*/
}




#contbox
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	width: 100%;
	max-width: 1154px;
	margin: 86px auto 120px auto;
}


.pankuzu
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	list-style: none;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	color: var( --main-text-color );
	letter-spacing: 0.025em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}


.pankuzu li
{
	display: inline-block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


.pankuzu li::before
{
	content: '＞';
	display: inline-block;
	position: relative;
	margin: 0 18px 0 18px;
	padding: 0;
	vertical-align: top;
}


.pankuzu li:first-of-type::before
{
	display: none;
}


.pankuzu li a
{
	display: inline-block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
}


.pankuzu li a[href]
{
	
}


.pankuzu li a[href]:hover
{
	opacity: 0.7;
}


#sidemain
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	width: 100%;
	margin: 55px auto 0 auto;
}


#sidebox
{
	display: block;
	position: sticky;
	top: 120px;
	width: 300px;
	/*min-height: 640px;*/
	/*height: 100%;*/
	vertical-align: top;
	/*background-color: rgba( 255, 255, 200, 0.3 );*/
}


#mainbox
{
	display: block;
	position: relative;
	width: calc( 100% - 300px - 48px );
	min-height: 640px;
	margin-left: 48px;
	vertical-align: top;
	/*background-color: rgba( 200, 255, 255, 0.3 );*/
}


#sidemenu
{
	display: block;
	position: relative;
	/*
	position: sticky;
	top: 0;
	*/
	width: 300px;
	list-style: none;
	margin: 0 auto 0 auto;
	padding: 0;
}


#sidemenu ul
{
	display: block;
	position: relative;
	width: 100%;
	list-style: none;
	margin: 0 auto 0 auto;
	padding: 0;
}


#sidemenu li
{
	display: block;
	position: relative;
	width: 100%;
	margin: 10px 0 0 0;
	padding: 0;
}


#sidemenu li:first-of-type
{
	margin-top: 0;
}


#sidemenu a
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
}


#sidemenu a[href]:hover
{
	opacity: 0.7;
}


#sidemenu > li > a
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 100%;
	height: 60px;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	line-height: 1.3em;
	background-color: #FDE8D0;
	border-radius: 10px;
	box-shadow: 1px 1px 2px rgba( 35, 24, 21, 0.5 );
}


#sidemenu > li > a.sml_active
{
	color: #FFFFFF;
	background-color: #F08300;
}


#sidemenu > li > ul
{
	display: block;
	position: relative;
	list-style: none;
	margin: 5px 0 -4px 0;
	padding: 0;
}


#sidemenu > li > ul > li
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	border-top: solid 1px #808080;
}


#sidemenu > li > ul > li:first-of-type
{
	border-top: 0;
}


#sidemenu > li:last-of-type > ul > li:last-of-type
{
	border-bottom: solid 1px #808080;
}


#sidemenu > li > ul > li > a
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: calc( 100% - 14px - 27px );
	height: 69px;
	margin: 0 0 0 0;
	padding: 0 27px 0 14px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.3em;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
}


#sidemenu > li > ul > li > a.sml_active
{
	color: #F08300;
}


#sidemenu > li > ul > li > a.nolink
{
	color: #C6C6C6;
	pointer-events: none;
}


#sidemenu > li > ul > li > a::after
{
	content: '>';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	/*left: calc( 100% - 27px );*/
	right: 12px;
	margin: auto;
	width: 16px;
	height: 16px;
	font-size: 16px;
	font-weight: 400;
	line-height: 15px;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --main-text-color );
	border-radius: 50%;
}







.stcont
{
	display: block;
	position: relative;
	max-width: 1128px;
	margin: 80px auto 80px auto;
	padding-top: 1px;
	padding-bottom: 1px;
	vertical-align: top;
	/*
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	*/
	/*background-color: rgba( 253, 255, 219, 1 );*/
}


#mainbox .stcont:first-of-type
{
	margin-top: 0;
}


.stbox01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 100%;
	margin: 0 auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	text-align: left;
	vertical-align: top;
}


.stbox01 .ste
{
	display: inline-block;
	position: relative;
	font-family: 'EB Garamond', serif;
	font-size: 48px;
	font-weight: 400;
	line-height: 48px;
	text-align: left;
	vertical-align: top;
}


.stbox01 .stj
{
	display: inline-block;
	position: relative;
	margin-left: 20px;
	margin-top: 12px;
	font-family: 'Noto Serif JP', serif;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: -0.075em;
}


.st
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 10px 0 14px 0;
	font-size: 32px;
	font-weight: 500;
	line-height: 1.3em;
	text-align: left;
	vertical-align: top;
	color: var( --point-color01 );
	border-bottom: solid 1px var( --main-text-color );
}


.sscont
{
	display: block;
	position: relative;
	margin: 32px auto 0 auto;
	font-size: 16px;
	font-weight: 400;
	line-height: 28px;
	vertical-align: top;
}


.cb01
{
	display: block;
	position: relative;
	margin: 8px 0 0 0;
	font-size: 1em;
	font-weight: 400;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
}


.cblink01
{
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
}


.cblink01:hover
{
	opacity: 0.7;
}


.cblink02
{
	padding-bottom: 0;
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
	border-bottom: solid 1px var( --main-text-color );
}


.cblink02:hover
{
	opacity: 0.7;
}


.cblink03
{
	color: #985F47 !important;
	transition-duration: 150ms;
}


.cblink03:hover
{
	opacity: 0.7;
}


.flexleft
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
}


.signame01
{
	display: block;
	position: relative;
	margin: 85px 0 0 auto;
	font-size: 1em;
	font-weight: 700;
	text-align: right;
	vertical-align: top;
}


.signame02
{
	display: block;
	position: relative;
	margin: 57px 0 0 auto;
	font-size: 1em;
	font-weight: 400;
	text-align: right;
	vertical-align: top;
}


.cbt01
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	/*height: 32px;*/
	height: auto;
	padding: 5px 8px 7px 38px;
	font-size: 18px;
	font-weight: 500;
	line-height: 20px;
	text-align: left;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --text-color-middle01 );
}


.cbt01::before
{
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-top: solid 32px transparent;
	border-left: solid 32px var( --point-color-middle01 );
}


.cbt02
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 15px 29px 15px 29px;
	font-size: 24px;
	font-weight: 500;
	line-height: 34px;
	text-align: left;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --point-color01 );
}


.cbt03
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4em;
	text-align: left;
	vertical-align: top;
}


.cbt04
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 8px 29px 8px 29px;
	font-size: 24px;
	font-weight: 500;
	line-height: 32px;
	text-align: left;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --point-color01 );
}


.cbt05
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 35px;
	text-align: left;
	vertical-align: top;
}


.cbt06
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}


.scbt01
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4em;
	text-align: left;
	vertical-align: top;
}


.scbt02
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding-left: 16px;
	/*padding-bottom: 0;*/
	font-weight: 500;
	line-height: 1.6em;
	border-bottom: solid 1px var( --main-text-color );
}


.scbt02::before
{
	content: '';
	display: block;
	position: absolute;
	left: 3px;
	top: 0.4em;
	width: 0;
	height: 0;
	border-top: solid 7px transparent;
	border-bottom: solid 7px transparent;
	border-left: solid var( --point-color01 ) 10px;
}


.sscbt01
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4em;
	text-align: left;
	vertical-align: top;
}


.tblbox
{
	display: block;
	position: relative;
	width: 100%;
}


.tblcont
{
	display: block;
	position: relative;
	width: 100%;
}


.tbl
{
	border-collapse: collapse;
	font-weight: 400;
}


.tbl th, .tbl td
{
	border: solid 1px var( --main-text-color );
}


.tbl th
{
	font-weight: 500;
	text-align: center;
	background-color: #FEF4E8;
}


.tbl.wd
{
	width: 100%;
}


.tbl thead th
{
	background-color: #FCDCB7;
}







.tbl01
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl01 th, .tbl01 td
{
	padding: 11px 18px 12px 18px;
}


.tbl01 thead th
{
	
}







.tbl02
{
	font-size: 13px;
	line-height: 20px;
}


.tbl02 th, .tbl02 td
{
	padding: 8px 8px 8px 8px;
}


.tbl02 thead th
{
	padding: 8px 8px 7px 8px;
	line-height: 16px;
}







.tbl03
{
	font-size: 14px;
	line-height: 16px;
}


.tbl03 th, .tbl03 td
{
	padding: 2px 2px 2px 2px;
	min-height: 36px;
	text-align: center;
}


.tbl03 thead th
{
	padding: 12px 2px 11px 2px;
	font-size: 16px;
	font-weight: 400;
	line-height: 16px;
}


.tbl03 thead th:nth-of-type(n+2):nth-of-type(-n+6)
{
	width: 136px;
}


.tbl03 tbody td:first-of-type
{
	padding: 12px 0 11px 0;
}


.tbl03 .c01
{
	width: 45px;
}


.tbl03 .c07
{
	width: 69px;
}







.tbl04
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl04 th, .tbl04 td
{
	padding: 11px 18px 12px 18px;
}


.tbl04 th
{
	text-align: left;
	background-color: transparent;
}







.tbl05
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl05 th, .tbl05 td
{
	padding: 11px 18px 12px 18px;
}


.tbl05 th
{
	font-weight: 400;
	background-color: transparent;
}


.tbl05 tbody th
{
	width: 62px;
}







.tbl06
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl06 th, .tbl06 td
{
	padding: 11px 4px 12px 4px;
	text-align: center;
}


.tbl06 td.tltd
{
	padding: 3px 4px 4px 4px;
}


.tbl06 th
{
	font-weight: 400;
	background-color: transparent;
}


.tbl06 thead th
{
	padding-top: 17px;
	padding-bottom: 18px;
	line-height: 20px;
	background-color: transparent;
}


.tbl06 tbody th
{
	/*width: 62px;*/
}


.tbl06 tbody td
{
	width: 14%;
}


.tbl06 tfoot th, .tbl06 tfoot td
{
	font-weight: 500;
	line-height: 20px;
	background-color: #FDE8D0;
}







.tbl07
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl07 th, .tbl07 td
{
	padding: 11px 24px 12px 24px;
}


.tbl07 th
{
	font-weight: 500;
	text-align: left;
	background-color: transparent;
}


.tbl07 tbody td
{
	width: 24%;
	font-weight: 500;
	text-align: right;
	background-color: #FDE8D0;
}







.tbl08
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl08 th, .tbl08 td
{
	padding: 11px 10px 12px 10px;
}


.tbl08 td.thn01
{
	padding: 7px 10px 8px 10px;
}


.tbl08 td.fat01
{
	padding: 19px 10px 20px 10px;
}


.tbl08 thead th, .tbl08 th
{
	background-color: #FDE8D0;
}







.tbl09
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl09 th, .tbl09 td
{
	padding: 19px 10px 20px 10px;
	line-height: 20px;
}


.tbl09 thead th
{
	background-color: #FDE8D0;
}


.tbl09 tbody th
{
	background-color: transparent;
}


.tbl09 tbody tr td:last-of-type
{
	font-weight: 500;
	text-align: center;
}







.tbl10
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl10 th, .tbl10 td
{
	padding: 13px 10px 14px 10px;
	line-height: 20px;
}


.tbl10 thead th
{
	background-color: #FDE8D0;
}


.tbl10 tbody th
{
	font-weight: 400;
	padding-left: 30px;
	text-align: left;
	background-color: transparent;
}


.tbl10 tbody tr td:last-of-type
{
	width: 24%;
	font-weight: 500;
	text-align: center;
}







.tbl11
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl11 th, .tbl11 td
{
	padding: 14px 10px 14px 10px;
	line-height: 20px;
}


.tbl11 thead th
{
	background-color: #FDE8D0;
}


.tbl11 tbody th
{
	width: 138px;
	background-color: #FDE8D0;
}


.tbl11 tbody td:nth-of-type(1)
{
	width: 392px;
}


.tbl11 tbody td:nth-of-type(3)
{
	width: 94px;
}


.tbl11 td.thn01
{
	padding: 11px 10px 11px 10px;
}







.tbl12
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl12 th, .tbl12 td
{
	padding: 14px 10px 14px 10px;
	line-height: 20px;
}


.tbl12 thead th
{
	background-color: #FDE8D0;
}


.tbl12 tbody th
{
	width: 138px;
	background-color: #FDE8D0;
}


.tbl12 tbody td:nth-of-type(1)
{
	width: 280px;
}


.tbl12 tbody td.yb01
{
	width: 50px;
	padding-left: 4px;
	padding-right: 4px;
	text-align: center;
}


.tbl12 tbody td:nth-of-type(3)
{
	width: 122px;
	text-align: center;
}


.tbl12 tbody td:nth-of-type(4)
{
	width: 122px;
	text-align: center;
}







.tbl13
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl13 th, .tbl13 td
{
	padding: 14px 10px 14px 10px;
	line-height: 20px;
}


.tbl13 thead th
{
	background-color: #FDE8D0;
}


.tbl13 tbody th
{
	width: 138px;
	background-color: #FDE8D0;
}


.tbl13 tbody td:nth-of-type(1)
{
	width: 314px;
}


.tbl13 tbody td.mdc01
{
	width: 96px;
	padding: 6px 2px 6px 2px;
}


.tbl13 tbody td.sdc01_01
{
	width: 34px;
	padding: 2px 2px 2px 2px;
	line-height: 16px;
	text-align: center;
}


.tbl13 tbody td.sdc01_02
{
	width: 58px;
	padding: 2px 2px 2px 2px;
	line-height: 16px;
	text-align: center;
}


.tbl13 tbody td.sdc01_02.cnd01
{
	letter-spacing: -0.1em;
	text-align: left;
}







.tbl14
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl14 th, .tbl14 td
{
	padding: 14px 10px 14px 10px;
	line-height: 20px;
}


.tbl14 thead th
{
	background-color: #FDE8D0;
}


.tbl14 tbody th
{
	/*width: 138px;*/
	width: 154px;
	padding-left: 2px;
	padding-right: 2px;
	background-color: #FDE8D0;
}


.tbl14 tbody td:nth-of-type(1)
{
	width: 314px;
}


.tbl14 tbody td.tdc02
{
	width: 47px;
	padding: 6px 2px 6px 2px;
}


.tbl14 tbody .cnd01, .tbl14 tbody td.tdc02.cnd01
{
	/*
	padding-left: 2px;
	padding-right: 2px;
	*/
	padding: 2px 2px 2px 2px;
	text-align: left;
	letter-spacing: -0.1em;
}


.tbl14 tbody td.vat01
{
	vertical-align: top;
}


.tbl14 tbody td.tdc03
{
	padding: 6px 2px 6px 2px;
}







.tbl15
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl15 th, .tbl15 td
{
	padding: 11px 10px 12px 10px;
}


.tbl15 td.thn01
{
	padding: 7px 10px 8px 10px;
}


.tbl15 td.fat01
{
	padding: 19px 10px 20px 10px;
}


.tbl15 thead th, .tbl15 th
{
	background-color: #FDE8D0;
}


.tbl15 tbody th
{
	width: 138px;
}







.tbl16
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl16 th, .tbl16 td
{
	padding: 14px 10px 14px 10px;
	line-height: 20px;
}


.tbl16 thead th
{
	background-color: #FDE8D0;
}


.tbl16 tbody th
{
	width: 138px;
	background-color: #FDE8D0;
}


.tbl16 tbody td.tdc01
{
	width: 280px;
}


.tbl16 tbody td.tdc02
{
	width: 66px;
}


.tbl16 tbody td.tdc03
{
	width: 96px;
}


.tbl16 tbody td.tdc04
{
	width: 121px;
}







.tbl17
{
	width: 100%;
	font-size: 16px;
	line-height: 20px;
}


.tbl17 th, .tbl17 td
{
	padding: 18px 10px 18px 10px;
	line-height: 20px;
}


.tbl17 th
{
	width: 204px;
	background-color: #FDE8D0;
}







.tbl18
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl18 th, .tbl18 td
{
	padding: 18px 10px 18px 10px;
}


.tbl18 thead th
{
	background-color: #FDE8D0;
}


.tbl18 tbody th
{
	width: 138px;
	background-color: #FDE8D0;
}


.tbl18 tbody td
{
	padding-left: 32px;
	padding-right: 32px;
}


.tbl18 tbody td a
{
	text-decoration: none;
	color: inherit;
	border-bottom: solid 1px var( --main-text-color );
	transition-duration: 150ms;
}


.tbl18 tbody td a:hover
{
	opacity: 0.7;
}







.tbl19
{
	width: 100%;
	font-size: 16px;
	line-height: 24px;
}


.tbl19 th, .tbl19 td
{
	padding: 8px 8px 8px 8px;
}


.tbl19 thead th
{
	padding-top: 6px;
	padding-bottom: 6px;
	background-color: #FDE8D0;
}


.tbl19 tbody th
{
	width: 60px;
	background-color: transparent;
}







.fratt01
{
	display: inline-block;
	position: absolute;
	right: 0;
	top: 10px;
	font-size: 10px;
	font-weight: 400;
	line-height: 1em;
	text-align: right;
	vertical-align: top;
	letter-spacing: 0.1em;
}


.tblt01
{
	display: block;
	position: relative;
	margin: 12px 0 0 0;
	font-size: 1em;
	font-weight: 500;
	text-align: left;
	vertical-align: top;
}


.tate
{
	display: block;
	position: relative;
	min-width: 9px; /* 4px; */
	/*
	padding-left: 5px;
	padding-right: 5px;
	*/
	writing-mode: vertical-lr;
	/*text-orientation: upright;*/
	text-align: center;
	vertical-align: top;
	white-space: nowrap;
	/*line-height: 2em;*/
	line-height: 1em;
}


.dpc_c01
{
	width: 15%;
}


.dpc_c02
{
	width: 34%;
}


.bmn01::before
{
	content: '・';
	font-weight: 700;
	color: #F08300;
}


.nb01
{
	width: 4em;
	text-align: right;
	vertical-align: top;
}


.nc
{
	text-align: right;
}


.s5g_c01
{
	/*width: 11.4%;*/
	width: 75px;
}


.kc_c01
{
	width: 14%;
}


.kc_c02
{
	width: 38%;
}


.kc
{
	text-align: center;
}


.sb_c01
{
	width: 12%;
}


.sb_c02
{
	width: 38%;
}


.sb_c03
{
	width: 75px;
}


.ta_l
{
	text-align: left;
}


.ta_c
{
	text-align: center;
}


.ta_r
{
	text-align: right;
}


.rl_c01
{
	vertical-align: top;
}


.rl_c01 p
{
	display: inline-block;
	padding-top: 8px;
	padding-bottom: 8px;
	text-align: left;
}


.rl_c02, .tbl td.rl_c02
{
	text-align: center;
	padding-top: 13px;
	padding-bottom: 13px;
}


.note02
{
	display: block;
	position: relative;
	font-size: 12px;
	font-weight: 400;
	line-height: 20px;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
	letter-spacing: 0.05em;
}




.allist01
{
	margin-top: 0;
}


.allist01 a
{
	padding-bottom: 0;
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
	border-bottom: solid 1px var( --main-text-color );
}


.allist01 a:hover
{
	opacity: 0.7;
}


.dllink01
{
	display: block;
	position: relative;
	width: 182px;
	height: 20px;
	margin: 19px 0 0 0;
	padding: 0;
	font-size: 15px;
	font-weight: 500;
	line-height: 20px;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: var( --main-text-color );
	background-color: #C4D700;
	border: solid 1px var( --main-text-color );
	transition-duration: 150ms;
}


.dllink01:hover
{
	opacity: 0.7;
}


.dlatnd01
{
	display: inline-block;
	position: relative;
	height: 20px;
	margin: 19px 0 0 15px;
	padding: 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 20px;
	text-align: left;
	vertical-align: top;
}




.pllist01
{
	display: block;
	position: relative;
	list-style: none;
	padding: 0;
}


.pllist01 li
{
	display: block;
	position: relative;
	margin-top: 0.2em;
	padding: 0;
}


.pllist01 li::before
{
	content: '・';
	font-size: 1.2em;
	font-weight: 900;
	line-height: 1.5em;
	color: #F08300;
	vertical-align: top;
}


.pllist01 a
{
	padding-bottom: 0;
	font-size: 1em;
	font-weight: 500;
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
	border-bottom: solid 1px var( --main-text-color );
}


.pllist01 a:hover
{
	opacity: 0.7;
}


.pllist02
{
	display: block;
	position: relative;
	list-style: none;
	margin-left: 1em;
	padding: 0;
}


.pllist02 li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}


.tbclickbtn01
{
	display: block;
	position: relative;
	width: 226px;
	vertical-align: top;
	transition-duration: 150ms;
}


.tbclickbtn01:hover
{
	opacity: 0.7;
}


.tbclickbtn01 img
{
	display: block;
	position: relative;
	width: 100%;
	border: 0;
}





.spllist01
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


.spllist01 li
{
	display: block;
	position: relative;
	padding: 0 0 0 1.2em;
	font-weight: 500;
	text-indent: -1.2em;
}


.spllist01 li::before
{
	content: '・';
	font-size: 1.2em;
	font-weight: 900;
	line-height: 1.5em;
	color: var( --point-color01 );
	vertical-align: top;
}


.nmllist01
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


.nmllist01 li
{
	display: block;
	position: relative;
	padding: 0;
	font-weight: 500;
}


.nmllist02
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


.nmllist02 li
{
	display: block;
	position: relative;
	padding: 0 0 0 1.2em;
	text-indent: -1.2em;
}


.nmllist02 li::before
{
	content: '・';
	font-size: 1.2em;
	font-weight: 900;
	line-height: 1.4em;
	color: var( --point-color01 );
	vertical-align: top;
}


.nbrlist01
{
	padding-left: 1.5em;
}





.bbllist01
{
	display: block;
	position: relative;
	margin-left: 0;
	padding-left: 1.5em;
	font-size: 18px;
	font-weight: 500;
	line-height: 39px;
	vertical-align: top;
}


.bbllist02
{
	display: block;
	position: relative;
	margin-left: 0;
	padding-left: 1.5em;
	font-size: 18px;
	font-weight: 500;
	line-height: 36px;
	vertical-align: top;
}


/*
.spline01
{
	font-weight: 500;
}


.spline01::before
{
	content: '・';
	font-size: 1.2em;
	font-weight: 900;
	line-height: 1.5em;
	color: var( --point-color01 );
	vertical-align: top;
}
*/


.scb01
{
	display: block;
	position: relative;
}


.sscb01
{
	display: block;
	position: relative;
}




.note01
{
	display: block;
	position: relative;
	margin: 14px 0 0 0;
	padding: 9px 16px 15px 20px;
	font-size: 14px;
	font-weight: 400;
	line-height: 21px;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
	color: inherit;
	background-color: #FEF4E8;
}


.bmalbox01
{
	display: block;
	position: relative;
	width: auto;
	margin: 0 auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	padding: 1px 38px 1px 38px;
	border-left: solid 1px var( --point-color01 );
	border-right: solid 1px var( --point-color01 );
	border-bottom: solid 1px var( --point-color01 );
}


.bmalcont01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	flex-direction: column;
	position: relative;
	list-style: none;
	padding: 0;
	max-height: 220px;
}


.bmalcont01 li
{
	display: block;
	position: relative;
	width: 31%;
	margin: 14px 0 14px 0;
	padding: 0;
	vertical-align: top;
}


.bmalcont01 li a
{
	display: inline-block;
	position: relative;
	width: 92px;
	height: auto;
	padding: 0 30px 2px 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.2em;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
	border-bottom: solid 1px var( --main-text-color );
	transition-duration: 150ms;
}



.bmalcont01 li a:hover
{
	opacity: 0.7;
}


.bmalcont01 li a::after
{
	content: '>';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 2px;
	margin: auto;
	width: 16px;
	height: 16px;
	font-size: 16px;
	font-weight: 400;
	line-height: 15px;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --main-text-color );
	border-radius: 50%;
}


.bmstfbox01
{
	display: block;
	position: relative;
	width: 750px;
	margin: 10px auto 0 auto;
	vertical-align: top;
}



.bmstfcont01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	position: relative;
	margin: 0 auto 0 auto;
	vertical-align: top;
}


.bsitem01
{
	display: block;
	position: relative;
	width: 180px;
	margin: 17px 35px 30px 35px;
	vertical-align: top;
	/*background-color: rgba( 200, 200, 255, 0.3 );*/
}


.bsitem01 .ib
{
	display: block;
	position: relative;
	width: 180px;
	height: 240px;
	overflow: hidden;
}


.bsitem01 .ib img
{
	display: block;
	position: absolute;
	left: -200px;
	right: -200px;
	top: -200px;
	bottom: -200px;
	margin: auto;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.bsitem01 .info
{
	display: block;
	position: relative;
	min-height: 70px;
	margin: 18px 0 0 0;
	padding-top: 1px;
	padding-bottom: 1px;
	vertical-align: top;
}


.bsitem01 .iname
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	text-align: left;
	vertical-align: top;
}


.bsitem01 .iname .cnd01
{
	letter-spacing: -0.075em;
}


.bsitem01 .rlink
{
	display: inline-block;
	position: relative;
	margin: 1px 0 0 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
	border-bottom: solid 1px var( --main-text-color );
	transition-duration: 150ms;
}


.bsitem01 .rlink:hover
{
	opacity: 0.7;
}


.bsitem01 .bkbox
{
	display: block;
	position: relative;
	margin: 18px 0 0 0;
	font-size: 13px;
	font-weight: 400;
	line-height: 22px;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
}


.bsitem01 .bkbox .ct
{
	display: block;
	position: relative;
	padding-bottom: 8px;
	font-size: 12px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	border-bottom: solid 1px var( --main-text-color );
}


.bsitem01 .bkbox .cc
{
	display: block;
	position: relative;
	margin: 8px 0 0 0;
}


.bsitem02
{
	display: block;
	position: relative;
	width: 470px;
	margin: 17px -35px 30px 35px;
	vertical-align: top;
	/*background-color: rgba( 200, 255, 200, 0.3 );*/
}


.bsitem02 .bkbox
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	font-size: 13px;
	font-weight: 400;
	line-height: 22px;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
}


.bsitem02 .bkbox .cc
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
}




.blt01
{
	font-size: 20px;
	line-height: 35px;
}


.blt02
{
	font-size: 20px;
	line-height: 40px;
}


.bld01
{
	font-weight: 500;
}


.bld02
{
	font-weight: 700;
}


.bltbld01
{
	font-size: 20px;
	font-weight: 500;
	line-height: 35px;
}


.bltbld03
{
	font-size: 24px;
	font-weight: 500;
	line-height: 40px;
}


.slt01
{
	font-size: 13px;
	line-height: 23px;
}


.palt01
{
	letter-spacing: 0.01em;
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
}


.splblue01
{
	text-decoration: none;
	color: #00A0E9;
	transition-duration: 150ms;
}


.splblue01:hover
{
	opacity: 0.7;
}


.splorange01
{
	text-decoration: none;
	color: var( --point-color01 );
	transition-duration: 150ms;
}


.splorange01:hover
{
	opacity: 0.7;
}


.phwd01
{
	display: block;
	position: relative;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
	vertical-align: top;
}


.phwd01 img
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
}


.dlbtn01
{
	display: block;
	position: relative;
	width: 432px;
	height: 72px;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;
	font-weight: 400;
	line-height: 72px;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --point-color01 );
	border-radius: 36px;
	transition-duration: 150ms;
}


.dlbtn01:hover
{
	opacity: 0.7;
}




.spdot01
{
	position: relative;
}


.spdot01::before
{
	content: '・';
	font-size: 1.2em;
	font-weight: 900;
	/*line-height: 1.5em;*/
	color: var( --point-color01 );
	vertical-align: top;
}






.ind01
{
	padding-left: 1em;
	text-indent: -1em;
}


.ind02
{
	padding-left: 1.25em;
	text-indent: -1.25em;
}


.ind03
{
	padding-left: 1em;
}




.bind01
{
	padding-left: 1em;
}


.bind02
{
	padding-left: 1.25em;
}





.tactr
{
	text-align: center;
}




.atc01
{
	color: var( --point-color01 );
}


.atc02
{
	color: #00A95F;
}




.kakomi01
{
	display: block;
	position: relative;
	width: 404px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding-top: 13px;
	padding-bottom: 13px;
	font-weight: 500;
	line-height: 20px;
	text-align: center;
	vertical-align: top;
	background-color: #FDE8D0;
	border: solid 1px var( --main-text-color );
}





.telbox01
{
	display: block;
	position: relative;
	width: 264px;
	margin-left: auto;
	margin-right: 0;
	text-decoration: none;
	transition-duration: 150ms;
}


.telbox01 img
{
	display: block;
	position: relative;
	width: 100%;
	border: 0;
}





.sep01
{
	display: block;
	position: relative;
	width: 100%;
	height: 0;
	border-bottom: solid 1px var( --main-text-color );
}










#footercore
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	/*width: 100%;*/
	max-width: 1256px;
	margin: 12px auto 0 auto;
	padding: 1px 32px 1px 32px;
	color: var( --main-text-color );
}


#footercore a
{
	text-decoration: none;
	color: inherit;
}


#footleftbox
{
	display: block;
	position: relative;
	width: 260px;
	vertical-align: top;
}


#footrightbox
{
	display: block;
	position: relative;
	width: 700px;
	vertical-align: top;
}


#footlogo01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	/*display: block;*/
	position: relative;
	width: 240px;
	height: 50px;
	margin: 16px 0 0 0;
	text-decoration: none;
	vertical-align: top;
	color: #674E47;
	cursor: pointer;
	transition-duration: 150ms;
	will-change: transform;
}


#footlogo01:hover
{
	opacity: 0.7;
}


#footlogo01 .logo01
{
	display: block;
	position: relative;
	margin: 1px 0 0 0;
	width: 48px;
	height: 48px;
}


#footlogo01 .logo01 img, #footlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


#footlogo01 .bnbox01
{
	display: block;
	position: relative;
	margin: 0 0 0 6px;
	width: 184px;
	height: 50px;
	text-align: left;
	color: #674E47;
}


#footlogo01 .bnbox01 img, #footlogo01 .bnbox01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


#footlogo01 .ccj01
{
	display: block;
	position: relative;
	width: 83px;
	margin: 0 auto 0 42px;
}


#footlogo01 .cnj01
{
	display: block;
	position: relative;
	width: 182px;
	margin: 4px 0 0 0;
}


#footlogo01 .cne01
{
	display: block;
	position: relative;
	width: 184px;
	margin: 3px 0 0 0;
}


#finfobox01
{
	display: block;
	position: relative;
	margin: 16px 0 0 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
	text-align: left;
	vertical-align: top;
}


#finfobox01 a
{
	transition-duration: 150ms;
}


#finfobox01 a:hover
{
	opacity: 0.7;
}


#finfo01
{
	display: block;
	position: relative;
	vertical-align: top;
}


#fnavi01
{
	display: block;
	position: relative;
	margin: 9px 0 0 0;
	padding: 0;
	list-style: none;
	vertical-align: top;
}


#fnavi01 li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


#fmenubox
{
	display: block;
	position: relative;
	margin: 0 0 0 auto;
	vertical-align: top;
}


.fmenucont
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	position: relative;
	margin: 0 auto 0 auto;
	padding: 0;
	list-style: none;
	vertical-align: top;
	color: var( --main-text-color );
}


.fmenucont li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	text-align: center;
	vertical-align: top;
	flex-grow: 1;
	border-left: solid 1px var( --main-text-color );
}


.fmenucont li:last-of-type
{
	border-right: solid 1px var( --main-text-color );
}


.fmenucont li a
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: inherit;
	transition-duration: 150ms;
}


.fmenucont li a:hover
{
	opacity: 0.7;
}


.fmenucont li a .mtj
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1em;
	text-align: center;
	vertical-align: top;
}


#fmenucont01
{
	margin-top: 6px;
}


#fmenucont02
{
	margin-top: 28px;
}


#fmenucont03
{
	width: 280px;
	margin-top: 28px;
	margin-right: 0;
}


#footcopy
{
	display: block;
	position: relative;
	width: 300px;
	margin: 11px 0 0 14px;
	font-size: 10px;
	font-weight: 300;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}











#hbmenuplate
{
	display: block;
	position: fixed;
	top: -200vh;
	left: 0px;
	/*width: 480px;*/
	width: 100%;
	height: calc( 120dvh - 2px );
	padding-top: 1px;
	padding-bottom: 1px;
	background-color: var( --plate-bg-color );
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	/*transition-duration: 300ms;*/
	visibility: hidden;
	z-index: 2;
}


#hbmbtn
{
	display: none;
}


#hbmpheadbox
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	margin: 94px 0px 0px 0px;
	color: #FFFFFF;
	background-color: rgba( 255, 255, 255, 0.3 );
}

/*
#hbmlogo01
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: absolute;
	left: 24px;
	top: 17px;
	margin: 0 0 0 0;
	width: 236px;
	height: 60px;
	text-decoration: none;
	color: #FFFFFF;
	cursor: pointer;
	will-change: transform;
}


#hbmlogo01 .logo01
{
	display: block;
	position: relative;
	width: 60px;
	height: 60px;
	vertical-align: top;
}


#hbmlogo01 .logo01 img, #hbmlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0px;
}


#hbmlogo01 .bnbox01
{
	display: block;
	position: relative;
	width: 163px;
	height: auto;
	margin: 4px 0 0 10px;
	vertical-align: top;
}
*/

#hbhnavibox
{
	display: block;
	position: relative;
	height: auto;
	margin: 0 0 0 0;
	padding-top: 1px;
	padding-bottom: 1px;
	vertical-align: top;
}


#hbhnavicont
{
	display: block;
	position: relative;
	list-style: none;
	margin: 10px 0 10px 0;
	padding: 0;
}


#hbhnavicont > li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
}


#hbhnavicont > li > a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 12px 24px 12px 44px;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
}


#hbhnavicont .hbhtel
{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
}


#hbhnavicont .hbhtel .icon
{
	display: block;
	position: relative;
	width: auto;
	height: 32px;
	border: 0;
}


#hbhnavicont .hbhtel .tel
{
	display: block;
	position: relative;
	margin: -6px 0 0 8px;
	font-family: 'Murecho', sans-serif;
	font-size: 40px;
	font-weight: 500;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}


#hbmpcont
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	height: calc( 100dvh - 24px - 64px );
	padding-top: 12px;
	padding-bottom: 64px;
	overflow-y: auto;
	/*background-color: #CCFFCC;*/
}


#hbmenubox
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0px;
	/*background-color: rgba( 255, 200, 200, 0.3 );*/
}


#hbmenucont
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	color: #FFFFFF;
}


#hbmenucont > li
{
	display: block;
	position: relative;
	margin: 10px 0 0 0;
	padding: 0;
}


#hbmenucont > li > a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 12px 24px 12px 44px;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
}


#hbmenucont > li > a > .mtj
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	/*font-family: 'Kaisei Tokumin', serif;*/
	font-size: 20px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.1em;
}


#hbmenucont > li > ul
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	color: #FFFFFF;
}


#hbmenucont > li > ul > li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 24px;
}


#hbmenucont > li > ul > li > a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 12px 24px 12px 44px;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
}


#hbmenucont > li > ul > li > a > .smtj
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.1em;
}


#hbmpfootbox
{
	display: block;
	position: relative;
	width: 100%;
	margin: 0px auto 0px auto;
}


#hbfnavibox
{
	display: block;
	position: relative;
	margin: 57px 0 0 0;
}


#hbfnavicont
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
	color: #FFFFFF;
}


#hbfnavicont li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


#hbfnavicont li a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 14px 24px 14px 44px;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
}


#hbfnavicont li a .mtj
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.1em;
}





.pcbr
{
	display: block;
}


.mbbr
{
	display: none;
}


.pcbl
{
	display: block;
}


.mbbl
{
	display: none;
}


.pcil
{
	display: inline-block;
}


.mbil
{
	display: none;
}





#rsvt_pc
{
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 1px;
	height: 1px;
}


#rsvt_m
{
	display: none;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 1px;
	height: 1px;
}





.mt0 { margin-top: 0; }
.mt1 { margin-top: 1px; }
.mt2 { margin-top: 2px; }
.mt3 { margin-top: 3px; }
.mt4 { margin-top: 4px; }
.mt5 { margin-top: 5px; }
.mt6 { margin-top: 6px; }
.mt7 { margin-top: 7px; }
.mt8 { margin-top: 8px; }
.mt9 { margin-top: 9px; }
.mt10 { margin-top: 10px; }
.mt11 { margin-top: 11px; }
.mt12 { margin-top: 12px; }
.mt13 { margin-top: 13px; }
.mt14 { margin-top: 14px; }
.mt15 { margin-top: 15px; }
.mt16 { margin-top: 16px; }
.mt17 { margin-top: 17px; }
.mt18 { margin-top: 18px; }
.mt19 { margin-top: 19px; }
.mt20 { margin-top: 20px; }
.mt21 { margin-top: 21px; }
.mt22 { margin-top: 22px; }
.mt23 { margin-top: 23px; }
.mt24 { margin-top: 24px; }
.mt25 { margin-top: 25px; }
.mt26 { margin-top: 26px; }
.mt27 { margin-top: 27px; }
.mt28 { margin-top: 28px; }
.mt29 { margin-top: 29px; }
.mt30 { margin-top: 30px; }
.mt31 { margin-top: 31px; }
.mt32 { margin-top: 32px; }
.mt33 { margin-top: 33px; }
.mt34 { margin-top: 34px; }
.mt35 { margin-top: 35px; }
.mt36 { margin-top: 36px; }
.mt37 { margin-top: 37px; }
.mt38 { margin-top: 38px; }
.mt39 { margin-top: 39px; }
.mt40 { margin-top: 40px; }
.mt41 { margin-top: 41px; }
.mt42 { margin-top: 42px; }
.mt43 { margin-top: 43px; }
.mt44 { margin-top: 44px; }
.mt45 { margin-top: 45px; }
.mt46 { margin-top: 46px; }
.mt47 { margin-top: 47px; }
.mt48 { margin-top: 48px; }
.mt49 { margin-top: 49px; }
.mt50 { margin-top: 50px; }
.mt51 { margin-top: 51px; }
.mt52 { margin-top: 52px; }
.mt53 { margin-top: 53px; }
.mt54 { margin-top: 54px; }
.mt55 { margin-top: 55px; }
.mt56 { margin-top: 56px; }
.mt57 { margin-top: 57px; }
.mt58 { margin-top: 58px; }
.mt59 { margin-top: 59px; }
.mt60 { margin-top: 60px; }
.mt61 { margin-top: 61px; }
.mt62 { margin-top: 62px; }
.mt63 { margin-top: 63px; }
.mt64 { margin-top: 64px; }
.mt65 { margin-top: 65px; }
.mt66 { margin-top: 66px; }
.mt67 { margin-top: 67px; }
.mt68 { margin-top: 68px; }
.mt69 { margin-top: 69px; }
.mt70 { margin-top: 70px; }
.mt71 { margin-top: 71px; }
.mt72 { margin-top: 72px; }
.mt73 { margin-top: 73px; }
.mt74 { margin-top: 74px; }
.mt75 { margin-top: 75px; }
.mt76 { margin-top: 76px; }
.mt77 { margin-top: 77px; }
.mt78 { margin-top: 78px; }
.mt79 { margin-top: 79px; }
.mt80 { margin-top: 80px; }
.mt81 { margin-top: 81px; }
.mt82 { margin-top: 82px; }
.mt83 { margin-top: 83px; }
.mt84 { margin-top: 84px; }
.mt85 { margin-top: 85px; }
.mt86 { margin-top: 86px; }
.mt87 { margin-top: 87px; }
.mt88 { margin-top: 88px; }
.mt89 { margin-top: 89px; }
.mt90 { margin-top: 90px; }
.mt91 { margin-top: 91px; }
.mt92 { margin-top: 92px; }
.mt93 { margin-top: 93px; }
.mt94 { margin-top: 94px; }
.mt95 { margin-top: 95px; }
.mt96 { margin-top: 96px; }
.mt97 { margin-top: 97px; }
.mt98 { margin-top: 98px; }
.mt99 { margin-top: 99px; }
.mt100 { margin-top: 100px; }

.mt110 { margin-top: 110px; }

.mt120 { margin-top: 120px; }

.mt140 { margin-top: 140px; }

.mt160 { margin-top: 160px; }

.mt180 { margin-top: 180px; }

.mt200 { margin-top: 200px; }

.mt220 { margin-top: 220px; }

.mt240 { margin-top: 240px; }








@media print
{
	body
	{
		zoom: 0.6;
	}
	
	
	#obione
	{
		position: sticky;
	}
}