/* CSS Document */
.timer { display: none; }

html,body { width: 100%; }
body {
	color: #232323;
	margin: 0 auto;
	font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
	background: #ffffff;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}

.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }

.pb0 { padding-bottom: 0px !important; }
.pb10 { padding-bottom: 10px !important; }
.p15 { padding: 0 15px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }

.mb05em { margin-bottom: 0.5em !important; }
.mb1em { margin-bottom: 1em !important; }
.mb2em { margin-bottom: 2em !important; }
.mb3em { margin-bottom: 3em !important; }
.mb4em { margin-bottom: 4em !important; }
.pb05em { padding-bottom: 0.5em !important; }
.mr0 { margin-right: 0 !important; }

li { list-style: none; }

p {
	text-align: justify;
	-ms-text-justify: auto;
	text-justify: auto;
	text-justify: inter-ideograph;
}
h1,h2,h3,h4,h5,h6,strong { font-weight: normal; }
img { vertical-align: bottom; max-width: 100%; }

.noborder { border: none !important; }
.nomargin { margin: 0 0 !important; }

.ta_r { text-align: right; }
.ta_c { text-align: center; }

.cf:before,.cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { zoom:1; }

.enfont { font-family: Montserrat; letter-spacing: 0.2em; font-weight: bold; }
	a {
		color: #302e2e;
		text-decoration: none;
	}
.ns_show { display: none; }


@media (min-width:751px){

	.mb20 { margin-bottom: 20px !important; }
	.mb25 { margin-bottom: 25px !important; }
	.mb30 { margin-bottom: 30px !important; }
	.mb40 { margin-bottom: 40px !important; }
	.mb50 { margin-bottom: 50px !important; }
	.mb60 { margin-bottom: 60px !important; }
	.mb70 { margin-bottom: 70px !important; }
	.mb80 { margin-bottom: 80px !important; }
	.mb100 { margin-bottom: 100px !important; }
	.mb120 { margin-bottom: 120px !important; }
	.pt50 { padding-top: 50px !important; }
	.mr20 { margin-right: 20px; }
	.ls-1 { letter-spacing: -1px; }
	.ls-2 { letter-spacing: -2px; }
	.ls-3 { letter-spacing: -3px; }
	.ls-4 { letter-spacing: -4px; }
	.fs14 { font-size: 14px; }
	.fs16 { font-size: 16px; }
	.fs24 { font-size: 24px; }
	.fs26 { font-size: 26px; }

	a {
		-webkit-transition: 0.3s ease-in-out;
		   -moz-transition: 0.3s ease-in-out;
			 -o-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
	}
	a img{
		-webkit-transition: 0.3s ease-in-out;
		   -moz-transition: 0.3s ease-in-out;
			 -o-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
	}

	a:active, a:hover, a:hover img { opacity: 0.5; }
.img_hidden {
	opacity: 0;
	transition: 1s;
}
.img_open {
	-moz-animation: imgfade 1s linear 0s 1 normal forwards;
	-webkit-animation: imgfade 1s linear 0s 1 normal forwards;
	-o-animation: imgfade 1s linear 0s 1 normal forwards;
	-ms-animation: imgfade 1s linear 0s 1 normal forwards;
}
.img_open.ih2 {
	-moz-animation: imgfade 1s linear 0.3s 1 normal forwards;
	-webkit-animation: imgfade 1s linear 0.3s 1 normal forwards;
	-o-animation: imgfade 1s linear 0.3s 1 normal forwards;
	-ms-animation: imgfade 1s linear 0.3s 1 normal forwards;
}
.img_open.ih3 {
	-moz-animation: imgfade 1s linear 0.6s 1 normal forwards;
	-webkit-animation: imgfade 1s linear 0.6s 1 normal forwards;
	-o-animation: imgfade 1s linear 0.6s 1 normal forwards;
	-ms-animation: imgfade 1s linear 0.6s 1 normal forwards;
}
.img_open.ih4 {
	-moz-animation: imgfade 1s linear 0.9s 1 normal forwards;
	-webkit-animation: imgfade 1s linear 0.9s 1 normal forwards;
	-o-animation: imgfade 1s linear 0.9s 1 normal forwards;
	-ms-animation: imgfade 1s linear 0.9s 1 normal forwards;
}
.img_open.ih5 {
	-moz-animation: imgfade 1s linear 1.2s 1 normal forwards;
	-webkit-animation: imgfade 1s linear 1.2s 1 normal forwards;
	-o-animation: imgfade 1s linear 1.2s 1 normal forwards;
	-ms-animation: imgfade 1s linear 1.2s 1 normal forwards;
}

.showup {
	opacity: 0;
	transition: 1s;
	transform: translateY(20px);
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
}
.upview {
	-moz-animation: showup 0.6s linear 0s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0s 1 normal forwards;
	-o-animation: showup 0.6s linear 0s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0s 1 normal forwards;
}
.upview.uv2 {
	-moz-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.3s 1 normal forwards;
}
.upview.uv3 {
	-moz-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.6s 1 normal forwards;
}
.upview.uv4 {
	-moz-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.9s 1 normal forwards;
}

	.for_sp{display: none !important;}
	.for_tab{display: none !important;}
	.for_nw{display: none !important;}
	.tab .for_pcnotab { display: none !important; }
	.tab .for_tab { display: inline !important; }
	body { font-size: 15px; line-height: 28px; }
	.wrap { position: relative; width: 100%; overflow: hidden; }

	#fnav { height: 100px; width: 100%; position: fixed; top:-100px; transition:0.3s;
		 z-index: 8000; background: #ffffff;  }
	#fnav.show { top:0; }
	header#header { width: 100%; height: 100px; position: fixed; z-index: 1000; background: #ffffff;
		 transition:0.3s; top:0; }
	header#header #head_top { background: #e7edeb; width: 100%; height: 40px; }
	header#header #head_top ul { justify-content:flex-end; line-height: 40px; }
	header#header #head_top ul li a { padding: 0 12px 0 25px; background: url(../images/icon_nw.svg) right center no-repeat; }
	header#header h1 a { width:255px; height: 75px; /*overflow: hidden; */
		display: block; padding-top: 40px;
		background: url(../images/logo.svg) left top no-repeat; background-size: contain; }
	header#header h1 a span { font-size: 13px; line-height: 15px; transition:0.3s; color: #427464;
		 display: block; }
	header#header h1 a span:first-child { display: none; }
	header#header.scroll h1 a span { opacity: 0; }
	#headmain { height: 100px; position: relative; display: flex; justify-content: space-between;
		 align-items:center; }
	.cnav {  height: 100px;  }
	.cnav .mainw { display: flex; justify-content: space-between; align-items:center; }

	.navmain.mainw { justify-content: space-between; align-items:center;
		margin: 8px auto; }
	/*nav.cnav { width: 800px; padding-top: 10px; }*/
	.navmain nav ul { justify-content: flex-end; align-items:center; width: auto; flex-wrap: wrap; }
	/*.navmain nav ul li { width: auto; }*/
	.navmain nav ul a { display: block; padding: 0 13px; line-height: 24px;
		text-align: center; font-size: 17px; position: relative; font-weight: bold; }
	.navmain nav ul a.nw { background: url(../images/icon_nw.svg) right 20px center no-repeat; padding: 0 35px 0 13px; }
	.navmain nav ul a:before { content: ""; width: 1px; height: 14px; position: absolute; background: #E2E8E6;
		right: 0; top:50%; margin-top: -7px; }
	.navmain nav ul li:last-child a:before { background: none; }
	.navmain nav ul a:after { content: ""; width: 0px; height: 1px; background: #047563;
		position: absolute; left: 0; bottom: -5px; transition:0.3s; }
	.navmain nav ul a:hover { opacity: 1; }
	.navmain nav ul a:hover:after,.navmain nav ul a.active:after { width: 100%; }
	.navmain nav ul a span { display: block; font-family: Questrial; color: #047563; font-size: 10px;
		 font-weight: normal; }



