



:root {
	--main-bg-color: #FCE6E6;
	--main-text-color: #1F3558;
	--plate-bg-color: #FFFFFF;
	--footer-bg-color: #FFFFFF;
	--point-color01: #F08382;
	--point-color01-hover: #5FB7E1;
	--point-color-light01: #EAF5F8;
	--point-color-middle01: #5FB7E1;
	--point-bg-color01: #EAF5F8;
	--point-color-middle02: #A3DEF8;
	--point-color-dark01: #1A98D4;
	--point-color02: #F1E400;
	--point-color02-hover: #5FB7E1;
	--point-color-light02: #FFFF78;
}







body,div,p,a,img,h,h1,h2,h3,h4,h5,h6,hr,header,footer,section,article
{
	margin: 0px;
	padding: 0px;
	border: 0px;
}


body
{
	margin: 0px;
	padding: 0px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 12px;
	font-weight: 400;
	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;
}






#bodybox
{
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0px 0px 0px 0px;
	min-width: 1492px;
	overflow-x: hidden;
}


#headerbase
{
	display: block;
	position: relative;
	width: 100%;
	height: 256px;
	background-color: #FFFFFF;
	overflow: hidden;
}


header
{
	position: relative;
	width: 1492px;
	height: calc( 100% - 2px );
	margin: 0px auto 0px auto;
	padding-top: 1px;
	padding-bottom: 1px;
}


.midbase, #footerbase
{
	position: relative;
	width: 100%;
	margin: 0px 0px 0px 0px;
}


.midbox, footer
{
	position: relative;
	width: 1492px;
	margin: 0px auto 0px auto;
	padding-top: 1px;
	padding-bottom: 1px;
}


#footerbase
{
	height: auto;
	background-color: var( --footer-bg-color );
}


#footerbase::after
{
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 144px;
	background-color: var( --point-color01 );
}


footer
{
	height: auto;
	padding-bottom: 144px;
	color: #717171;
}






.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: relative;
	width: 1492px;
	height: 118px;
	margin: 81px auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	background-color: #FFFFFF;
	border-radius: 60px;
	box-shadow: 0 0 10px rgba( 172, 172, 172, 0.4 );
	z-index: 1;
}


#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;
	position: absolute;
	left: 80px;
	top: 46px;
	margin: 0 0 0 0;
	width: 302px;
	height: 32px;
	text-decoration: none;
	cursor: pointer;
	will-change: transform;
}


#headlogo01:hover
{
	opacity: 0.7;
	transition-duration: 150ms;
}


#headlogo01 .logo01
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	vertical-align: top;
}


#headlogo01 .logo01 img, #headlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	border: 0;
}


#headlogo01 .cnj01
{
	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: 265px;
	height: 100%;
	margin-left: 10px;
	vertical-align: top;
}


#headlogo01 .cnj01 img, #headlogo01 .cnj01 svg
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	margin: 0 0 0 0;
	border: 0;
}


#headlogo01 .cnj01 .cnk01
{
	display: inline-block;
	position: relative;
	height: 32px;
	margin: -4px 0 0 12px;
	font-size: 35px;
	font-weight: 900;
	line-height: 32px;
	text-align: left;
	vertical-align: top;
	color: var( --point-color01 );
	letter-spacing: 0.025em;
}


#menubox
{
	display: block;
	position: absolute;
	right: 350px;
	top: 0;
	bottom: 0;
	margin: auto;
	font-size: 18px;
	width: 700px;
	height: 1em;
	/*color: #000000;*/
}


#menucont
{
	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: 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 0 0 auto;
	padding: 0;
	list-style: none;
	will-change: transform;
}


#menucont li
{
	display: inline-block;
	position: relative;
	margin: 0 22px 0 22px;
	padding: 0;
	height: 100%;
	vertical-align: top;
}


#menucont li:first-of-type
{
	margin-left: 0;
}


#menucont li:last-of-type
{
	margin-right: 0;
}


#menucont li a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	height: 1em;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: inherit;
	transition-duration: 150ms;
	will-change: transform;
}


#menucont li a:hover
{
	opacity: 0.7;
}


