@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,address,li,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{ width:100%; }
header .h_inner{ height:140px; display:flex; justify-content:center; align-items:center; gap:30px; }
header .h_inner h1{ font-size:30px; font-weight:700; color:#00008c; }
header .h_inner a{ width:200px; }

@media only screen and (max-width: 768px) {
	header .h_inner{ height:90px; flex-direction:column; gap:10px; }
	header .h_inner h1{ font-size:20px; }
}

/*-----------------------------------------------------
岐阜TOP
----------------------------------------------------- */
main .kv{ background-color:#ff6e83; background-image:radial-gradient(circle, #e78f9c 1px, transparent 1px); background-position:0 0; background-size:19px 19px; padding:0 0 78px; position:relative; }
main .kv::after{ content: ""; position: absolute; background: url(../images/kv_mask.png) no-repeat center / 100%; width:32%; max-width:425px; height:90%; right: 0; bottom:0; }
main .kv div{ width:min(900px,90%); margin:0 auto; position:relative; top:-20px; z-index:1; }
main .kv .btn{ width:min(710px,80%); margin:0 auto; display:block; position:relative; top:-20px; z-index:1; }

main .content_wrap{ background:#dcebf9; padding:80px 0; }
main .content_wrap .content_inner{ width:min(900px,90%); margin:0 auto; }
main .content_info{ width:min(900px,90%); margin:0 auto; padding:20px 0 0; }
main .content_info .btn{ width:min(710px,80%); margin:0 auto; display:block; }
main .quote{ font-size:14px; line-height:20px; margin:60px 0 0; }
main .quote.center{ text-align:center; margin:0 0 50px; display:flex; justify-content:center; }
main .quote.center span{ text-align:left; }
main .quote li{ font-size:14px; line-height:20px; display:flex; }
main .quote li::before{ content:"※"; }

main .f_cnt{ background:#fff; padding:20px 0 0; }
main .f_cnt .f_cnt_inner{ width:min(900px,90%); margin:0 auto; }
main .f_cnt h2{ font-size:40px; font-weight:700; text-align:center; color:#00008c; padding:0 0 20px; }
main .f_cnt .f_logo{ width:210px; margin:0 auto 20px; display:block; }

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

@media only screen and (max-width: 768px) {
	main .kv{ padding:20px 0 80px; }
	main .kv::after{ width:55%; height:35%; bottom:unset; top:16%; }
	main .kv div{ top:0; }
	main .kv .btn{ top:0; }

	main .quote.center{ flex-direction:column; gap:2px; }

	main .f_cnt{ padding-top:50px; }
	main .f_cnt h2{ font-size:26px; line-height:42px; }
	main .f_cnt .f_logo{ width:156px; }
}

/*-----------------------------------------------------
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; display:flex; justify-content:space-between; }
footer .tel a:first-of-type{ width:41.5%; }
footer .tel a:last-of-type{ width:45%; }
footer .f_copy{ width:min(750px,80%); padding:0 0 30px; margin:0 auto; }
footer address{ font-size:16px; line-height:26px; text-align:center; color:#fff; margin:8px 0 5px; }
footer .print{ font-size:12px; line-height:16px; width:min(750px,80%); margin:20px auto 10px; color:#fff; }
footer small{ font-size:12px; text-align:center; color:#fff; display:block; }

@media only screen and (max-width: 768px) {
	footer{ padding:40px 0 60px; }
	footer .block_logo{ width:100%; max-width:300px; }
	footer .tel{ width:100%; max-width:300px; flex-direction:column; gap:20px; }
	footer .tel a:first-of-type{ width:94%; }
	footer .tel a:last-of-type{ width:100%; }
	footer .f_copy{ width:100%; max-width:300px; }
	footer address{ font-size:14px; line-height:24px; }
	footer .print{ line-height:20px; margin:0 auto 35px; }
	footer small{ font-size:11px; line-height:16px; }
}