/*footer#footer*/
	footer#footer { width: 100%; position: relative; background: #03584A;
		color: #ffffff; }
	footer#footer #footnav {   }
	footer#footer #footnav ul { padding: 0 40px; display: flex; justify-content: center; }
	footer#footer #footnav li a { font-size: 16px; display: block; padding: 0 12px; position: relative;
		line-height: 45px; color: #ffffff; }
	footer#footer #footnav li a.nw { background: url(../images/icon_nw_on.svg) right 20px center no-repeat; padding: 0 35px 0 12px; }
	footer#footer #footnav li a:after { content: ""; position: absolute; top:50%; margin-top: -9px; right: 0;
		width: 1px; height: 18px; background: #ffffff; }
	footer#footer #footnav li:last-child a:after { background: none; }
	footer#footer .footmain { flex-wrap:wrap; justify-content:center; align-items: center; margin: 40px auto 20px; }
	footer#footer h2 { margin-bottom: 25px; }
	footer#footer h2 a { width:255px; height: 38px; text-indent: -10000px; overflow: hidden; display: block;
		background: url(../images/logo_foot.svg) left top no-repeat; background-size: contain;
		margin-right: 15px; }
	footer#footer address { font-style: normal; font-size: 16px; line-height: 28px; }

	footer#footer .copy { text-align: center; font-size: 13px;  }

	footer#footer .footbn { margin-bottom: 50px; }
	footer#footer .footbn .cflex { justify-content:center; gap: 10px; }
	footer#footer .footbn .cflex li { width: 260px; }
	footer#footer .footbn .cflex li img { width: 100%; }



/*pagetop*/
	#page-top { position: fixed; bottom: 20px; right: 50%; margin-right: -650px; z-index: 3000; }
	#page-top a { background: #E6E6E6;
		text-align: center; display: block; width: 65px; height: 65px;
		position: relative; }
	#page-top a:before { content: ""; position: absolute; top:0; left: 0; width: 65px; height: 65px;
		background: url(../images/icon_pagetop.svg) center center no-repeat; opacity: 1; transition: 0.3s; }
	#page-top a:after { content: ""; position: absolute; top:0; left: 0; width: 65px; height: 65px;
		background: url(../images/icon_pagetop_on.svg) center center no-repeat; opacity: 0; transition: 0.3s; }
	#page-top a:hover { /*background: linear-gradient(to right top, #709e71, #3b6859);*/ opacity: 1;
		background-position: top -5px center; background-color: #6EBC68; }
	#page-top a:hover:before { top:-5px; opacity: 0; }
	#page-top a:hover:after { top:-5px; opacity: 1; }
	#page-top.stop { position: absolute; bottom: 200px; }