#menucont li a .mtj
{
	display: block;
	position: relative;
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	vertical-align: top;
	letter-spacing: 0.1em;
}


#htfbtn01
{
	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: absolute;
	top: 0;
	bottom: 0;
	right: 38px;
	margin: auto;
	width: 250px;
	height: 56px;
	text-decoration: none;
	color: #FFFFFF;
	background-color: var( --point-color01 );
	border-radius: 28px;
	transition-duration: 150ms;
}


#htfbtn01:hover
{
	opacity: 0.7;
}


#htfbtn01 .icon
{
	display: block;
	position: relative;
	width: 24px;
	height: auto;
	border: 0;
}


#htfbtn01 .tb
{
	display: block;
	position: relative;
	margin-left: 7px;
	font-size: 15px;
	font-weight: 500;
	line-height: 1em;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
}







.stcont
{
	display: block;
	position: relative;
	width: 1250px;
	margin: 100px auto 100px auto;
	padding-top: 1px;
	padding-bottom: 1px;
	vertical-align: top;
	/*
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	*/
}


.stbox01
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	text-align: center;
	vertical-align: top;
}


.stbox01 .ste
{
	display: block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	font-family: 'Poppins', sans-serif;
	font-size: 47px;
	font-weight: 600;
	line-height: 1.4em;
	vertical-align: top;
	color: var( --point-color01 );
	letter-spacing: 0.05em;
}


.stbox01 .stj
{
	display: block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	margin-top: 6px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4em;
	vertical-align: top;
	letter-spacing: 0.075em;
}


.stbox02
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	text-align: center;
	vertical-align: top;
}


.stbox02 .stj
{
	display: block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	font-size: 34px;
	font-weight: 700;
	line-height: 1.4em;
	vertical-align: top;
	letter-spacing: 0.075em;
}






#midfootbase01
{
	background-color: #F4F5F7;
}


#midfootbox01
{
	z-index: 1;
}






#mfcatchbase01
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	margin: 0 auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	/*background-color: #CCCCFF;*/
}

/*
#fcbg01
{
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	top: 0;
	margin: auto;
	width: 2304px;
	height: 100%;
	overflow-x: visible;
	overflow-y: hidden;
	z-index: 0;
}


#fcbg01::before
{
	content: '';
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	bottom: 0;
	margin: auto;
	width: 100%;
	height: 300%;
	background-color: var( --point-bg-color01 );
	border-radius: 50%;
	z-index: 0;
}
*/

#mfcatchbox01
{
	display: block;
	position: relative;
	margin: 146px auto 0 auto;
	vertical-align: top;
}


#mfcatch01
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	font-size: 25px;
	font-weight: 700;
	line-height: 36px;
	text-align: center;
	vertical-align: top;
	color: var( --main-text-color );
}


#mfctbox01
{
	display: block;
	position: relative;
	width: 1250px;
	margin: 43px auto 0 auto;
}


#mfctcont01
{
	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%;
	vertical-align: top;
}


.mfctitem
{
	display: block;
	position: relative;
	width: 614px;
	height: 130px;
	padding-top: 1px;
	padding-bottom: 1px;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --point-color01 );
	border-radius: 21px;
	box-shadow: 0 0 10px rgba( 172, 172, 172, 0.46 );
	transition-duration: 150ms;
	will-change: transform;
}


.mfctitem:hover
{
	opacity: 0.7;
}


#mftel01
{
	display: block;
	position: relative;
	margin: 36px auto 0 auto;
	font-family: 'Outfit', sans-serif;
	font-size: 50px;
	font-weight: 600;
	line-height: 1em;
	vertical-align: top;
}


#mftel01 span
{
	font-size: 32px;
	line-height: 50px;
}


#mftsh01
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	font-size: 15px;
	font-weight: 600;
	line-height: 1em;
	vertical-align: top;
}


#mftc01
{
	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;
	height: 34px;
	margin: 46px auto 0 auto;
	vertical-align: top;
}


#mftc01 .icon
{
	display: block;
	position: relative;
	width: auto;
	height: 34px;
	margin-top: 1px;
	vertical-align: top;
	border: 0;
}


