







@media ( max-width: 640px )
{
	body
	{
		-webkit-text-size-adjust: 100%;
		width: 480px;
		min-width: 480px;
	}
	
	
	.pcbr
	{
		display: none;
	}
	
	
	.mbbr
	{
		display: block;
	}
	
	
	.pcil
	{
		display: none;
	}
	
	
	.mbil
	{
		display: inline-block;
	}
	
	
	#rsvt_pc
	{
		display: none;
	}
	
	
	#rsvt_m
	{
		display: block;
	}
	
	
	#bodybox
	{
		width: 480px;
		min-width: 480px;
	}
	
	
	#headerbase
	{
		width: 480px;
		height: 480px;
		margin-top: 92px;
	}
	
	
	header
	{
		width: 480px;
	}
	
	
	.midbase
	{
		width: 480px;
	}
	
	
	.midbox
	{
		width: 480px;
	}
	
	
	#footerbase
	{
		width: 480px;
		/*height: 715px;*/
	}
	
	
	footer
	{
		width: 480px;
		/*height: auto;*/
		/*padding-bottom: 123px;*/
		padding-bottom: 152px;
	}
	
	
	.rtt01
	{
		width: 86px;
		margin: 80px auto 0px auto;
		padding-top: 47px;
		font-size: 15px;
	}
	
	
	.rtt01::before
	{
		height: 38px;
	}
	
	
	.rtt01::after
	{
		height: 16px;
	}
	
	
	footer .rtt01
	{
		/*
		position: relative;
		right: auto;
		bottom: auto;
		margin: 55px auto 0px auto;
		*/
		bottom: 176px;
	}
	
	
	#obione
	{
		position: fixed;
		left: 0px;
		top: 0px;
		width: 480px;
		height: 91px;
		margin: 0px;
		/*background-color: #CCFFCC;*/
		/*background-color: rgba( 255, 255, 255, 0.3 );*/
		/*background-color: rgba( 233, 85, 19, 0.9 );*/
		z-index: 2;
	}
	
	
	#obione::before
	{
		content: '';
		display: block;
		position: absolute;
		left: 0px;
		top: 0px;
		width: 100%;
		height: 100%;
		background-color: #6DC5EC;
	}
	
	
	.anc01
	{
		-webkit-transform: translateY( -94px );
		transform: translateY( -94px );
	}
	
	
	#headlogo01
	{
		left: 26px;
		right: auto;
		top: 21px;
		width: 222px;
		height: 53px;
	}
	
	
	#headlogo01 .logo01
	{
		width: 53px;
	}
	
	
	#headlogo01 .cnb01
	{
		width: calc( 100% - 53px - 9px );
		margin: 10px 0px 0px 9px;
	}
	
	
	#headlogo01 .cnj01
	{
		width: 157px;
	}
	
	
	#headlogo01 .cne01
	{
		width: 160px;
		margin: 4px 0px 0px 0px;
	}
	
	
	#menubox
	{
		display: none;
	}
	
	
	#hnavibox01
	{
		display: none;
	}
	
	
	#midfootbase
	{
		
	}
	
	
	#midfootbox
	{
		
	}
	
	
	#mfcore01
	{
		height: auto;
	}
	
	
	#mfcore02
	{
		width: 100%;
		height: auto;
		margin-top: 80px;
	}
	
	
	#mfcore03
	{
		width: 100%;
		height: auto;
	}
	
	
	#mflinkbox01
	{
		width: 410px;
		height: auto;
		margin: 92px auto 0px auto;
	}
	
	
	#mflinkcont01
	{
		display: block;
		margin: 92px auto 0px auto;
	}
	
	
	.mflitem
	{
		width: 408px;
		height: 268px;
		border-radius: 24px;
	}
	
	
	.mflitem, .mflitem:nth-of-type(odd), .mflitem:nth-of-type(even)
	{
		margin: 21px auto 0px auto;
	}
	
	
	.mflitem .core
	{
		padding: 54px 38px 46px 38px;
	}
	
	
	.mflitem .core .c01
	{
		width: 190px;
	}
	
	
	.mflitem .core .c02
	{
		width: calc( 100% - 190px );
		height: 180px;
		margin-top: -10px;
	}
	
	
	.mflitem .itj
	{
		font-size: 25px;
		line-height: 32px;
	}
	
	
	.mflitem .ite
	{
		margin: 18px 0px 0px 0px;
		font-size: 13px;
	}
	
	
	.mflitem .vm
	{
		width: 146px;
		margin: 58px 0px 0px 0px;
		font-size: 14px;
	}
	
	
	.mflitem .vm::before, .mflitem .vm::after
	{
		height: 7px;
	}
	
	
	#mfli01 .illust
	{
		width: 138px;
	}
	
	
	#mfli02 .illust
	{
		width: 122px;
		box-shadow: 0px 0px 8px rgba( 0, 0, 0, 0.12 );
	}
	
	
	.mflitem .core .c02 .illust
	{
		bottom: -2056px;
	}
	
	
	#mfbannerbox01
	{
		display: block;
		width: 438px;
		margin: 52px auto 59px auto;
	}
	
	
	#mfbannercont01
	{
		display: block;
	}
	
	
	#mfbannercont01 li
	{
		width: 410px;
	}
	
	
	#mfbannercont01 li, #mfbannercont01 li:nth-of-type(odd), #mfbannercont01 li:nth-of-type(even)
	{
		margin: 13px auto 0px auto;
	}
	
	
	.mfbanner
	{
		
	}
	
	
	#mfbtbgb
	{
		width: 1036px;
		height: 215px;
	}
	
	
	#mfbtbg
	{
		left: -2056px;
		bottom: -2164px;
	}
	
	
	#mfstb01
	{
		margin: 82px auto 0px auto;
	}
	
	
	#mfnavibox01
	{
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		width: 480px;
		height: auto;
		margin: 0px auto 0px auto;
	}
	
	
	#mfnavicont01
	{
		display: block;
		position: relative;
		left: auto;
		right: auto;
		bottom: auto;
		margin: 0px auto 0px auto;
		width: 100%;
		height: 100%;
	}
	
	
	#mfnavicont01 li
	{
		width: 100%;
		height: auto;
	}
	
	
	#mfnavicont01 li a
	{
		width: 100%;
		height: 161px;
	}
	
	
	#mfnavicont01 .nvib
	{
		width: 52px;
		height: 52px;
		margin: 45px auto 0px auto;
	}
	
	
	#mfnavicont01 .mfnvi_phone .nvicon
	{
		width: 28px;
	}
	
	
	#mfnavicont01 .mfnvi_mail .nvicon
	{
		width: 45px;
	}
	
	
	#mfnavicont01 .mfnvi_sns_i .nvicon
	{
		width: 37px;
	}
	
	
	#mfnavicont01 .nvit
	{
		margin: 4px auto 0px auto;
		font-size: 14px;
	}
	
	
	#mfnavicont01 .mfnvi_phone .nvit
	{
		margin-top: 6px;
	}
	
	
	#mfnavicont01 .mfnvi_mail .nvit
	{
		font-size: 13px;
	}
	
	
	.imenubox
	{
		width: 480px;
		max-width: 480px;
		min-width: 480px;
		height: 616px;
	}
	
	
	.imenucont li
	{
		width: 240px;
		height: 154px;
	}
	
	
	.imenucont li a
	{
		
	}
	
	
	.imenucont li a .ib
	{
		top: -23%;
		width: 78px;
		height: 65px;
	}
	
	
	.imenucont li a .it
	{
		bottom: 20%;
		font-size: 13px;
	}
	
	
	
	
	
	.hbm_opened #hbmenuplate
	{
		top: 0px;
	}
	
	
	#hbmbtn
	{
		display: block;
		position: fixed;
		left: calc( 480px - 93px );
		top: 0px;
		width: 93px;
		height: 93px;
		text-decoration: none;
		will-change: transform;
		cursor: pointer;
		transition-duration: 300ms;
		z-index: 2;
	}
	
	
	#hbmbtn .bg
	{
		display: block;
		position: absolute;
		left: 0px;
		top: 0px;
		width: 100%;
		height: 100%;
		background-color: #2AAAE2;
	}
	
	
	#hbmbtn .bar01, #hbmbtn .bar02
	{
		display: block;
		position: absolute;
		left: -2048px;
		right: -2048px;
		margin: auto;
		width: 28px;
		height: 0px;
		border: solid 1px #FFFFFF;
		transition-duration: 300ms;
	}
	
	
	#hbmbtn .bar01
	{
		top: -2068px;
		bottom: -2048px;
	}
	
	
	#hbmbtn .bar02
	{
		top: -2054px;
		bottom: -2048px;
	}
	
	
	#hbmbtn p
	{
		display: block;
		position: absolute;
		left: -2048px;
		right: -2048px;
		top: -2048px;
		bottom: -2070px;
		margin: auto;
		width: 40px;
		height: 1em;
		font-family: 'Barlow', sans-serif;
		font-size: 10px;
		font-weight: 400;
		line-height: 1em;
		text-align: center;
		vertical-align: top;
		color: #FFFFFF;
		letter-spacing: 0.05em;
		opacity: 1.0;
		transition-duration: 300ms;
	}
	
	
	.hbm_opened #hbmbtn
	{
		/*
		background-color: rgba( 255, 255, 255, 0.2 );
		*/
	}
	
	.hbm_opened #hbmbtn .bar01
	{
		top: -2048px;
		bottom: -2048px;
		-webkit-transform: rotate( 765deg );
		transform: rotate( 765deg );
	}
	
	
	.hbm_opened #hbmbtn .bar02
	{
		top: -2048px;
		bottom: -2048px;
		-webkit-transform: rotate( 675deg );
		transform: rotate( 675deg );
	}
	
	
	.hbm_opened #hbmbtn p
	{
		opacity: 0.0;
	}
	
	
	#hmbhlbox01
	{
		display: block;
		position: relative;
		margin: 0px auto 0px auto;
	}
	
	
	#hbmenubox
	{
		display: block;
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		margin: -1px auto 0px auto;
	}
	
	
	.stcont
	{
		/*width: 100%;*/
		width: 410px;
		margin: 80px auto 80px auto;
	}
	
	
	.stbox01
	{
		
	}
	
	
	.stbox01 .ste
	{
		font-size: 41px;
	}
	
	
	.stbox01 .stj
	{
		margin: 9px auto 0px 0px;
		font-size: 15px;
	}
	
	
	.stbox02
	{
		
	}
	
	
	.stbox02 .ste
	{
		font-size: 16px;
	}
	
	
	.stbox02 .stj
	{
		margin: 24px auto 0px 0px;
		font-size: 29px;
	}
	
	
	
	
	
	.linkbar01
	{
		right: calc( 50% - 240px );
		min-width: 240px;
		height: 34px;
		padding-left: 23px;
		font-size: 16px;
		line-height: 34px;
		border-top-left-radius: 9px;
		border-bottom-left-radius: 9px;
	}
	
	
	
	/*
	.interblock
	{
		width: 100%;
		height: auto;
	}
	
	
	.interblock .cont
	{
		display: block;
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		width: 100%;
		height: auto;
		margin: 0px auto 0px auto;
	}
	
	
	.interblock .cont .ib
	{
		width: 100%;
		height: auto;
	}
	
	
	.interblock .cont .ib img
	{
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		width: 480px;
		height: auto;
		margin: 0px auto 0px auto;
		object-fit: initial;
	}
	*/
	
	/*
	.interblock
	{
		width: 100%;
		height: 70px;
	}
	
	
	.interblock .cont
	{
		width: 480px;
	}
	
	
	.interblock .cont .ib
	{
		width: 160px;
	}
	*/
	
	
	.interblock
	{
		width: 100%;
		height: 120px;
	}
	
	
	.interblock .cont
	{
		width: 480px;
	}
	
	
	.interblock .cont .ib
	{
		width: 160px;
	}
	
	
	.interblock .cont .ib img
	{
		width: auto;
		height: 100%;
	}
	
	
	#footercore
	{
		display: block;
		width: 100%;
		min-height: auto;
		margin: 96px auto 0px auto;
		text-align: center;
	}
	
	
	#footlogo01
	{
		width: 387px;
		height: 102px;
		margin: 0px 0px 0px 46px;
		padding: 0px;
	}
	
	
	#footlogo01 .logo01
	{
		width: 102px;
	}
	
	
	#footlogo01 .cnb01
	{
		width: calc( 100% - 102px - 10px );
		margin: 19px 0px 0px 10px;
	}
	
	
	#footlogo01 .cnj01
	{
		width: calc( 100% - 3px );
	}
	
	
	#footlogo01 .cne01
	{
		width: calc( 100% - 4px );
		margin: 9px 0px 0px 3px;
	}
	
	
	#footinfo01
	{
		display: block;
		width: auto;
		margin: 58px 0px 0px 46px;
		padding: 0px 0px 0px 0px;
		font-size: 15px;
		line-height: 20px;
		text-align: left;
	}
	
	
	.fidl
	{
		display: block;
		margin: 16px 0px 0px 0px;
	}
	
	
	.fidl dt
	{
		width: 100%;
		font-size: 16px;
	}
	
	
	.fidl dd
	{
		width: 100%;
		margin: 7px 0px 0px 0px;
	}
	
	
	#fmenubox
	{
		display: none;
	}
	
	
	#footcopy
	{
		bottom: 50px;
		width: 100%;
		font-size: 15px;
		text-align: center;
	}
	
	
	
	
	
	
	
	.interblock01
	{
		
	}
	
	
	.interblock01 .cont
	{
		width: 480px;
	}
	
	
	.interblock01 .cont .ib
	{
		width: 240px;
		height: 102px;
	}
	
	
	.intersec01 .interblock01
	{
		margin-top: 40px;
	}
	
	
	.infobox01
	{
		width: 100%;
		margin-top: 35px;
	}
	
	
	.tkbannercont01 li
	{
		margin: 0px 4px 0px 4px;
	}
	
	
	.navibox01
	{
		right: calc( 50% - 380px );
		width: 466px;
		height: 74px;
	}
	
	
	.navicont01 .nvtel
	{
		width: 154px;
	}
	
	
	.navicont01 .nvcontact
	{
		width: 118px;
	}
	
	
	.navicont01 .nvicon
	{
		width: 30px;
		margin-top: 9px;
	}
	
	
	.navicont01 .nvtel .tel
	{
		margin-top: 6px;
		font-size: 13px;
	}
	
	
	.navicont01 .nvtel .tel span
	{
		font-size: 12px;
	}
	
	
	.navicont01 .nvtel .hs
	{
		margin-top: 2px;
		font-size: 11px;
	}
	
	
	.navicont01 .mte
	{
		margin-top: 5px;
		font-size: 13px;
	}
	
	
	.navicont01 .mtj
	{
		margin-top: 3px;
		font-size: 10px;
	}
	
	
	#mfrjbox01
	{
		margin-top: 80px;
	}
	
	
	#mfrjcont01
	{
		display: block;
		width: 292px;
		margin-top: -20px;
	}
	
	
	.rjcitem
	{
		margin: 90px auto 90px auto;
		-webkit-transform: scale( 1.2 );
		transform: scale( 1.2 );
	}
	
	
	#mftkb01
	{
		margin: 40px auto 50px auto;
	}
}