/*common*/
	.mainw,.mainw_pc { width: 1200px; margin: 0 auto; }
	.w1100 { width: 1100px; margin: 0 auto; }
	.w1000 { width: 1000px; margin: 0 auto; }
	.w900 { width: 900px; margin: 0 auto; }
	.w800 { width: 800px; margin: 0 auto; }
	.w700 { width: 700px; margin: 0 auto; }
	.anchor { margin-top: -100px; padding-top: 100px; }
	.cflex { display: flex; }
	article { padding-top: 100px; }
	p { font-size: 15px; line-height: 28px; }
	.img100 { width: 100%; }
	.img100 img { width: 100%; }
	.shadowbox {background: #FFFFFF; border-radius: 10px; box-shadow: 5px 5px rgba(196,196,196,0.8);
		padding: 70px 50px; }
	.green { color: #047563; }
	.red { color: #9B2B31; }
	ul.bcl { padding: 13px 0; display: flex; }
	ul.bcl li { position: relative; padding-right: 20px; font-size: 13px; }
	ul.bcl li a { text-decoration: underline; color: #ff6a00; font-size: 13px; }
	ul.bcl li:after { content: ">"; color: #ababab; position: absolute; right: 3px; }
	ul.bcl li:last-child:after { content: ""; }
	#mv { width: 100%; max-width: 100%; position: relative;
		height: 300px; /*margin-top: 140px;*/ }
	#mv h2 { width: 1200px; height: 300px; margin: 0 auto;
		text-indent: -10000px; overflow: hidden; }

	/*p.lead { font-size: 16px; line-height: 26px; text-align: center; margin: 0 0 20px; }*/
	.lead { text-align: center; margin-bottom: 15px; font-size: 16px; }
	/*.lead h4 { font-size: 20px; text-align: center; margin-bottom: 5px; line-height: 34px; }*/
	.lead p { font-size: 16px; line-height: 30px; text-align: center; }
	ul.noteul li { padding-left: 1em; text-indent: -1em; font-size: 14px; line-height: 20px; }

	a.tb { text-decoration: underline; color: #427464; padding-right: 18px;
		background: url(../images/icon_nw.svg) right center no-repeat; }

	h3.ch3 { margin-bottom: 30px;
		position: relative; line-height:48px; }
	h3.ch3 span.ja { font-size: 28px; font-weight: bold; display: block; color: #232323;
		line-height: 42px; text-align: center; }
	h3.ch3 span.ja:before { content: ""; width: 8px; height: 20px; background: url(../images/obj_ttl.svg) center center no-repeat;
		display: inline-block; margin-right: 18px; }
	h3.ch3 span.ja:after { content: ""; width: 8px; height: 20px; background: url(../images/obj_ttl.svg) center center no-repeat;
		display: inline-block; margin-left: 18px; }
	h3.ch3 span.en { font-size: 14px; display: block; font-family: "Questrial"; color: #047563; text-align: center; }
	h3.ch3 span.for_sp { display: none; }


	h4.ch4 { font-size: 32px; text-align: left; position: relative; /*font-weight: bold;*/
		margin: 0 0 45px; color: #427464; background: url(../../images/bg_cb.jpg) repeat;
		border-radius: 10px 10px 0 0; padding: 20px; line-height: 1.2; }
	h4.ch4:after { content: ""; width: 100%; height: 3px; position: absolute; bottom: 0; left: 0;
		background: url(../../images/line_grade.svg) left center no-repeat; background-size: 100% auto; }
	.cb h4.ch4 { background-image: none; background-color: #ffffff; }

	h4.ch4_2 { font-size: 22px; text-align: left; position: relative; /*font-weight: bold;*/
		margin: 0 0 10px; color: #427464; border-bottom: #427464 2px solid; padding-bottom: 10px; }

	h5.ch5 { font-size: 28px; padding: 0 0 20px 35px; position: relative; font-weight: bold; margin-bottom: 25px;
		background: url(../images/icon_list.png) left top 3px no-repeat; border-bottom: #d9d9d9 1px solid; }
	h5.ch5 span { font-size: 18px; }

	.cmenu { width: 100%; position: relative; background: #edf3f2; padding: 25px 0; display: flex;
		flex-wrap: wrap; justify-content:center; }
	.cmenu ul {  }
	.cmenu li { position: relative; margin-right: 15px; }
	.cmenu li a { display: block; position: relative; line-height: 21px; font-size: 16px;
		border-bottom: rgba(26,42,32,0.05) 2px solid; text-align: center;
		background: url(../images/icon_cmenu.svg) right 24px center no-repeat #ffffff;
		width: 300px; height: 80px; padding-top: 15px; border-radius: 5px; }
	.cmenu li a:hover,.cmenu li.active a { /*border-bottom: #ffffff 2px solid;*/ opacity: 1;
		background-position: right 24px top 40px; }
	.cmenu li:last-child { margin-right: 0; }

	/*section .bx-wrapper .bx-viewport { left:0; }*/
	/*cb...color box*/
	.cb { background: url(../images/bg_cb.jpg) repeat; }
	.cb2 { background: url(../images/bg_cb2.jpg) repeat; }
	/*.bgw { background: #ffffff; }*/

	/*bt...border top*/
	.bt { border-top: #e0e0e0 1px solid; padding-top: 30px; }
	/*bb...border bottom*/
	/*.bb { width: 100%; box-shadow: 2px 2px 5px #cccccc; padding-bottom: 15px; margin-bottom: 70px; }*/
	/*cbd...common border*/
	.cbd { height: 15px; width: 100%; background:#f2f2f2; }

	.cbtn { font-size: 15px; display: block; text-align: left; line-height: 43px; color: #427464;
		  width: 160px; height: 45px; position: relative; overflow: hidden; border-radius: 5px;
		border:#427464 1px solid; padding-left: 15px; background: #ffffff; }
	.cbtn:after { content: ""; width: 20px; height: 20px; position: absolute; z-index: 2; color: #ffffff;
		right:10px; top:50%; margin-top: -10px; background: url(../images/icon_cbtn.svg) center center no-repeat #427464;
		text-align: center; line-height: 20px;
		transition:0.3s; border-radius: 10px; }
	.cbtn:hover { opacity: 1; color: #ffffff; background: #427464; }
	.cbtn:hover:after { right: 5px; background: url(../images/icon_cbtn_on.svg) center center no-repeat #ffffff; color:  #427464; }

	.btn_pdf { width: 200px; height: 48px; line-height: 44px; text-align: center; color: #ffffff; position: relative;
		background: #427464; border-radius: 10px; margin: 0 auto; display: block; border:#427464 2px solid; }
	.btn_pdf:before { content: ""; width: 28px; height: 28px; background: url(../images/icon_pdf.svg) center center no-repeat;
		position: absolute; right: 12px; top:50%; margin-top: -14px; transition: 0.3s; }
	.btn_pdf:after { content: ""; width: 28px; height: 28px; background: url(../images/icon_pdf_on.svg) center center no-repeat;
		position: absolute; right: 12px; top:50%; margin-top: -14px; transition: 0.3s; opacity: 0; }
	.btn_pdf:hover { background: #ffffff; color: #427464; opacity: 1; }
	.btn_pdf:hover:before { opacity: 0; }
	.btn_pdf:hover:after { opacity: 1; }



	table.ctable { border-collapse:collapse; width: 100%; }
	/*table.ctable th,table.ctable td { font-size: 15px; border-bottom: #d1d1d1 1px solid;
		padding: 15px 0; }*/
	table.ctable th { background: url(../images/bg_cb.jpg) repeat; color: #437665; text-align: center; height: 60px;
		 line-height: 60px; border-right: #E4E0C5 1px solid; }
	table.ctable tr th:first-child { border-radius: 10px 0 0 0; }
	table.ctable tr th:last-child { border-radius: 0 10px 0 0; }
	table.ctable td { text-align: left; border-bottom: #BFC4C1 1px dashed; vertical-align: middle;
		padding: 20px 25px; border-right: #BFC4C1 1px dashed; }
	/*table.ctable th,table.ctable td { border-right: #d1d1d1 1px solid; }*/
	table.ctable th:first-child,table.ctable td:first-child { padding-left: 0; }
	table.ctable th:last-child,table.ctable td:last-child { border-right: none; }
	table.ctable td a { text-decoration: underline; color: #1B6F61; }

	table.ctable2 { border-collapse:collapse; width: 100%;; border-top: #bfc6c3 1px solid; }
	/*table.ctable2 th,table.ctable2 td { font-size: 15px; border-bottom: #d1d1d1 1px solid;
		padding: 15px 0; }*/
	table.ctable2 th { background: #e3e8e6; text-align: center; vertical-align: middle; }
	table.ctable2 td { text-align: left vertical-align: middle;
		padding: 20px 25px; }
	table.ctable2 th,table.ctable2 td { border-bottom: #bfc6c3 1px solid; }
	/*table.ctable2 th:first-child,table.ctable2 td:first-child { padding-left: 0; }*/
	table.ctable2 th:last-child,table.ctable2 td:last-child { border-right: none; }
	table.ctable2 td a { text-decoration: underline; color: #427464; }


	ul.cul { text-align: left; font-size: 16px; line-height: 30px; padding-left: 1em; }
	ul.cul li { padding-left: 1em; text-indent: -0.8em; /*list-style: disc;*/ }
	ul.cul li:before { content: "●"; color: #427464; display: inline-block; font-size: 10px;
		padding-right: 0.5em; }
	ul.cul li.note:before { content: ""; }

	dl.cdl { text-align: left; font-size: 16px; line-height: 30px; padding-left: 1em; }
	dl.cdl dt { font-size: 18px; }
	dl.cdl dd { padding-left: 1em; text-indent: -0.8em; /*list-style: disc;*/ }
	dl.cdl dd:before { content: "●"; color: #af8242; display: inline-block; font-size: 10px;
		padding-right: 0.5em; }

	p.note { font-size: 16px; line-height: 26px; padding-left: 1em; text-indent: -1em; }


	/*cdl...common dl*/
	/*ul.bn { text-align: center; margin: 60px auto 110px; }
	ul.bn li { float: left; }
	ul.bn li:last-child { float: right; }
	ul.bn li img { width: 550px; }*/




}
@media (min-width: 751px) and  (max-width:1470px){ #page-top { right: 20px; left: auto; margin-right: 0; } }

@media (min-width: 751px) and  (max-width:1245px){
	.for_nw{display: inline !important;}

	.mainw,.mainw_pc,h2.mainh2 { width: 96%; margin-left: auto; margin-right: auto; }
	.mainw.anchor,.mainw_pc.anchor { padding: 100px 2vw 0; }
	/*.navmain nav { width: 100%; }
	.navmain nav ul { width: 100%; }*/
	/*#contact ul {  padding-left: 0; }
	#contact ul li, #contact ul li a { width: 48vw; }
	#contact ul li a {  padding-top: 20px; }
	#contact ul li a span.txt { line-height: 30px; }
	#contact .m_contact {  margin-right: 100px; }
	#contact .m_contact a { width: 30vw; }*/


}
@media (min-width: 751px) and  (max-width:1185px){
}
@media (min-width: 751px) and  (max-width:1145px){
	.w1100 { width: 100%; padding: 0 2vw; }
	.w1100.anchor { padding: 100px 2vw 0; }
}
@media (min-width: 751px) and  (max-width:1110px){
	/*.gnav li a { padding: 0 5px; }*/
}
@media (min-width: 751px) and  (max-width:1045px){
	.w1000 { width: 100%; padding: 0 2vw; }
	.w1000.anchor { padding: 100px 2vw 0; }
	/*header#header { height: 185px; }
	.navmain nav { margin-left: auto; }
	article { padding-top: 185px; }*/
	/*#fnav { height: 135px; top:-135px; }*/
}
@media (min-width: 751px) and  (max-width: 980px){
	/*#fnav { height: 180px; top:-180px; }
	header,#fnav_in { height: 95px; }
	#f_rsv { height: 85px; }*/
}
@media (min-width: 751px) and  (max-width: 940px){
	/*#gnav li,#gnav li a,#fnav .f_gnav li,#fnav .f_gnav li a { height: 35px; line-height: 35px; }*/
	.w900 { padding: 0 2vw; width: 100%; }

}
@media (min-width: 751px) and  (max-width: 900px){
}
@media (min-width: 751px) and  (max-width: 800px){
	/*#fnav_in h2,header#header h1 { margin-top: 10px; }
	#fnav { height: 100px; top:-100px; }
	#fnav_in .mainw,header #headmain.mainw { justify-content:center; }
	.gnav li a { line-height: 45px; }*/
	/*
	header,#fnav_in { height: 135px; }*/
}
	@-moz-keyframes imgfade { 0% { opacity: 0; } 100% { opacity: 1; } }
	@-webkit-keyframes imgfade { 0% { opacity: 0; } 100% { opacity: 1; } }
	@-o-keyframes imgfade { 0% { opacity: 0; } 100% { opacity: 1; } }
	@-ms-keyframes imgfade { 0% { opacity: 0; } 100% { opacity: 1; } }

	@-moz-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-webkit-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-o-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-ms-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }

	/*@-moz-keyframes megadisp { 0% { opacity: 0; margin-top: -25px; } 100% { opacity: 1; margin-top: 0; } }
	@-webkit-keyframes megadisp { 0% { opacity: 0; margin-top: -25px; } 100% { opacity: 1; margin-top: 0; } }
	@-o-keyframes megadisp { 0% { opacity: 0; margin-top: -25px; } 100% { opacity: 1; margin-top: 0; } }
	@-ms-keyframes megadisp { 0% { opacity: 0; margin-top: -25px; } 100% { opacity: 1; margin-top: 0; } }

	@-moz-keyframes megahide { 0% { opacity: 1; margin-top: 0; } 100% { opacity: 0; margin-top: -25px; } }
	@-webkit-keyframes megahide { 0% { opacity: 1; margin-top: 0; } 100% { opacity: 0; margin-top: -25px; } }
	@-o-keyframes megahide { 0% { opacity: 1; margin-top: 0; } 100% { opacity: 0; margin-top: -25px; } }
	@-ms-keyframes megahide { 0% { opacity: 1; margin-top: 0; } 100% { opacity: 0; margin-top: -25px; } }*/

@media (max-width:750px){
	body { font-size: 3.8vw; line-height: 1.5; }
	.mb20 { margin-bottom: 2.6vw !important; }
	.mb25 { margin-bottom: 3.3vw !important; }
	.mb30 { margin-bottom: 4vw !important; }
	.mb40 { margin-bottom: 5.3vw !important; }
	.mb50 { margin-bottom: 6.6vw !important; }
	.mb60 { margin-bottom: 8vw !important; }
	.mb70 { margin-bottom: 9.3vw !important; }
	.mb80 { margin-bottom: 10.6vw !important; }
	.mb90 { margin-bottom: 12vw; }
	.mb100 { margin-bottom: 13.3vw !important; }
	.mb120 { margin-bottom: 16vw !important; }
	.pt50 { padding-top: 6.6vw !important; }
	.ls-1 { letter-spacing: -1px; }
	.ls-2 { letter-spacing: -2px; }
	.ls-3 { letter-spacing: -3px; }
	.ls-4 { letter-spacing: -4px; }
	.fs14 { font-size: 3.4vw; }
	.fs16 { font-size: 3.7vw; }
	.fs24 { font-size: 4vw; }
	.fs26 { font-size: 5vw; }


	body { width:100%; font-size: 4vw; line-height: 7vw; }
	.wrap { width: 100%; overflow: hidden;}
	.for_pc { display: none !important; }
	.for_tab{display: none;}
	.for_pcnotab { display: none !important; }
	.for_nw{display: none !important;}


	.cf_s:before,.cf_s:after { content:""; display:table; }
	.cf_s:after { clear:both; }
	.cf_s { zoom:1; }

.showup {
	opacity: 0;
	transition: 1s;
	transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw);
}
.upview {
	-moz-animation: showup 1s linear 0s 1 normal forwards;
	-webkit-animation: showup 1s linear 0s 1 normal forwards;
	-o-animation: showup 1s linear 0s 1 normal forwards;
	-ms-animation: showup 1s linear 0s 1 normal forwards;
}

	#fnav { width:100%; position:fixed; left:0; top:0; z-index:20000; border-bottom: #d1d1d1 1px solid; }
	#head_spnav { width:100%; height:18vw; display: flex; position: relative; background: #ffffff;
		justify-content: space-between; align-items:center; z-index: 3000;
		font-weight: bold; }
	#head_spnav h1 { width: 59vw; height: 18vw; /*text-indent: -10000px; overflow: hidden;*/
		background: url(../images/logo.svg) center top no-repeat; background-size: contain;
		margin: 2vw 0 0 4vw; }
	#head_spnav h1 a { display: block; width: 100%; height: 18vw; padding-top: 9vw; }
	#head_spnav h1 a span { font-size: 3.2vw; line-height: 3.6vw; transition:0.3s; color: #047563;
		 display: block; }
	#head_spnav h1 a span:first-child { display: none; }

	#head_spnav #menu_sp { width:18vw; height:18vw; color: #333232; padding-top: 4vw;
		position: relative; font-size: 3.2vw; display: block;
		text-align: center; }
	#head_spnav #menu_sp div { width: 6vw; height: 4.4vw; margin: 1vw auto; position: relative; }
	#head_spnav #menu_sp span{ position: absolute;  display: block; width: 6vw;
		height: 2px;
		background: #41726e; left:0; transform:rotate(0); }
	#head_spnav #menu_sp div span:first-child{ top:0; }
	#head_spnav #menu_sp div span:nth-child(2){ top:2vw; }
	#head_spnav #menu_sp div span:nth-child(3){ top:4vw; }
	#head_spnav #menu_sp p { display: block; text-align: center; font-weight: normal;  }
	/*#head_spnav #menu_sp span.txt { text-align: center; height: auto; width: 100%;
		background: none; }*/

	.sp_yoko #fnav,.sp_yoko #head_spnav,.sp_yoko #head_spnav ul,.sp_yoko #head_spnav ul li a,
	.sp_yoko #head_spnav #menu_sp
	{ height: 15vh; }

	#header { display: none; position: fixed; left: 0; top: 18vw; width: 100%; z-index: 2000;
		text-align: center; height: 100%; overflow: auto; background: #ffffff;
		font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
		 }
	#header .inner { display: flex; flex-direction: column-reverse; }
	#header nav {  width: 100%; margin: 6vw 0 2vw; }
	/*#header ul.f_gnav,#header dl { width: 86vw; margin: 0 auto; border-top: #ffa364 1px solid; }*/
	#header nav ul li { border-bottom: #cccccc 1px solid;
		line-height: 12vw; width: 100%; font-size: 3.7vw;/* color: #ffffff;*/ }
	#header nav ul li:last-child { border-bottom: none; }
	#header nav ul li a { display: block; width: 100%; line-height: 12vw; text-align: left; position: relative; }
	#header nav ul li a span { display: none; }
	#header nav ul li a:after { content: ""; width: 3.4vw; height: 3.4vw; position: absolute; z-index: 2; color: #ffffff;
		right:4vw; top:50%; margin-top: -1.7vw; background: url(../images/icon_cbtn.svg) center center no-repeat #427464;
		text-align: center; line-height:3.4vw; background-size: contain;
		border-radius: 1.7vw; }
	#header nav ul li a.nw { background: url(../images/icon_nw.svg) right 45vw center no-repeat; background-size: 2vw auto; }
	#header nav ul li a.nw:after { background: none; }
	#header #head_top { padding: 8vw 0; background: #e7edeb; }
	#header #head_top ul { display: flex; flex-wrap:wrap; }
	#header #head_top ul li { width: 50%; }
	#header #head_top ul li a { line-height: 9.6vw; text-align: left; position: relative;
		display: block; }
	#header #head_top ul li a:after { content: ""; width: 3vw; height: 9.6vw; display: inline-block;
		background: url(../images/icon_nw.svg) center center no-repeat; background-size: 3vw auto;
		margin-left: 1vw; line-height: 9.6vw; position: absolute; /*right: 0; top:0;*/ }

	/*.tel { text-align: center; width: 62vw; height: 10vw; margin: 0 auto 6vw;
		 background: url(../images/tel.svg) center center no-repeat; background-size: contain;
		 text-indent: -10000px; overflow: hidden; }
	.tel a { width: 62vw; height: 10vw; display: block; }*/



/*footer#footer*/
	#page-top { width: 14vw; height: 14vw; position: fixed; right: 2vw; bottom: 2vw;
		z-index: 3000; }
	#page-top a { display: block; width: 14vw; height: 14vw; background: url(../images/icon_pagetop.svg) center center no-repeat #E6E6E6; text-align: center; position: relative; background-size: 10vw auto; }
	#page-top.stop { position: absolute; bottom: 60vw; }

	footer#footer { text-align: center; position: relative; background: #03584A;
		color: #ffffff; padding: 10vw 0; }
	/*footer#footer .mainw { width: 74vw; }*/
	footer#footer h2 a { width: 59vw; height: 9vw; text-indent: -10000px; overflow: hidden; display: block;
		background: url(../images/logo_foot.svg) left top no-repeat; background-size: contain;
		margin-bottom: 4vw; }
	footer#footer .address { width: 100%; margin: 0 auto; }
	footer#footer address{ font-style: normal; margin-bottom: 4vw; }
	footer#footer address p { font-size: 3.7vw; line-height: 6vw; text-align: left; }
	footer#footer .h2wrp { height: auto; }
/*	footer .footmain { padding-bottom: 8vw; }*/

	footer#footer .copy { font-size: 3.2vw; text-align: center;
		margin: 0 auto; }

	footer#footer .footbn { margin-bottom: 8vw; }
	footer#footer .footbn .cflex { display: flex; flex-wrap: wrap; justify-content:center; gap: 1%; }
	footer#footer .footbn .cflex li { width: 49%; }
	footer#footer .footbn .cflex li img { width: 100%; }


/*common*/
	.wrap { position: relative; }
	.mainw,.w1100,.w1000,.w900,.w800,.w700 { width: 88vw; margin: 0 auto; padding: 0; }
	.anchor { margin-top: -30vw; padding-top: 30vw; }
	article { padding-top: 18vw; }
	p { font-size: 4vw; line-height: 7vw; }
	.shadowbox { background: #FFFFFF; border-radius: 10px; box-shadow: 5px 5px rgba(196,196,196,0.8);
		padding: 6vw; }
	.green { color: #047563; }
	.red { color: #9B2B31; }
	ul.bcl { padding: 2vw 0; display: flex; flex-wrap:wrap; }
	ul.bcl li { position: relative; padding-right: 6vw; font-size: 3.4vw; }
	ul.bcl li a { text-decoration: underline; color: #ff6a00; }
	ul.bcl li:after { content: ">"; color: #ababab; position: absolute; right: 1vw; }
	ul.bcl li:last-child:after { content: ""; }
	#mv { position: relative; width: 100%; height: 44vw;/* margin-top: 25vw;*/ }
	#mv h2 { position: absolute; top:0; text-align: center; width: 100vw; text-indent: -10000px;
		 height: 44vw; overflow: hidden; }
	/*p.lead { text-align: center; margin: 0 auto 6vw; }*/
	.note { font-size: 3.4vw; line-height: 4.6vw; padding-left: 1em; text-indent: -1em; }
	ul.noteul li { padding-left: 1em; text-indent: -1em; font-size: 3.4vw; line-height: 4.6vw; }

	.lead { text-align: left; margin-top: 6vw; }
	/*.lead h4 { font-size: 5vw; text-align: center; margin-bottom: 2vw; line-height: 6vw; }*/
	.lead p { font-size: 3.7vw; line-height: 6vw; text-align: center; }

	a.tb { text-decoration: underline; color: #427464; padding-right: 3vw;
		background: url(../images/icon_nw.svg) right center no-repeat; background-size: 2vw auto; }


	h3.ch3 { width: 100%; margin: 0 auto 6vw;
		position: relative; line-height:8vw; }
	h3.ch3 span.ja { font-size: 6vw; font-weight: bold; display: flex; align-items: center; color: #232323;
		line-height: 8vw; text-align: center; justify-content: center; flex-wrap: wrap; padding: 0 4vw;
		/*background: url(../images/obj_ttl.svg) left center no-repeat,url(../images/obj_ttl.svg) right center no-repeat;
		background-size: 2vw auto,2vw auto;*/ }
	h3.ch3 span.ja:before { content: ""; width: 2vw; height: 6vw; background: url(../images/obj_ttl.svg) center center no-repeat;
		display: inline-block; margin-right: 2vw; background-size: 2vw auto; }
	h3.ch3 span.ja:after { content: ""; width: 2vw; height: 6vw; background: url(../images/obj_ttl.svg) center center no-repeat;
		display: inline-block; margin-left: 2vw; background-size: 2vw auto; }
	h3.ch3 span.ja.long { font-size: 6vw; font-weight: bold; display: flex; align-items: center; color: #232323;
		line-height: 8vw; text-align: center; justify-content: center; flex-wrap: wrap; padding: 0 4vw;
		background: url(../images/obj_ttl.svg) left center no-repeat,url(../images/obj_ttl.svg) right center no-repeat;
		background-size: 2vw auto,2vw auto; }
	h3.ch3 span.ja.long:before,h3.ch3 span.ja.long:after { background: none; width: 0; margin-right: 0; margin-left: 0; }
	h3.ch3 span.en { font-size: 3.4vw; display: block; font-family: "Questrial"; color: #047563; text-align: center; }
	h3.ch3 span.ja span { display: inline; }


	h4.ch4 { font-size: 6vw; text-align: left; position: relative; /*font-weight: bold;*/
		margin: 0 0 8vw; color: #427464; background: url(../../images/bg_cb.jpg) repeat;
		border-radius: 10px 10px 0 0; padding: 4vw; line-height: 1.2; }
	h4.ch4:after { content: ""; width: 100%; height: 3px; position: absolute; bottom: 0; left: 0;
		background: url(../../images/line_grade.svg) left center no-repeat; background-size: cover; }
	.cb h4.ch4 { background-image: none; background-color: #ffffff; }

	h4.ch4_2 { font-size: 5vw; text-align: left; position: relative; /*font-weight: bold;*/
		margin: 0 0 2vw; color: #427464; border-bottom: #427464 2px solid; padding-bottom: 2vw; }

	h5.ch5 { font-size: 5vw; padding: 0 0 2vw 6vw; position: relative; font-weight: bold; margin-bottom: 4vw;
		background: url(../images/icon_list.png) left top 1.6vw no-repeat; border-bottom: #d9d9d9 1px solid;
		background-size: 3.7vw auto; }
	h5.ch5 span { font-size: 3.7vw; }

	.cmenu { width: 100%; position: relative; background: #edf3f2; padding: 6vw;  }
	.cmenu ul {  }
	.cmenu li { position: relative; margin-bottom: 2vw; }
	.cmenu li a { display: block; position: relative; line-height: 4.4vw; font-size: 4vw;
		border-bottom: rgba(26,42,32,0.05) 2px solid; text-align: left;
		background: url(../images/icon_cmenu.svg) right 4vw center no-repeat #ffffff;
		width: 86vw; height: 14vw; padding: 2vw 8vw 2vw 6vw; border-radius: 5px; }
	.cmenu li a.l1,.cmenu li a.l1_sp { line-height: 10vw; }
	/*.cmenu li.active a { opacity: 1;
		background-position: right 24px top 40px; }*/
	.cmenu li:last-child { margin-bottom: 0; }

	/*cb...color box*/
	.cb { background: url(../images/bg_cb.jpg) repeat; }
	.cb2 { background: url(../images/bg_cb2.jpg) repeat; }
	/*.bgw { background: #ffffff; }*/


	/*.cb h3 { height: 17.6vw; background: url("../images/cb_h3_sp.svg") center bottom no-repeat;
		font-family: "notoserif"; font-size: 6vw; line-height: 6vw; text-align: center;
		margin-bottom: 8vw; background-size: 37vw auto; }
	.cb h3 span { color: #603813; font-size: 3.2vw; }*/
	/*.cb2 { background: #F4F1E9; border-top: #E8E3D3 10px solid; }*/
	.bt { border-top: #e0e0e0 1px solid; padding-top: 4vw; }
	/*.bb { width: 100%; box-shadow: 2px 2px 5px #cccccc; padding-bottom: 4vw; margin-bottom: 13vw; }*/
	/*cbd...common border*/
	.cbd { height: 2.4vw; width: 100%; background: url(../images/c_line.jpg) left top repeat-x;
		background-size: auto 2.4vw; }

	.cbtn { font-size: 4vw; display: block; text-align: center; line-height: 8vw; border:#427464 1px solid;
		  width: 40vw; height: 8vw; position: relative; overflow: hidden; border-radius: 5px;
		background: #ffffff; color: #427464; }
	.cbtn:after { content: ""; width: 3.4vw; height: 3.4vw; position: absolute; z-index: 2; color: #ffffff;
		right:2vw; top:50%; margin-top: -1.7vw; background: url(../images/icon_cbtn.svg) center center no-repeat #427464;
		text-align: center; line-height: 3.4vw; background-size: 3.4vw auto; border-radius: 1.7vw; }

	.btn_pdf { width: 100%; height: 12vw; line-height: 12vw; text-align: center; color: #ffffff; position: relative;
		background: url(../images/icon_pdf.svg) right 4vw center no-repeat #427464; border-radius: 10px;
		margin: 0 auto; display: block; background-size: 6vw auto; font-size: 4vw; }


	table.ctable { border-collapse:collapse; width: 100%; }
	table.ctable th,table.ctable td { font-size: 3.7vw;
		padding: 2vw 0; display: block; }
	table.ctable tr { display: block; margin-bottom: 6vw; }
	table.ctable th { /*width: 14vw;*/ background: url(../images/bg_cb.jpg) repeat; color: #437665; font-weight: bold;
		text-align: center;  }
	table.ctable td { text-align: left; /*padding: 0 2vw;*/ border-bottom: #BFC4C1 1px dashed; }
	table.ctable td a { text-decoration: underline; color: #1B6F61; }

	table.ctable2 { border-collapse:collapse; width: 100%; border-top: #d1d1d1 1px solid; }
	table.ctable2 th,table.ctable2 td { font-size: 3.7vw; border-bottom: #d1d1d1 1px solid;
		padding: 2vw 0; display: block; }
	table.ctable2 th { /*width: 14vw;*/ background: #e6ecea; font-weight: bold;
		text-align: center;  }
	table.ctable2 td { text-align: left; padding: 0 2vw; }
	table.ctable2 td a { text-decoration: underline; color: #427464; }


	ul.cul { text-align: left; font-size: 3.7vw; line-height: 6vw; padding-left: 1em; }
	ul.cul li { padding-left: 1em; text-indent: -0.8em;/* list-style: disc;*/ }
	ul.cul li:before { content: "●"; color: #427464; display: inline-block; font-size: 2vw;
		padding-right: 0.5em; }




	/*cdl...common dl*/
	dl.cdl { text-align: left;  font-size: 3.7vw; line-height: 6vw; padding-left: 1em; }
	dl.cdl dt { font-size: 4vw; }
	dl.cdl dd { padding-left: 1em; text-indent: -0.8em; /*list-style: disc;*/ }
	dl.cdl dd:before { content: "●"; color: #af8242; display: inline-block; font-size: 2vw;
		padding-right: 0.5em; }
	/*.cdl {  width: 90vw; margin: 3vw auto; }
	.cdl dt { text-align: center; border-bottom: #e0e0e0 1px solid;
		min-height: 8vw; line-height: 8vw; font-size: 4.2vw; background: #eeeeee; text-align: left;
		padding-left: 2vw; }
	.cdl dt:first-child { border-top: #80ad1f 2px solid; }
	.cdl dd { border-bottom: #e0e0e0 1px solid; min-height: 8vw; line-height: 8vw;
		font-size: 4.2vw; padding: 2vw; text-align: left; }

	ul.bn { text-align: center; margin: 13vw auto 20vw; }
	ul.bn li { margin-bottom: 2.6vw; }*/

	@-moz-keyframes txtfade { 0% { opacity: 0; transform: translateY(4vw); } 100% { opacity: 1; transform: translateY(0); } }
	@-webkit-keyframes txtfade { 0% { opacity: 0; transform: translateY(4vw); } 100% { opacity: 1; transform: translateY(0); } }
	@-o-keyframes txtfade { 0% { opacity: 0; transform: translateY(4vw); } 100% { opacity: 1; transform: translateY(0); } }
	@-ms-keyframes txtfade { 0% { opacity: 0; transform: translateY(4vw); } 100% { opacity: 1; transform: translateY(0); } }


}