#mftc01 .it
{
	display: block;
	position: relative;
	margin: 0 0 0 14px;
	font-size: 31px;
	font-weight: 700;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}


#mfcont01
{
	margin-top: 108px;
	margin-bottom: 186px;
}


#mfinfobox01
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	vertical-align: top;
}


#mfinfocont01
{
	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;
	vertical-align: top;
}


#mfbannerbox01
{
	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: 705px;
	vertical-align: top;
}


.mfbanner
{
	display: block;
	position: relative;
	vertical-align: top;
	transition-duration: 150ms;
	will-change: transform;
}


.mfbanner:hover
{
	opacity: 0.7;
}


.mfbanner img
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


.mfbanner img.pc
{
	display: block;
}


.mfbanner img.mb
{
	display: none;
}


.mfbanner_mental01
{
	width: 705px;
}


.mfbanner_kokoroview01
{
	width: 345px;
	margin-top: 15px;
}


.mfbanner_mhr01
{
	width: 345px;
	margin-top: 15px;
}


.mfbanner_nr
{
	width: 345px;
	margin-top: 15px;
}


.mfbanner_wd
{
	margin-top: 15px;
	width: 705px;
}


.mfbanner_tier1
{
	margin-top: 0 !important;
}


#mfntbox01
{
	display: block;
	position: relative;
	width: 426px;
	height: 344px;
	padding: 51px 48px 1px 48px;
	background-color: #FFFFFF;
}


#st_mfnt01
{
	display: block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	font-size: 24px;
	font-weight: 700;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	/*color: var( --point-color01 );*/
	color: #00B0C1;
}


#mfntcont01
{
	display: block;
	position: relative;
	height: 232px;
	margin: 16px auto 0 auto;
	overflow-y: auto;
}


.mfntitem
{
	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;
	margin: 0 0 0 0;
	padding: 28px 0 28px 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.1em;
	text-decoration: none;
	text-align: left;
	vertical-align: top;
	color: inherit;
	letter-spacing: 0.05em;
	border-top: solid 1px rgba( 35, 23, 21, 0.25 ); /* #231815; */
}


.mfntitem:last-of-type
{
	border-bottom: solid 1px  rgba( 35, 23, 21, 0.25 );
}


.mfntitem .idate
{
	display: block;
	position: relative;
	width: 144px;
	vertical-align: top;
}


.mfntitem .ititle
{
	display: block;
	position: relative;
	width: calc( 100% - 144px );
	vertical-align: top;
}


#mfntmore01
{
	display: block;
	position: relative;
	width: 120px;
	margin: 14px 0 0 auto;
	font-size: 15px;
	font-weight: 400;
	text-decoration: none;
	text-align: right;
	vertical-align: top;
	color: inherit;
	letter-spacing: 0.05em;
	transition-duration: 150ms;
}


#mfntmore01:hover
{
	opacity: 0.7;
}






#fabgbase01
{
	display: block;
	position: relative;
	width: 100%;
	height: 258px;
	/*margin: -2px auto 0 auto;*/
	margin: -188px auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	/*background-color: #CCCCFF;*/
	z-index: 0;
}


#fabgbase01::before
{
	content: '';
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	top: 0;
	margin: auto;
	width: 100vw;
	height: 100%;
	background-color: var( --footer-bg-color );
}


#fabg01
{
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	top: 0;
	margin: auto;
	width: 2604px;
	height: 100%;
	overflow-x: visible;
	overflow-y: hidden;
	z-index: 0;
}


#fabg01::before
{
	content: '';
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	bottom: 0;
	margin: auto;
	/*width: 120vw;*/
	width: 100%; /* 2304px; */
	height: 300%;
	/*background-color: #FFFFFF;*/
	background-color: var( --point-bg-color01 );
	border-radius: 50%;
	z-index: 0;
}





#toabox01
{
	display: block;
	position: relative;
	width: 1250px;
	margin: 60px auto 0 auto;
	vertical-align: top;
}


#st_toa
{
	display: inline-block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	font-size: 17px;
	font-weight: 600;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.05em;
}


#toacom01
{
	display: inline-block;
	position: relative;
	margin-block: calc( ( 1em - 1lh ) / 2 );
	margin-top: 1px;
	margin-left: 16px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.05em;
}


