@charset "UTF-8";
/* CSS Document */

/*-----------------------------------------------------
Reset
----------------------------------------------------- */
html, body, div, span,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin:0; padding:0; border:0; font-size:100%; font:inherit; vertical-align:baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display:block;
}

h1,h2,h3,h4,p,a,span,small{ font-family: "Noto Sans JP", sans-serif; }
ol, ul { list-style:none; line-height:1; }

* { margin:0; padding:0; }
img { max-width:100%; width:100%; height:auto; vertical-align:top; image-rendering:-webkit-optimize-contrast; }

* { min-height:0; min-width:0; }

button { margin:0; padding:0; outline:0; border:0; border-radius:0; color:inherit; vertical-align:middle; text-align:inherit; font: inherit; -webkit-appearance:none; appearance:none; }

.pc{ display:block; }
.sp{ display:none; }

@media screen and (min-width:769px){
	a[href*="tel:"] {
		pointer-events:none;
		cursor:default;
		text-decoration:none;
	}
}
@media only screen and (max-width: 768px) {
	.pc{ display:none; }
	.sp{ display:block; }
}


/*-----------------------------------------------------
header
----------------------------------------------------- */
header{ background:url(../images/green_bg.png) repeat center / 23px; }
header .kv{ position:relative; }
header .kv::after{ content:""; background:#2dc024; height: calc(tan(60deg) * 34px / 2); width:55px; clip-path:polygon(0 0, 100% 0, 50% 100%); position:absolute; left:0; right:0; bottom:-25px; margin:auto; }
header .kv h1{ padding-bottom:10px; }

@media only screen and (max-width: 768px) {
}

/*-----------------------------------------------------
東海ブロックTOP
----------------------------------------------------- */
.main_wrap{ background:#ddf5dc; }
.main_wrap .fp_menu{ padding:55px 0 100px; }
.main_wrap .fp_menu h2{ font-size:26px; font-weight:700; display:flex; align-items:center; justify-content:center; gap:10px; margin-bottom:50px; }
.main_wrap .fp_menu h2::before{ content:""; width:15px; height:30px; background:url(../images/catch_l.svg) no-repeat top center / 100%; }
.main_wrap .fp_menu h2::after{ content:""; width:15px; height:30px; background:url(../images/catch_r.svg) no-repeat top center / 100%; }
.main_wrap .fp_menu ul{ width:min(900px,80%); margin:0 auto; display:flex; justify-content:space-between; flex-wrap:wrap; row-gap:30px; }
.main_wrap .fp_menu ul li{ width:48%; }

.main_wrap .fp_cnt > li{ padding-bottom:100px; background:#dcebf9; }
.main_wrap .fp_cnt > li:first-of-type{ background:#ddf5dc; }
.main_wrap .fp_cnt.fp_cnt_btm > li{ padding-bottom:100px; background:#dcebf9; }
.main_wrap .fp_cnt > li div{ position:relative; }
.main_wrap .fp_cnt > li div::before,.main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::before{ content:""; width:100%; height:100px; background:url(../images/blue_bg.png) repeat center / 23px; display:block; position:absolute; top:0; left:0; z-index:0; }
.main_wrap .fp_cnt > li div::after,.main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::after{ content:""; background:#00008c; height: calc(tan(60deg) * 34px / 2); width:55px; clip-path:polygon(0 0, 100% 0, 50% 100%); position:absolute; left:0; right:0; top:95px; margin:auto; }
.main_wrap .fp_cnt > li:first-of-type div::before{ height:110px; background:url(../images/green_bg.png) repeat center / 23px; }
.main_wrap .fp_cnt > li:first-of-type div::after{ content:""; background:#2dc024; height: calc(tan(60deg) * 34px / 2); width:55px; clip-path:polygon(0 0, 100% 0, 50% 100%); position:absolute; left:0; right:0; top:105px; margin:auto; }
.main_wrap .fp_cnt > li div picture{ width:min(900px,90%); margin:0 auto; display:block; position:relative; z-index:1; }
.main_wrap .fp_cnt > li:nth-of-type(1) div picture{ padding:7px 0 0; }
.main_wrap .fp_cnt > li:nth-of-type(2) div picture{ padding:13px 0 0; }
.main_wrap .fp_cnt > li:nth-of-type(3) div picture{ padding:23px 0 0; }
.main_wrap .fp_cnt.fp_cnt_btm > li:nth-of-type(1) div picture{ padding:0; top:-41px; }
.main_wrap .fp_cnt ul{ width:min(900px,90%); margin:40px auto 0; display:flex; flex-wrap:wrap; justify-content:space-between; row-gap:25px; }
.main_wrap .fp_cnt ul li{ width:48%; }

.main_wrap .btm_bnr{ background:#fff; padding:80px 0; }
.main_wrap .btm_bnr ul{ width:min(900px,90%); margin:0 auto; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; row-gap:25px; }
.main_wrap .btm_bnr li{ width:49%; }

.main_wrap .btm_catch{ background:#fff; padding:65px 0 35px; }
.main_wrap .btm_catch .logo{ width:218px; margin:0 auto; }
.main_wrap .btm_catch h2{ font-size:40px; font-weight:700; text-align:center; color:#00008c; padding:20px 0 25px; }
.main_wrap .btm_catch .chara{ width:min(885px,90%); margin:0 auto; }
#pagetop{ position:fixed; width:40px; right:30px; bottom:30px; z-index:2; transition:all 0.3s; opacity:0; visibility:hidden; }
#pagetop.fadebtn{ position:fixed; width:40px; right:30px; bottom:30px; z-index:2; opacity:1; visibility:visible; }

@media only screen and (max-width:900px) {
	.main_wrap .fp_menu h2{ font-size:20px; }
	.main_wrap .fp_cnt > li:first-of-type div::before{ height:100px; }
	.main_wrap .fp_cnt > li:first-of-type div::after{ top:95px; }
	.main_wrap .fp_cnt > li div::before, .main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::before{ height:90px; }
	.main_wrap .fp_cnt > li div::after, .main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::after{ top:85px; }
}

@media only screen and (max-width: 768px) {
	.main_wrap .fp_menu h2{ font-size:14px; }
	.main_wrap .fp_menu ul{ flex-direction:column; }
	.main_wrap .fp_menu ul li{ width:100%; }

	.main_wrap .fp_cnt ul{ flex-direction:column; row-gap:40px; }
	.main_wrap .fp_cnt li{ padding-bottom:80px; }
	.main_wrap .fp_cnt ul li{ width:100%; }
	.main_wrap .fp_cnt > li:first-of-type div::before{ height:110px; }
	.main_wrap .fp_cnt > li:first-of-type div::after{ top:105px; }
	.main_wrap .fp_cnt > li div::before, .main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::before{ height:100px; }
	.main_wrap .fp_cnt > li div::after, .main_wrap .fp_cnt.fp_cnt_btm > li:first-of-type div::after{ top:95px; }
	.main_wrap .fp_cnt > li div picture{ width:100%; max-width:300px; margin:0 auto; }
	.main_wrap .fp_cnt > li:nth-of-type(1) div picture{ padding:34px 0 0; }
	.main_wrap .fp_cnt > li:nth-of-type(2) div picture{ padding:22px 0 0; }
	.main_wrap .fp_cnt.fp_cnt_btm > li:nth-of-type(1) div picture{ padding:5px 0 0; top:-4px; }

	.main_wrap .fp_menu ul li{ width:100%; max-width:300px; margin:0 auto; }
	.main_wrap .fp_cnt ul li{ width:100%; max-width:300px; padding:0; margin:0 auto; }
	.main_wrap .btm_bnr ul{ flex-direction:column; }
	.main_wrap .btm_bnr li{ width:100%; max-width:300px; margin:0 auto; }

	.main_wrap .btm_catch .chara{ width:100%; max-width:300px; }
	.main_wrap .btm_catch h2{ font-size:26px; line-height:42px; }
}

/*-----------------------------------------------------
footer
----------------------------------------------------- */
footer{ background:#00008c; padding:40px 0 10px; }
footer .block_logo{ width:min(650px,80%); margin:0 auto; }
footer .tel{ width:min(750px,80%); padding:30px 0 35px; margin:0 auto; }
footer .f_copy{ width:min(750px,80%); padding:0 0 30px; margin:0 auto; }
footer small{ font-size:12px; text-align:center; color:#fff; display:block; }

@media only screen and (max-width: 768px) {
	footer .block_logo{ width:100%; max-width:300px; }
	footer .tel{ width:100%; max-width:300px; }
	footer .f_copy{ width:100%; max-width:300px; }
	footer small{ font-size:11px; line-height:16px; }
}