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

:root{
/* color */
--color-Y  :#ffff00;
--color-G  :#52c824;
--color-C  :#0099ff;/* シアン */
--color-B  :#0032a0;
--color-B-L:#b2c4ef;
--color-M  :#e94d6e;/* マゼンタ */
--color-M-D:#d4145a;
--color-aichi     :#33adff;
--color-aichi-L   :#bfe5ff;
--color-aichi-D   :#29a9ff;
--color-gifu      :#f1a74b;
--color-gifu-L    :#fbe9d2;
--color-gifu-D    :#e78e4b;
--color-shizuoka  :#00c8af;
--color-shizuoka-L:#bff1eb;
--color-shizuoka-D:#00c8af;
--color-mie       :#ff6e83;
--color-mie-L     :#ffdbe0;
--color-mie-D     :#ff6e83;
/* font */
--font-sans: "Noto Sans JP", sans-serif;
--font-min : "Noto Serif JP", serif;
}

/*-----------------------------------------------------
Reset
----------------------------------------------------- */
* { margin:0; padding:0; min-height:0; min-width:0;}
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: var(--font-sans); }
ol, ul { list-style:none; line-height:1; }
img{width:100%;max-width:100%;height:auto;vertical-align:top;image-rendering:-webkit-optimize-contrast;display:block;object-fit:cover;}
img[src*=".svg"]{object-fit:contain;}
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; }
a{color: inherit;text-decoration: 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; }
}

body{font-weight: 500;}
body *{box-sizing: border-box;}

.col_area{}
body[area="愛知"] .col_area{color:var(--color-aichi-D);}
body[area="岐阜"] .col_area{color:var(--color-gifu-D);}
body[area="静岡"] .col_area{color:var(--color-shizuoka-D);}
body[area="三重"] .col_area{color:var(--color-mie-D);}

:root{
--font-size-base:16px;
}
@media only screen and (min-width: 769px) {
	:root{
	/* --font-size-base:32px; */
	--font-size-base:16px; 
	}
}
:root{
--font-40:calc(1em * 40 / 16);
--font-38:calc(1em * 38 / 16);
--font-31:calc(1em * 31 / 16);
--font-28:calc(1em * 28 / 16);
--font-26:calc(1em * 26 / 16);
--font-24:calc(1em * 24 / 16);
--font-22:calc(1em * 22 / 16);
--font-20:calc(1em * 20 / 16);
--font-18:calc(1em * 18 / 16);
--font-15:calc(1em * 15 / 16);
--font-14:calc(1em * 14 / 16);
--font-12:calc(1em * 12 / 16);
--font-11:calc(1em * 11 / 16);
--font-10:calc(1em * 10 / 16);
}
*[fs="40"]{font-size:var(--font-40);}
*[fs="38"]{font-size:var(--font-38);}
*[fs="31"]{font-size:var(--font-31);}
*[fs="28"]{font-size:var(--font-28);}
*[fs="26"]{font-size:var(--font-26);}
*[fs="24"]{font-size:var(--font-24);}
*[fs="22"]{font-size:var(--font-22);}
*[fs="20"]{font-size:var(--font-20);}
*[fs="18"]{font-size:var(--font-18);}
*[fs="15"]{font-size:var(--font-15);}
*[fs="14"]{font-size:var(--font-14);}
*[fs="12"]{font-size:var(--font-12);}
*[fs="11"]{font-size:var(--font-11);}
*[fs="10"]{font-size:var(--font-10);}

*[fw="700"]{font-weight:700;}
*[fw="900"],
*[bold]{font-weight:900;}
*[prewrap]{white-space:pre-wrap;}

img[src*="2025/arrow-"]{width:var(--font-40);}