#toacont01
{
	display: block;
	position: relative;
	margin: 10px auto 0 auto;
	padding-top: 17px;
	padding-bottom: 20px;
	border-top: solid 1px rgba( 255, 255, 255, 0.5 );
	border-bottom: solid 1px rgba( 255, 255, 255, 0.5 );
}


#toacont01 p
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	font-size: 15px;
	font-weight: 400;
	line-height: 23px;
	text-align: justify;
	text-justify: inter-ideograph;
	vertical-align: top;
	letter-spacing: 0.04em;
}







#footercore
{
	display: block;
	position: relative;
	width: 100%;
	margin: 106px auto 82px auto;
	padding-top: 1px;
	padding-bottom: 1px;
}


#footerinfo01
{
	display: block;
	position: relative;
	margin: 0 auto 0 auto;
	vertical-align: top;
}


#footlogo01
{
	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: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	margin: 0 auto 0 auto;
	width: 430px;
	height: 46px;
	text-decoration: none;
	cursor: pointer;
	will-change: transform;
}


#footlogo01:hover
{
	opacity: 0.7;
	transition-duration: 150ms;
}


#footlogo01 .logo01
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	vertical-align: top;
}


#footlogo01 .logo01 img, #footlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	border: 0;
}


#footlogo01 .cnj01
{
	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: 376px;
	height: 100%;
	margin-left: 10px;
	vertical-align: top;
}


#footlogo01 .cnj01 img, #footlogo01 .cnj01 svg
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	margin: 0 0 0 0;
	border: 0;
}


#footlogo01 .cnj01 .cnk01
{
	display: inline-block;
	position: relative;
	height: 45px;
	margin: -4px 0 0 15px;
	font-size: 50px;
	font-weight: 900;
	line-height: 45px;
	text-align: left;
	vertical-align: top;
	color: var( --point-color01 );
	letter-spacing: 0.025em;
}


#finfoc01
{
	display: block;
	position: relative;
	margin: 30px auto 0 auto;
	font-size: 18px;
	font-weight: 400;
	line-height: 28px;
	text-align: center;
	vertical-align: top;
	letter-spacing: 0.04em;
}


#finfoc01 a
{
	text-decoration: none;
	color: inherit;
	transition-duration: 150ms;
}


#finfoc01 a:hover
{
	opacity: 0.7;
}





#fsnsbox
{
	display: block;
	position: relative;
	width: 476px;
	height: 104px;
	margin: 92px auto 0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
	vertical-align: top;
	background-color: #FFFFFF;
	border-radius: 52px;
	box-shadow: 0 0 10px rgba( 172, 172, 172, 0.46 );
}


#fsnscont
{
	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: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	position: relative;
	width: 294px;
	margin: 32px auto 0 auto;
	padding: 0;
	list-style: none;
	vertical-align: top;
}


#fsnscont li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


#fsnscont li a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	text-decoration: none;
	vertical-align: top;
	transition-duration: 150ms;
	will-change: transform;
}


#fsnscont li a:hover
{
	opacity: 0.7;
}


#fsnscont li a img, #fsnscont li a svg
{
	display: block;
	position: relative;
	width: auto;
	height: 38px;
	border: 0;
	vertical-align: top;
}


#fmenubox
{
	display: block;
	position: relative;
	margin: 110px auto 0 auto;
	vertical-align: top;
}


#fmenucont
{
	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: 551px;
	margin: 0 auto 0 auto;
	padding: 0;
	list-style: none;
	will-change: transform;
}


#fmenucont li
{
	display: inline-block;
	position: relative;
	margin: 0 22px 0 22px;
	padding: 0;
	vertical-align: top;
}


#fmenucont li a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	height: 1em;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: inherit;
	transition-duration: 150ms;
	will-change: transform;
}


#fmenucont li a:hover
{
	opacity: 0.7;
}


#fmenucont li a .mtj
{
	display: block;
	position: relative;
	font-size: 15px;
	font-weight: 500;
	line-height: 1em;
	text-align: center;
	vertical-align: top;
	letter-spacing: 0.1em;
}


#footcopy
{
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 94px;
	margin: auto;
	width: 300px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1em;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	z-index: 1;
}











#hbmenuplate
{
	display: block;
	position: fixed;
	top: -200vh;
	/*left: 0px;*/
	left: calc( 50dvw - 240px );
	width: 480px;
	height: calc( 100dvh - 2px );
	padding-top: 1px;
	padding-bottom: 1px;
	background-color: var( --plate-bg-color );
	/*
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	*/
	z-index: 2;
	transition-duration: 300ms;
}


#hbmenuplate::before
{
	content: '';
	display: block;
	position: absolute;
	left: -2048px;
	right: -2048px;
	top: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	background-color: var( --plate-bg-color );
}


#hbmbtn
{
	display: none;
}


#hbmpheadbox
{
	display: block;
	position: relative;
	width: 100%;
	height: 93px;
	margin: -1px 0px 0px 0px;
	/*background-color: rgba( 200, 200, 255, 0.3 );*/
}


#hbmlogo01
{
	/*
	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: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-line-pack: center;
	align-content: center;
	*/
	display: none;
	position: absolute;
	left: 38px;
	top: 34px;
	margin: 0 0 0 0;
	width: 311px;
	height: 42px;
	text-decoration: none;
	cursor: pointer;
	will-change: transform;
}


#hbmlogo01:hover
{
	opacity: 0.7;
	transition-duration: 150ms;
}


#hbmlogo01 .logo01
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	vertical-align: top;
}


#hbmlogo01 .logo01 img, #hbmlogo01 .logo01 svg
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	border: 0px;
}


#hbmlogo01 .cnj01
{
	display: block;
	position: relative;
	width: 250px;
	height: auto;
	margin-top: 5px;
	vertical-align: top;
}


#hbmlogo01 .cnj01 img, #hbmlogo01 .cnj01 svg
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	border: 0;
}


#hbmpcont
{
	display: block;
	position: relative;
	margin: 33px 0 0 0;
	padding-top: 1px;
	padding-bottom: 1px;
}


#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: var( --main-text-color );;
}


#hbmenucont li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
}


#hbmenucont li a
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 18px 24px 18px 64px;
	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: 18px;
	font-weight: 700;
	line-height: 1.2em;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.1em;
}


#hbmpfootbox
{
	display: block;
	position: relative;
	width: 100%;
	margin: 60px auto 0px auto;
}


#hbnavibox
{
	display: block;
	position: relative;
	margin: 97px 0 0 0;
}


#hbnavicont
{
	display: block;
	position: relative;
	list-style: none;
	margin: 0 0 0 0;
	padding: 0;
}


#hbnavicont li
{
	display: block;
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
	vertical-align: top;
}


#hbmtelbox01
{
	display: block;
	position: relative;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: var( --point-color01 );
	will-change: transform;
}


#hbmtel01
{
	display: block;
	position: relative;
	font-family: 'Outfit', sans-serif;
	font-size: 41px;
	font-weight: 600;
	line-height: 1em;
	vertical-align: top;
}


#hbmtel01 span
{
	font-size: 26px;
	line-height: 38px;
}


#hbmsh01
{
	display: block;
	position: relative;
	margin: 1px auto 0 auto;
	font-size: 14px;
	font-weight: 700;
	line-height: 1em;
	vertical-align: top;
}


#hbmtoi01
{
	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: 324px;
	height: 62px;
	margin: 28px auto 0 auto;
	text-decoration: none;
	text-align: center;
	vertical-align: top;
	color: #FFFFFF;
	background-color: var( --point-color01 );
	border-radius: 31px;
	cursor: pointer;
	will-change: transform;
}


#hbmtoi01 .icon_mail
{
	display: block;
	position: relative;
	width: 27px;
	height: auto;
	border: 0;
}


#hbmtoi01 .it
{
	display: inline-block;
	position: relative;
	margin: 0 0 0 9px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1em;
	text-align: left;
	vertical-align: top;
}






.tbbr
{
	display: none;
}


.mbbr
{
	display: none;
}


.pcbr
{
	display: block;
}


.tbil
{
	display: none;
}