/*-----------------------------------------------------
header
----------------------------------------------------- */
header{
	font-size: var(--font-size-base);
	background-color: #FFF;
	width:100%;
	position: fixed;
	top:0;
	left:0;
	z-index: 1000;
}
header + *{margin-top: calc(var(--font-size-base) * 50 / 16);}
header .h_inner{
	padding-left: 1em;
	position: relative;
	height: calc(1em * 50 / 16);
	gap: calc(1em * 22 / 16);
	display: flex;
	justify-content: space-between;
	align-items: center;
}
/* header .h_inner h1{font-size:30px;font-weight:700;color:#00008c;} */
header .h_inner h1 img{width:auto;height:2em;}
header .h_inner h1 + img{width:auto;height:1.75em;}
header .h_inner a{}
header .h_inner .menubtn{
	margin-left: auto;
	position: relative;
	width:calc(1em * 50 / 16);
	height:calc(1em * 50 / 16);
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
}
header .h_inner .menubtn > *{
	position: relative;
	width:calc(1em * 26 / 16);
	height:calc(1em * 24 / 16);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
header .h_inner .menubtn span{
	display: block;
	border-radius:1em;
	width:100%;
	height:0.25em;
	background-color: var(--color-B);
}
header.active .menubtn span{
	position: absolute;
	top:0;
	bottom:0;
	margin: auto;
	width: 140%;
}
header.active .menubtn span:nth-of-type(1){
 	-webkit-transform:rotate(45deg);
 	transform:rotate(45deg);
}
header.active .menubtn span:nth-of-type(2){
	opacity:0;
}
header.active .menubtn span:nth-of-type(3){
 	-webkit-transform:rotate(-45deg);
 	transform:rotate(-45deg);
}
header .pop{
	display: none;
	position: absolute;
	top:100%;
	right:0;
}
header .pop .menu{
	padding: calc(1em * 18 / 16);
	width: calc(1em * 188 / 16);
	margin-left: auto;
	background-color: var(--color-B);
	color: #FFF;
	display: flex;
	flex-direction: column;
}
header .pop .menu h3,
header .pop .menu .text_link{
	font-weight: 700;
	padding-bottom: 0.25em;
	margin-bottom: 0.25em;
	border-bottom: solid calc(1em / 16) #FFF;
}
header .pop .menu h3 + *,
header .pop .menu .text_link + *{
	font-size: calc(1em * 10 / 16);
	margin-bottom: 0.5em;
}
header .pop .menu a{display: block;}
header .pop .menu > a{
	background-color: var(--color-B-L);
	padding: 0.5em;
	padding-left: 0.75em;
	border-radius: 0.5em;
	display: flex;
	align-items: baseline;
}
header .pop .menu > a + a{margin-top: 0.5em;}
header .pop .menu > a[href*="aichi/"]{background-color: var(--color-aichi);}
header .pop .menu > a[href*="gifu/"]{background-color: var(--color-gifu);}
header .pop .menu > a[href*="shizuoka/"]{background-color: var(--color-shizuoka);}
header .pop .menu > a[href*="mie/"]{background-color: var(--color-mie);}
header .pop .menu > a b{font-weight: bold;}
header .pop .menu > a b:nth-of-type(1){font-size: calc(1em * 12 / 16); margin-right: 0.25em;}
header .pop .menu > a b:nth-of-type(2){font-size: calc(1em * 14 / 16);}
header .pop .menu > a div{margin-left: auto; min-width: 5em; text-align: center;}
header .pop .menu > a div font{font-size: calc(1em * 12 / 16);}
.FPday,
.FPday > *{
	position: relative;
	display: flex;
	align-items: center;
}
.FPday{
	background-color: var(--color-B);
	font-size: var(--font-size-base);
	padding: calc(1em * 15 / 16) 0;
	z-index: 500;
	justify-content: center;
}
.FPday > *{
	background-color: #FFF;
	/* padding: 1em; */
	border-radius: 1em;
	width: calc(1em * 340 / 16);
	height: calc(1em * 60 / 16);
	padding-left: calc(1em * 50 / 16);
}
.FPday img{width: auto;}
.FPday img[src*="-book."]{
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(1em * -10 / 16);
	margin: auto;	
	height: 4.5em;
}
.FPday img[src*="-text"]{
	width: calc(1em * 278 / 16);
	/* height: 2.75em; */
}
.FPday img[src*="-maru."]{
	position: absolute;
	right: 0;
	bottom: -2em;
	height: 4.25em;
}

/*-----------------------------------------------------
main
----------------------------------------------------- */
main{font-size: var(--font-size-base);}
main section{
	position: relative;
	z-index: 2;
}
main .top01{display:flex;flex-direction:column;}
main .top01 img{position:relative;}
main .top01 > div:nth-of-type(1){
	background:-moz-linear-gradient(0deg,#FFF,var(--color-B-L),var(--color-B),#030c5f);
  background:-webkit-linear-gradient(0deg,#FFF,var(--color-B-L),var(--color-B),#030c5f);
  background:linear-gradient(0deg,#FFF,var(--color-B-L),var(--color-B),#030c5f);
}
main .top01 > div:nth-of-type(2){background-color: var(--color-B);}
main .top01 > div:nth-of-type(2) img{margin-top: -5%;}
main .top01 > div > div{margin: 0 auto;max-width: 750px;}

main .top02{padding: 0 calc(1em * 17.5 / 16) calc(1em * 80 / 16);}
main .top02.qa{
	background-color: var(--color-B-L);
	padding: var(--font-20) calc(1em * 17.5 / 16) calc(1em * 60 / 16);
}
main .top02 > div{margin: 0 auto;max-width:calc(1em * 340 / 16);}
main .top02 .arrow_set{display:flex;flex-direction:column;align-items: center;}
main .top02 .arrow_set > *:nth-of-type(1){
	background-color: var(--color-M-D);
	color:#FFF;
	white-space: pre-wrap;
	text-align: center;
	font-size: var(--font-15);
	font-weight: 700;
	line-height: calc(1em * 23 / 15);
	margin-top: -15%;
	padding-top: 1em;
	width:min(calc(1em * 295 / 15),calc(1vw * 295 / 3.75));
}
main .top02 .arrow_set > *:nth-of-type(1) font{color:var(--color-Y);}
main .top02 .arrow_set > *:nth-of-type(2){
	width:100%;
	border-style: solid;
	border-width: 2em min(calc(1em * 170 / 16),calc(1vw * 170 / 3.75)) 0;
	border-color: var(--color-M-D) transparent;
}
main .top02 .place_set{
	margin-top:var(--font-20);
	gap:var(--font-20);
	display: flex;
	flex-direction: column;
}
main .top02 .place_set > h3{margin: 0 -1em; text-align: center; color:var(--color-B);font-size:var(--font-20);font-weight:700;}
main .top02 .place_set > h3 font{color:var(--color-M-D);}
main .top02 .place_set > a{
	position: relative;
	padding: 1em;
}
main .top02 .place_set > a:hover{color:#FFF;}
main .top02 .place_set > a::before,
main .top02 .place_set > a .bg{
	content: '';
	position: absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	z-index: -1;
}
main .top02 .place_set > a::before{opacity:0.5;}
main .top02 .place_set > a:hover::before{opacity:1;}
main .top02 .place_set > a .bg{
	object-position: right top;
	background-position:right top;
	background-repeat: no-repeat;
	background-size: contain;
}
main .top02 .place_set > a .bg.map{opacity: 0.4;}
main .top02 .place_set > a:hover .bg.map{opacity: 0.6;}
main .top02 .place_set > a .t{
	display: flex;
	align-items: center;
}
main .top02 .place_set > a .t h3{font-size: var(--font-26);font-weight: 900;display: flex;align-items: baseline;}
main .top02 .place_set > a .t span{font-size: calc(1em * 22 / 26); margin-right: 0.25em;}
main .top02 .place_set > a .t svg{width:var(--font-40); margin-left: 1em;}
main .top02 .place_set > a .t svg circle{fill:#FFF;}
main .top02 .place_set > a:hover .t svg circle{fill:var(--color-B);}
main .top02 .place_set > a .t svg polyline{fill:none;stroke:var(--color-B);stroke-miterlimit:10;stroke-width:5px;}
main .top02 .place_set > a:hover .t svg polyline{stroke:#FFF;}
main .top02 .place_set > a .d{
	margin-top: 0.5em;
	gap: 0.25em 0;
	display: flex;
	flex-wrap: wrap;
}
main .top02 .place_set > a .d *{line-height: 1em;}
main .top02 .place_set > a .d *:nth-of-type(1),
main .top02 .place_set > a .d *:last-of-type{width:100%;}
main .top02 .place_set > a .d *:nth-of-type(1){font-size:var(--font-18);}
main .top02 .place_set > a .d *:nth-of-type(2),
main .top02 .place_set > a .d *:nth-of-type(4){font-size:var(--font-38);}
main .top02 .place_set > a .d *:nth-of-type(3){font-size:var(--font-31); margin-top: calc(1em * 2 / 31);}
main .top02 .place_set > a .d *:nth-of-type(5){font-size:var(--font-24); margin-top: calc(1em * 10 / 24); margin-left: -0.5em;}
main .top02 .place_set > a .d *:last-of-type{font-size:var(--font-22); margin-top: calc(1em * 2 / 22);}
main .top02 .place_set > a .p{
	font-size:var(--font-15);
	margin-top: 0.5em;
	gap: 0 0.5em;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
main .top02 .place_set > a .p > *:first-of-type{font-weight:900;}
main .top02 .place_set > a .p > *:nth-of-type(2):not([fs]){font-size:var(--font-14);}
main .top02 .place_set > a .p > *:last-of-type{width:100%;font-size:var(--font-12);}
main .top02 .place_set > a .p > * span{margin-left: -0.5em; margin-right: -0.25em;}

main .top02 .place_set > a[bg="愛知"]::before{background-color:var(--color-aichi);}
main .top02 .place_set > a[bg="岐阜"]::before{background-color:var(--color-gifu);}
main .top02 .place_set > a[bg="静岡"]::before{background-color:var(--color-shizuoka);}
main .top02 .place_set > a[bg="三重"]::before{background-color:var(--color-mie);}

/*
main .top02 .place_set > a[bg="愛知"]:hover .bg{background-image: url("../images/2025/top/place-aichi.svg");}
main .top02 .place_set > a[bg="岐阜"]:hover .bg{background-image: url("../images/2025/top/place-gifu.svg");}
main .top02 .place_set > a[bg="静岡"]:hover .bg{background-image: url("../images/2025/top/place-shizuoka.svg");}
main .top02 .place_set > a[bg="三重"]:hover .bg{background-image: url("../images/2025/top/place-mie.svg");}
*/

main .top02 .place_set > a[bg="愛知"]:not(:hover) .t{color:var(--color-aichi-D);}
main .top02 .place_set > a[bg="岐阜"]:not(:hover) .t{color:var(--color-gifu-D);}
main .top02 .place_set > a[bg="静岡"]:not(:hover) .t{color:var(--color-shizuoka-D);}
main .top02 .place_set > a[bg="三重"]:not(:hover) .t{color:var(--color-mie-D);}

main .top02 .place_set > a[bg="愛知"]:not(:hover) .t svg polyline{stroke:var(--color-aichi);}
main .top02 .place_set > a[bg="岐阜"]:not(:hover) .t svg polyline{stroke:var(--color-gifu);}
main .top02 .place_set > a[bg="静岡"]:not(:hover) .t svg polyline{stroke:var(--color-shizuoka);}
main .top02 .place_set > a[bg="三重"]:not(:hover) .t svg polyline{stroke:var(--color-mie);}

main .top02 .strategy_set{margin-top: var(--font-20);}
main .top02 .strategy_set > .B{
	background-color: var(--color-B);
	color:#FFF;
	text-align: center;
	font-size: var(--font-18);
	font-weight: 900;
	padding: 0.75em 0;
}
main .top02 .strategy_set > .B span{display:inline-flex;flex-direction: column;}
main .top02 .strategy_set > .B span sub{font-size: 0.5em;font-weight:500;line-height: 1em;}
main .top02 .strategy_set > h3{
	margin-top: calc(1em * 16 / 26);
	color: var(--color-B);
	font-size: var(--font-26);
	font-weight: 900;
	line-height: calc(1em * 34 / 26);
	text-align: center;
}
main .top02 .strategy_set > h3 ~ h3{margin-top: calc(1em * 36 / 26);}
main .top02 .strategy_set > .p{padding-right: calc(1em * 6 / 16); padding-bottom: calc(1em * 6 / 16); margin-top: 0.5em;}
main .top02 .strategy_set > .p img{border-radius: calc(1em * 10 / 16); box-shadow: calc(1em * 6 / 16) calc(1em * 6 / 16) 0 var(--color-B);}
main .top02 .strategy_set > h4{
	margin-top: calc(1em * 4 / 14);
	font-size: var(--font-14);
	font-weight: 700;
	line-height: calc(1em * 29 / 14);
}
main .top02 .strategy_set > h4 span{position:relative;z-index:2;}
main .top02 .strategy_set > h4 span::after{
	content:'';
	display: block;
	background-color: var(--color-Y);
	width:calc(100% + 1em);
	height: calc(1em * 12 / 14);
	border-radius: 0 1em 1em 0;
	position: absolute;
	left:0;
	bottom: calc(1em * -4 / 14);
	z-index: -1;
}
main .top02 .strategy_set > .t{
	margin-top: calc(1em * 10 / 12);
	text-align: justify;
	font-size: var(--font-12);
	line-height: calc(1em * 20 / 12);
}
main .top02.qa h3{
	color: var(--color-B);
	font-size: var(--font-20);
	font-weight: 900;
	line-height: 1.5em;
	text-align: center;
	margin: -0.25em 0 0.75em;
}
main .top02.qa dl{
	display: flex;
	flex-direction: column;
}
main .top02.qa dl dt{
	background-color: var(--color-B);
	color:#FFF;
	min-height: calc(1em * 60 / 16);
	padding: calc(1em * 10 / 16);
	display: flex;
	align-items: center;
}
main .top02.qa dl dt span,
main .top02.qa dl dd .a span{
	font-size: var(--font-26);
	font-weight: 500;
	width: calc(1em * 30 / 26);
	min-width: calc(1em * 30 / 26);
}
main .top02.qa dl dt h4{
	text-align: justify;
	font-weight: 700;
}
main .top02.qa dl dt .btn{
	position: relative;
	width: var(--font-40);
	height:var(--font-40);
	border-radius: 100%;
	background-color: #FFF;
	margin-left: auto;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
}
main .top02.qa dl dt .btn::before,
main .top02.qa dl dt .btn::after{
	content:'';
	display: block;
	background-color: var(--color-B);
	width:4px;
	height:4px;
	/*
	width:calc(1em * 3 / 16);
	height:calc(1em * 3 / 16);
	*/
	position: absolute;
	margin: auto;
}
main .top02.qa dl dt .btn::before{width:50%;}
main .top02.qa dl dt .btn::after{height:50%;}
main .top02.qa dl.active dt .btn::after{display: none;}
main .top02.qa dl dd{
	border:solid calc(1em / 16) var(--color-B);
	border-top:none;
	background-color: #FFF;
	display: none;
}
main .top02.qa dl:not(:last-of-type) dd{border-bottom: none;}
main .top02.qa dl dd .a{
	padding: calc(1em * 5 / 16) 1em 1em;
	padding-left: var(--font-10);
	color: var(--color-B);
	display: flex;
	align-items: baseline;
}
main .top02.qa dl dd .a span{width:1em;min-width:1em;}
main .top02.qa dl dd .a h4{flex-grow:1;text-align:justify;line-height:1.5em;}
main .top02.qa dl dd .a h4 font{margin: 0 -0.5em;}
main .top02.qa dl dd .t{
	font-size: var(--font-12);
	line-height: calc(1em * 20 / 12);
	margin: calc(1em * -5 / 12) 0;
}
main .top02.qa dl dd > .t{padding: 0 calc(1em * 16 / 12);}
main .top02.qa dl dd .ex{padding: 0 1em;}
main .top02.qa dl dd h5{
	background-color: var(--color-B-L);
	font-size: 1em;
	font-weight: 700;
	line-height: 1em;
	text-align: center;
	margin: var(--font-40) 0 1em;
	min-height: 1.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}
main .top02.qa dl dd h5 > div{display: flex;justify-content: center;align-items: baseline;}
main .top02.qa dl dd h5 font[size="-1"]{font-size: var(--font-12);}
main .top02.qa dl dd .ex ul{gap:1em; display: flex; flex-direction: column;}
main .top02.qa dl dd .ex li b{color: var(--color-B);line-height: 1.5em; display: block; margin-top:-0.25em;}
main .top02.qa dl dd .ex li div{font-size: var(--font-12);line-height: calc(1em * 20 / 12);text-align: justify; text-indent: -1em; padding-left: 1em;}
main .top02.qa dl dd .float_img::after{content:'';display:block;clear:both;}
main .top02.qa dl dd .float_img img{float:left;width:auto;margin-right:1em;}
main .top02.qa dl dd .float_img img[src*="-CFP"]{width:66px;height:5em;}
main .top02.qa dl dd .float_img img[src*="-AFP"]{width:72px;height:5em;}
main .top02.qa dl dd > img{margin-top: 0.5em;}

main .sec01{
	border-left: solid calc(1em * 17 / 16) #EEE;
	padding: 0.5em;
	padding-right: calc(1em * 25 / 16);
	padding-bottom: var(--font-40);
}
main .sec01::before,
main .sec01 .bg{
	content: '';
	position: absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	z-index: -1;
}
main .sec01::before{opacity:0.5;}
body[area="愛知"] main .sec01{border-color:var(--color-aichi);}
body[area="岐阜"] main .sec01{border-color:var(--color-gifu);}
body[area="静岡"] main .sec01{border-color:var(--color-shizuoka);}
body[area="三重"] main .sec01{border-color:var(--color-mie);}
body[area="愛知"] main .sec01::before{background-color:var(--color-aichi);}
body[area="岐阜"] main .sec01::before{background-color:var(--color-gifu);}
body[area="静岡"] main .sec01::before{background-color:var(--color-shizuoka);}
body[area="三重"] main .sec01::before{background-color:var(--color-mie);}
main .sec01 > *{margin:auto;max-width:calc(var(--font-size-base) * 340 / 16);}
main .sec01 .bg{
	object-position: right top;
	max-width:min(680px,calc(1vw * 340 / 3.75));
	max-height:min(680px,calc(1vw * 340 / 3.75));
}
main .sec01 .t,
main .sec01 .p{
	display: flex;
	flex-direction: column;
}
main .sec01 .t *{line-height: 1.25em;}
main .sec01 .t h2,
main .sec01 .t *[fs="18"]{margin-bottom: 0.25em;}
main .sec01 .t h2{
	font-size: var(--font-28);
	font-weight: 900;
}
main .sec01 .t h2 span{
	font-size: calc(1em * 20 / 28);
	display: inline-block;
	margin-right: 0.25em;
}
main .sec01 .t *[fs="12"]{
	margin-top: 0.5em;
	line-height: calc(1em * 22 / 12);
}
main .sec01 .d{
	margin-top: 1em;
	gap: 0.25em 0;
	display: flex;
	flex-wrap: wrap;
}
main .sec01 .d *{line-height: 1em;}
main .sec01 .d *:nth-of-type(1),
main .sec01 .d *:last-of-type{width:100%;}
main .sec01 .d *:nth-of-type(1){font-size:var(--font-18);}
main .sec01 .d *:nth-of-type(2),
main .sec01 .d *:nth-of-type(4){font-size:var(--font-38);}
main .sec01 .d *:nth-of-type(3){font-size:var(--font-31); margin-top: calc(1em * 2 / 31);}
main .sec01 .d *:nth-of-type(5){font-size:var(--font-24); margin-top: calc(1em * 10 / 24); margin-left: -0.5em;}
main .sec01 .d *:last-of-type{font-size:var(--font-22); margin-top: calc(1em * 2 / 22);}
main .sec01 .p{margin-top: 1em;}
main .sec01 .p *:nth-of-type(1){
	gap: 0 0.5em;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
main .sec01 .p *[kakko]{margin-left: -0.5em;}
main .sec01 .bnr_moushikomi{margin-top:var(--font-40);}
.bnr_moushikomi a{
	background-color: var(--color-B);
	color:#FFF;
	margin: auto;
	padding: var(--font-15);
	width: 100%;
	max-width: calc(1em * 325 / 16);
	min-height: calc(1em * 120 / 16);
	box-shadow: calc(1em * 5 / 16) calc(1em * 5 / 16) calc(1em * 3 / 16) rgba(0,0,0,0.6);
	transition: transform 0.3s;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
}
.bnr_moushikomi a:hover{transform: scale(calc(340 / 325));}
.bnr_moushikomi a > *:nth-child(1){font-size:var(--font-15);font-weight:700;margin-top:-0.25em;}
.bnr_moushikomi a > *:nth-child(2){width:100%;display:flex;justify-content:space-between;align-items:center;}
.bnr_moushikomi a > *:nth-child(2) img[src*="bnr_"]{width:calc(1em * 133 / 16);}
.bnr_moushikomi a > *:nth-child(2) div{font-size:var(--font-20);font-weight:700;line-height:calc(1em * 26 / 20);color:var(--color-Y);}
main .sec02 .bnr_moushikomi{
	padding: var(--font-40) 0;
}

main .sec02{padding:calc(1em * 20 / 16) calc(1em * 17.5 / 16);}
main .sec02[bg]::before{
	content: '';
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index: -1;
	opacity:0.5;
}
main .sec02:not([bg]){padding-bottom:var(--font-40);}
main .sec02[bg="愛知"]::before{background-color:var(--color-aichi-L);}
main .sec02[bg="岐阜"]::before{background-color:var(--color-gifu-L);}
main .sec02[bg="静岡"]::before{background-color:var(--color-shizuoka-L);}
main .sec02[bg="三重"]::before{background-color:var(--color-mie-L);}

main .sec02 > *{margin:auto;max-width:calc(var(--font-size-base) * 340 / 16);}

.subt_set{
	color:#FFF;
	min-height: calc(1em * 60 / 16);
	padding: 0 var(--font-15);
	gap:calc(1em * 10 / 16);
	background-color:var(--color-B);
	display: flex;
	align-items: center;
}
.subt_set > div{
	font-size: var(--font-12);
	font-weight:900;
	min-width: calc(1em * 66 / 12);
	min-height: calc(1em * 30 / 12);
	background-image: url("../images/2025/subt-label.svg");
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	color:var(--color-B);
	padding: 0 calc(1em * 15 / 12) 0 calc(1em * 6 / 12);
	display: flex;
	justify-content: center;
	align-items: center;
}
.subt_set > div span{line-height: 1em; display: flex; justify-content: center; }
.subt_set > div font{font-size:calc(1em * 16 / 12); margin-top: calc(1em * -0.5 / 12);}
.subt_set h3{font-weight:700;}
.subt_set h3 div{line-height: calc(1em * 24 / 18);}
.subt_set h3:not([fs]) div{font-size:var(--font-18);}
.subt_set > img{margin-left: auto;}
.subt_set.G{background-color:var(--color-G);}
.subt_set.C{background-color:var(--color-C);}
.subt_set.M{background-color:var(--color-M);}
.subt_set.gifu{background-color:var(--color-gifu);}/* 岐阜カラーだけそのまま使用 */
.subt_set.G > div{color:var(--color-G);}
.subt_set.C > div{color:var(--color-C);}
.subt_set.M > div{color:var(--color-M);}
.subt_set.gifu > div{color:var(--color-gifu);}
.subt_set ~ .subt_set{margin-top:var(--font-20);}

main .sec02 .text{
	text-align: justify;
	font-size: var(--font-12);
	line-height: 2em;
}
main .sec02 img{display:block;}
main .sec02 .subt_set + .text,
main .sec02 .text + img{margin-top: 0.5em;}
main .sec02 .sche{margin: 0 auto; max-width: calc(1em * 340 / 16);}
main .sec02 .sche + .sche{margin-top:var(--font-20);}
main .sec02 .sche .border{border:solid calc(1em / 16) var(--color-B);border-top:none; background-color: #FFF;}
main .sec02 .sche .border .seminar{
	padding: calc(1em * 20 / 16) calc(1em * 9 / 16) 0;
	display: flex;
	flex-direction: column;
}
main .sec02 .sche .border .seminar:last-child{padding-bottom: calc(1em * 20 / 16);}
main .sec02 .sche .border .seminar img{width:100%;}
main .sec02 .sche .border .seminar img:not(last-child){padding-bottom: calc(1em * 20 / 16);}
main .sec02 .sche .border .seminar img:nth-child(n+2){
	padding-top: calc(1em * 20 / 16);
	border-top:solid calc(1em * 4 / 16) var(--color-B);
}
main .sec02 .sche .border.G,
main .sec02 .sche .border.G .seminar img:nth-child(n+2){border-color:var(--color-G);}
main .sec02 .sche .border.C,
main .sec02 .sche .border.C .seminar img:nth-child(n+2){border-color:var(--color-C);}
main .sec02 .sche .border.M,
main .sec02 .sche .border.M .seminar img:nth-child(n+2){border-color:var(--color-M);}
main .sec02 .sche .border.gifu,
main .sec02 .sche .border.gifu .seminar img:nth-child(n+2){border-color:var(--color-gifu);}/* 岐阜カラーだけそのまま使用 */
main .sec02 .sche .border.pad{
	padding: 0.5em var(--font-10);
	display: flex;
	justify-content: center;
	align-items: center;
}
main .sec02 .sche .border span{
	margin: 0 auto;
	display: block;
	text-align: justify;
	font-size: var(--font-10);
	line-height: calc(1em * 16 / 10);
}
main .sec02 .sche .border span[t]::before{
	content:attr(t);
	display: inline-block;
	text-indent: 0;
	min-width: 3em;
}
main .sec02 .sche .border span[t="後援"]{
	padding-left: 3em;
	text-indent: -3em;
}
main .sec02 .miniC{
	text-align: center;
	font-size: var(--font-10);
	line-height: calc(1em * 16 / 10);
}
main .sec02 .miniC > *{display:inline-block;text-align:justify;white-space:pre-wrap;}
main .sec02 .sche + .miniC{margin-top:1em;}
main .sec02 .kome,
main .sec02 .caution{
	text-align: justify;
	font-size: var(--font-10);
	line-height: calc(1em * 16 / 10);
}
main .sec02 .kome{
	padding-left: 1em;
	text-indent: -1em;
}
main .sec02 .kome *{text-indent:0;}
main .sec02 .kome::before{content:'※';}
main .sec02 .kome + .kome{margin-top:0.5em;}
main .sec02 .caution + .caution{margin-top:1em;}
main .sec02 .caution ~ .kome{margin-top:0;}

.anchor{position:relative;}
.anchor a{position:absolute;top:calc(1em * -50 / 16);}

.pagetop{position:relative;font-size:var(--font-size-base);}
.pagetop a{
	display: block;
	position: absolute;
	bottom:calc(1em * 4 / 16);
	right:calc(1em * 17.5 / 16);
	z-index: 10;
}
.pagetop a img{width:calc(1em * 36 / 16);}
.pagetop:not(.static) a{position: fixed; transition:bottom 0.3s;}
.pagetop:not(.static):not(.active) a{bottom:calc(1em * -36 / 16);}

/*-----------------------------------------------------
footer
----------------------------------------------------- */
footer{
	font-size: var(--font-size-base);
	background:var(--color-B);
	color:#FFF;
	padding: 1.25em 0 calc(1em * 10 / 16);
}
footer .block_logo{
	width: min(680px,max(340px,calc(1vw * 340 / 3.75)));
	margin: 0 auto;
	background:-moz-linear-gradient(left, rgba(255,255,255,0), #FFFFFF 20%, #FFFFFF 80%, rgba(255,255,255,0));
  background:-webkit-linear-gradient(left, rgba(255,255,255,0), #FFFFFF 20%, #FFFFFF 80%, rgba(255,255,255,0));
  background:linear-gradient(to right, rgba(255,255,255,0), #FFFFFF 20%, #FFFFFF 80%, rgba(255,255,255,0));
	color:#000;
	font-family: var(--font-min);
	font-weight: 600;
	padding: calc(1em * 5 / 16) 0;
	gap: 5px 10px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
footer .block_logo img{width:auto;}
footer .block_logo div{font-size: 18px; line-height: 1em; padding-bottom: 9px;}
footer address{font-size:16px;line-height:26px; text-align:center; margin:0.5em 0; }
footer address span{display:inline-block!important; width:0.5em;}
footer .insta{font-size:16px; margin:20px 0; display: flex; flex-direction: column; align-items: center;}
footer .insta img{width: 50px;margin-bottom: 0.25em;}
footer .tel{
	margin: 20px 0;
	gap: 20px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
footer .tel > *{}
footer .tel > * > div:nth-of-type(1){font-size: 16px;}
footer .tel > * > div:nth-of-type(2){font-size: 14px;margin-left: -0.5em; margin-bottom: 2px;}
footer .tel > * > a{display: block; font-size: 30px; font-weight: 900; line-height: 1em;}
footer .print{font-size:10px; font-weight: 300; line-height:16px; text-align: center; margin:20px auto; width:calc(100% - 35px);}
footer .print > *{display: inline-block;text-align: justify;}
footer .f_copy{
	margin: 20px auto;
	width:calc(100% - 35px);
	gap: 20px;
	display: flex;
	justify-content: center;
}
footer .f_copy > *{}
footer .f_copy .flex{
	gap: 12px;
	font-size: 10px; font-weight: 300; line-height:14px; text-align: justify;
	display: flex;
	align-items: center;
}
footer .f_copy .flex > *:nth-of-type(1){width:99px;min-width:99px;}
footer .f_copy .flex > *:nth-of-type(2){flex-grow: 1;}
footer .f_copy .flex img[src*="-CFP."]{width:89px;}
footer .f_copy .flex img[src*="-AFP."]{width:99px;}
footer .f_copy .white{
	margin-top: 20px;
	background-color: #FFF;
	color:#000;
	padding: 1em 16px;
	font-size: 12px; font-weight: 300; line-height:16px; text-align: justify;
}
footer small{ font-size:12px; text-align:center; display:block; }
@media only screen and (min-width: 769px) {
	footer .f_copy{width:750px;}
	footer .f_copy .L{flex-grow: 1;}
	footer .f_copy .R{min-width:56%;}
	footer .f_copy .white{ margin-top: 1em; font-size: 10px; line-height:14px; }
}
@media only screen and (max-width: 768px) {
	footer .block_logo{flex-direction: column; align-items: center;}
	footer .block_logo div{padding-bottom: 5px;}
	footer .tel,
	footer .f_copy{flex-direction: column; align-items: center;}
	footer .tel > *{min-width: 305px;}
}