.mbil
{
	display: none;
}


.pcil
{
	display: inline-block;
}





#rsvt_pc
{
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 1px;
	height: 1px;
}


#rsvt_tb
{
	display: none;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 1px;
	height: 1px;
}


#rsvt_mb
{
	display: none;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 1px;
	height: 1px;
}







:root {
	--bp-tb-width: 1186px;
	--bp-tb-margin: 32px;
	--bp-tb-cont-width: calc( var( --bp-tb-width ) - var( --bp-tb-margin ) - var( --bp-tb-margin ) );
}


@media ( max-width: 1492px )
{
	#bodybox
	{
		min-width: var( --bp-tb-width );
	}
	
	
	header
	{
		width: var( --bp-tb-width );
	}
	
	
	.midbox, footer
	{
		width: var( --bp-tb-width );
	}
	
	
	#obione
	{
		width: var( --bp-tb-cont-width );
		height: 112px;
		margin-top: 60px;
		border-radius: 57px;
	}
	
	
	#headlogo01
	{
		/*
		left: 50px;
		top: 28px;
		width: 388px;
		height: 53px;
		*/
		left: 50px;
		top: 41px;
	}
	
	
	#headlogo01 .cnj01
	{
		/*
		width: 309px;
		margin-top: 5px;
		*/
	}
	
	
	#menubox
	{
		right: 280px;
		width: 480px;
	}
	
	
	#menucont li
	{
		margin: 0 7px 0 7px;
	}
	
	
	#htfbtn01
	{
		width: 230px;
	}
	
	
	
	.stcont
	{
		width: var( --bp-tb-cont-width );
	}
	
	
	
	
	
	
	
	#mfbannerbox01
	{
		width: 645px;
	}
	
	
	.mfbanner_mental01
	{
		width: 100%;
	}
	
	
	.mfbanner_kokoroview01
	{
		width: 49%;
		margin-top: 12px;
	}
	
	
	.mfbanner_mhr01
	{
		width: 49%;
		margin-top: 12px;
	}
	
	
	.mfbanner_nr
	{
		width: 49%;
		margin-top: 12px;
	}
	
	
	.mfbanner_wd
	{
		width: 100%;
		margin-top: 12px;
	}
	
	
	#mfntbox01
	{
		width: 380px;
		height: 312px;
		padding: 49px 38px 1px 38px;
	}
	
	
	#st_mfnt01
	{
		font-size: 21px;
	}
	
	
	#mfntcont01
	{
		height: 201px;
	}
	
	
	.mfntitem
	{
		padding: 24px 0 24px 0;
		font-size: 16px;
	}
	
	
	.mfntitem .idate
	{
		width: 114px;
	}
	
	
	.mfntitem .ititle
	{
		width: calc( 100% - 114px );
	}
	
	
	
	
	
	#mfcatchbase01
	{
		/*height: 248px;*/
	}
	
	/*
	#fcbg01
	{
		width: 2140px;
	}
	*/
	
	#mfcatchbox01
	{
		/*margin-top: 127px;*/
	}
	
	
	#mfctbox01
	{
		width: var( --bp-tb-cont-width );
	}
	
	
	.mfctitem
	{
		width: 550px;
	}
	
	
	#fabg01
	{
		width: 2140px;
	}
	
	
	#toabox01
	{
		width: var( --bp-tb-cont-width );
	}
	
	
	#toacont01 p
	{
		font-size: 13px;
		line-height: 22px;
	}
	
	
	#footercore
	{
		width: var( --bp-tb-cont-width );
	}
	
	
	#footcopy
	{
		right: var( --bp-tb-margin );
	}
	
	
	.pcbr
	{
		display: none;
	}
	
	
	.mbbr
	{
		display: none;
	}
	
	
	.tbbr
	{
		display: block;
	}
	
	
	.pcil
	{
		display: none;
	}
	
	
	.mbil
	{
		display: none;
	}
	
	
	.tbil
	{
		display: inline-block;
	}
	
	
	#rsvt_pc
	{
		display: none;
	}
	
	
	#rsvt_mb
	{
		display: none;
	}
	
	
	#rsvt_tb
	{
		display: block;
	}
}
