/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');
@import url('https://use.typekit.net/bbx2gpe.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&display=swap');


html{
	scroll-behavior: smooth;
	}

body{
	color: #1a1a1a;
	fill: currentColor;
	line-height: 1em;
	}
	body:before{
		position: fixed;
		top: 0;
		left: 0;
		padding: 0.5em;
		background: #bb000b;
		font-weight: bold;
		color: #fff;
		pointer-events: none;
		z-index: 10000;
		}
	body:lang(ja){
		font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', "Microsoft YaHei", sans-serif;
		}
	body:lang(en){
		font-family: proxima-nova, Roboto, "Segoe UI", "Helvetica Neue", "Microsoft YaHei", sans-serif;
		}
		/*
		body:lang(en):before{
			content: 'English /en/ lang="en"';
			}
		*/
	body:lang(tw){
		font-family: "Noto Sans TC", "PingFang TC", "Hiragino Sans CNS", "Microsoft YaHei", "Microsoft JhengHei", sans-serif;
		}
		/*
		body:lang(tw):before{
			content: '繁体字 /tw/ lang="tw"';
			}
		*/
	body:lang(cn){
		font-family: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
		}
		/*
		body:lang(cn):before{
			content: '簡体字 /cn/ lang="cn"';
			}
		*/
	body:lang(ko){
		font-family: "Noto Sans KR", "Apple SD Gothic Neo", Gulim, "Malgun Gothic", "Microsoft YaHei", sans-serif;
		word-break: keep-all;
		}
		/*
		body:lang(ko):before{
			content: '韓国語 /kr/ lang="ko"';
			}
		*/
	body *{
		line-height: inherit;
		}

a{
	color: inherit;
	fill: currentColor;
	transition-property: color,text-decoration,background,background-color,background-size,border,border-color,box-shadow,fill,filter,opacity;
	transition-duration: 0.2s;
	transition-timing-function: ease-out;
	}

img{
	pointer-events: none;
	}

main{}
	main a{
		color: #0091b5;
		text-decoration: underline;
		}
		main a:hover{
			color: #e50012;
			}
		main a i{
			display: inline-flex;
			align-content: center;
			}
	main p{
		line-height: 1.4em;
		}

input,
textarea,
select{}
	input:focus,
	textarea:focus,
	select:focus{
		border: 1px solid #0068b6;
		}

input[type="radio"],
input[type="checkbox"]{}
	input[type="radio"]:checked+label,
	input[type="checkbox"]:checked+label{}
		input[type="radio"]:checked+label:before,
		input[type="checkbox"]:checked+label:before{
			border-color: #0068b6;
			background-color: #0068b6;
			-webkit-animation: checked 0.2s forwards;
			animation: checked 0.2s forwards;
			}
		@-webkit-keyframes checked{
			30% {box-shadow: 0 0 0 1em rgba(22,55,122,0.5);}
			}
		@keyframes checked{
			30% {box-shadow: 0 0 0 1em rgba(22,55,122,0.5);}
			}

#wrapper{
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 100vh;
	order: 1;
	}
	_:-ms-lang(x)::-ms-backdrop, #wrapper{
		overflow: hidden;
		}

#header{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 5em;
	padding-left: env(safe-area-inset-left);
	z-index: 100;
	}
	#header #navButton{
		position: absolute;
		top: 0;
		right: 0;
		}

#siteName{}
	#siteName svg{
		font-size: 4em;
		}

#navButton{
	position: relative;
	width: 5em;
	height: 5em;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	color: inherit;
	text-align: center;
	box-sizing: border-box;
	overflow: hidden;
	cursor: pointer;
	outline: none;
	}
	#navButton span{
		position: absolute;
		bottom: 0.5em;
		left: 0;
		width: 100%;
		color: currentColor;
		font-size: 0.2em;
		font-weight: bold;
		text-transform: uppercase;
		line-height: 1em;
		}

	#navButton i{
		position: absolute;
		display: block;
		left: 30%;
		width: 40%;
		height: 3px;
		border-radius: 10px;
		margin-top: -1px;
		background: currentColor;
		transition: all 0.2s ease-out;
		}
		#navButton i:nth-child(1){
			top: 35%;
			}
		#navButton i:nth-child(2){
			top: 50%;
			}
		#navButton i:nth-child(3){
			top: 65%;
			}

#nav{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background: #fff;
	fill: currentColor;
	overflow-y: scroll;
	z-index: 110;
	}
	#nav > div{
		position: relative;
		display: flex;
		}
	#nav dl{
		display: flex;
		flex-wrap: wrap;
		}
	#nav dt{
		width: 100%;
		padding-bottom: 0.8em;
		border-bottom: 1px solid #9f9f9f;
		font-size: 1.4em;
		line-height: 1em;
		letter-spacing: 0.1em;
		text-align: center;
		}
	#nav dd{
		width: 50%;
		margin-top: 1em;
		line-height: 1.4em;
		}
		#nav dd a{
			display: inline-flex;
			align-items: center;
			cursor: pointer;
			}
		#nav dd i{
			position: relative;
			top: 0.1em;
			margin-left: 1em;
			order: 1;
			}
	#nav [id]+[id]{
		padding-top: 0;
		}
	#nav #siteName{
		position: absolute;
		top: 1em;
		}
	#nav #navButton{
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		margin-left: auto;
		}
		#nav #navButton i:nth-child(1){
			top: 50%;
			transform: rotate(-45deg);
			}
		#nav #navButton i:nth-child(2){
			display: none;
			}
		#nav #navButton i:nth-child(3){
			top: 50%;
			transform: rotate(45deg);
			}
	#nav .wrap{
		position: relative;
		display: flex;
		flex-direction: column;
		z-index: 1;
		}

#navExtra{}
	#navExtra a{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 1em;
		padding-left: 3em;
		height: 3em;
		border: 1px solid #9f9f9f;
		fill: #4d4d4d;
		}
		#navExtra a:hover{
			background: #cedaf3;
			color: #16377a;
			fill: currentColor;
			}
			#navExtra a:not(:lang(ja)):hover{
				background: #fae3e1;
				color: #bb000b;
				}
		#navExtra a i{
			position: absolute;
			top: calc(50% - 0.5em);
			left: 1em;
			}
	#navExtra ul{
		display: flex;
		justify-content: center;
		}
	#navExtra li+li{
		margin-top: 1em;
		}

#pagePath{
	padding: 0.5em 0;
	background: #cedaf3;
	color: #16377a;
	overflow:auto;
	}
	#pagePath:not(:lang(ja)){
		background: #fae3e1;
		color: #bb000b;
		}
	#pagePath ul{
		display: flex;
		font-size: 0.9em;
		}
	#pagePath li{
		display: flex;
		align-items: center;
		}
	#pagePath li+li{}
		#pagePath li+li:before{
			content: ">";
			margin: 0 0.5em;
			}

#main{
	margin-bottom: auto;
	}

#pageTop{
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	height: 0;
	color: #16377a;
	z-index: 100;
	order: 10;
	}
	#pageTop:not(:lang(ja)){
		color: #bb000b;
		}
	#pageTop a{
		position: relative;
		right: 1em;
		bottom: 1em;
		width: 2em;
		height: 2em;
		background: none;
		fill: currentColor;
		}
	#pageTop svg{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		}
	#pageTop.on{}
		#pageTop.on:lang(ja){
			color: #fff;
			}

#footer{
	padding-bottom: env(safe-area-inset-bottom);
	background: rgba(22,55,122,0.95) url("../images/footerBg.svg");
	background-size: 225px 180px;
	order: 1;
	}
	#footer:lang(ja){
		color: #fff;
		fill: currentColor;
		}
	#footer:not(:lang(ja)){
		background: #fae3e1;
		}
	#footer .wrap{
		display: grid;
		}

#fLogo{
	font-size: 5em;
	}

#fSns{}
	#fSns h4{
		grid-column: 1 / 3;
		display: flex;
		align-items: center;
		grid-gap: 0.75em;
		white-space: nowrap;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		}
		#fSns h4:before,
		#fSns h4:after{
			content: "";
			width: 50%;
			height: 1px;
			background: rgba(255,255,255,0.4);
			}
	#fSns h4+div{
		display: flex;
		justify-content: center;
		margin-top: 1.5em;
		grid-gap: 0 4em;
		}
	#fSns dl{
		display: grid;
		grid-gap: 1em 1.5em;
		}
	#fSns dt{
		justify-self: center;
		}
		#fSns dt:nth-last-child(4){
			grid-column: 1 / 4;
			}
	#fSns dd{
		grid-row: 1;
		justify-self: center;
		}
		#fSns dd a{
			position: relative;
			display: block;
			width: 2em;
			height: 2em;
			white-space: nowrap;
			text-indent: 100vw;
			overflow: hidden;
			}
			#fSns dd a:before{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				}
	#fSns ul{
		display: flex;
		grid-gap: 1em 1.5em;
		margin-top: 1em;
		}
	#fSns li{}
		#fSns li a{
			position: relative;
			display: block;
			width: 1.2em;
			height: 1.2em;
			white-space: nowrap;
			text-indent: 100vw;
			overflow: hidden;
			}
			#fSns li a:before{
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				}
	#fSns a{}
		#fSns a:before{
			content: "";
			-webkit-mask-position: center;
			-webkit-mask-repeat: no-repeat;
			-webkit-mask-size: contain;
			background: currentColor;
			}
		#fSns a[href*="youtube.com"]:before{
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"/></svg>');
			}
		#fSns a[href*="facebook.com"]:before{
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z"/></svg>');
			}
		#fSns a[href*="instagram.com"]:before{
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 488 512"><path d="M224,202.66A53.34,53.34,0,1,0,277.36,256,53.38,53.38,0,0,0,224,202.66Zm124.71-41a54,54,0,0,0-30.41-30.41c-21-8.29-71-6.43-94.3-6.43s-73.25-1.93-94.31,6.43a54,54,0,0,0-30.41,30.41c-8.28,21-6.43,71.05-6.43,94.33S91,329.26,99.32,350.33a54,54,0,0,0,30.41,30.41c21,8.29,71,6.43,94.31,6.43s73.24,1.93,94.3-6.43a54,54,0,0,0,30.41-30.41c8.35-21,6.43-71.05,6.43-94.33S357.1,182.74,348.75,161.67ZM224,338a82,82,0,1,1,82-82A81.9,81.9,0,0,1,224,338Zm85.38-148.3a19.14,19.14,0,1,1,19.13-19.14A19.1,19.1,0,0,1,309.42,189.74ZM400,32H48A48,48,0,0,0,0,80V432a48,48,0,0,0,48,48H400a48,48,0,0,0,48-48V80A48,48,0,0,0,400,32ZM382.88,322c-1.29,25.63-7.14,48.34-25.85,67s-41.4,24.63-67,25.85c-26.41,1.49-105.59,1.49-132,0-25.63-1.29-48.26-7.15-67-25.85s-24.63-41.42-25.85-67c-1.49-26.42-1.49-105.61,0-132,1.29-25.63,7.07-48.34,25.85-67s41.47-24.56,67-25.78c26.41-1.49,105.59-1.49,132,0,25.63,1.29,48.33,7.15,67,25.85s24.63,41.42,25.85,67.05C384.37,216.44,384.37,295.56,382.88,322Z"/></svg>');
			}
		#fSns a[href*="weibo.com"]:before{
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 488 512"><path d="M407 177.6c7.6-24-13.4-46.8-37.4-41.7-22 4.8-28.8-28.1-7.1-32.8 50.1-10.9 92.3 37.1 76.5 84.8-6.8 21.2-38.8 10.8-32-10.3zM214.8 446.7C108.5 446.7 0 395.3 0 310.4c0-44.3 28-95.4 76.3-143.7C176 67 279.5 65.8 249.9 161c-4 13.1 12.3 5.7 12.3 6 79.5-33.6 140.5-16.8 114 51.4-3.7 9.4 1.1 10.9 8.3 13.1 135.7 42.3 34.8 215.2-169.7 215.2zm143.7-146.3c-5.4-55.7-78.5-94-163.4-85.7-84.8 8.6-148.8 60.3-143.4 116s78.5 94 163.4 85.7c84.8-8.6 148.8-60.3 143.4-116zM347.9 35.1c-25.9 5.6-16.8 43.7 8.3 38.3 72.3-15.2 134.8 52.8 111.7 124-7.4 24.2 29.1 37 37.4 12 31.9-99.8-55.1-195.9-157.4-174.3zm-78.5 311c-17.1 38.8-66.8 60-109.1 46.3-40.8-13.1-58-53.4-40.3-89.7 17.7-35.4 63.1-55.4 103.4-45.1 42 10.8 63.1 50.2 46 88.5zm-86.3-30c-12.9-5.4-30 .3-38 12.9-8.3 12.9-4.3 28 8.6 34 13.1 6 30.8.3 39.1-12.9 8-13.1 3.7-28.3-9.7-34zm32.6-13.4c-5.1-1.7-11.4.6-14.3 5.4-2.9 5.1-1.4 10.6 3.7 12.9 5.1 2 11.7-.3 14.6-5.4 2.8-5.2 1.1-10.9-4-12.9z"/></svg>');
			}
		#fSns a[href*="twitter.com"]:before{
			-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>');
			}

#fTooltip{}
	#fTooltip a{
		display: inline-flex;
		align-items: center;
		cursor: pointer;
		}
		#fTooltip a i{
			display: flex;
			align-items: center;
			justify-content: center;
			width: 1em;
			height: 1em;
			margin-right: 1em;
			}
		#fTooltip a svg{
			transform: scale(1.4);
			}

#fNav{}
	#fNav ul{
		border-bottom: 1px solid rgba(255,255,255,0.4)
		}
		#fNav ul:not(:lang(ja)){
			border-color: #9f9f9f;
			}
	#fNav li{
		position: relative;
		display: flex;
		border-top: 1px solid rgba(255,255,255,0.4);
		text-align: center;
		}
		#fNav li:not(:lang(ja)){
			border-color: #9f9f9f;
			}
		#fNav li:before{
			position: absolute;
			left: 0;
			top: calc(50% - 0.5em);
			width: 0;
			height: 1em;
			border-left: 1px solid rgba(255,255,255,0.4);
			}
			#fNav li:not(:lang(ja)):before{
				border-color: rgba(26,26,26,0.2);
				}
	#fNav a{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 5em;
		line-height: 1.4em;
		}
		#fNav a:hover{
			background: rgba(255,255,255,0.2);
			}

#fNavS{
	overflow: hidden;
	}
	#fNavS ul{
		display: flex;
		justify-content: center;
		margin: 0 -1em;
		}
	#fNavS li{
		position: relative;
		padding: 0 1em;
		}
		#fNavS li:before{
			position: absolute;
			left: 0;
			top: calc(50% - 0.5em);
			width: 0;
			height: 1em;
			border-left: 1px solid rgba(255,255,255,0.4);
			}
		#fNavS li:not(:lang(ja)):before{
			border-color: #9f9f9f;
			}
	#fNavS a{
		line-height: 1.4em;
		}

#fShare{
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background: rgba(0,0,0,0.5);
	color: #1a1a1a;
	opacity: 0;
	z-index: 120;
	}
	#fShare menu{
		position: absolute;
		top: 0;
		right: 0;
		width: 1.6em;
		height: 1.6em;
		margin: -0.8em;
		padding: 0;
		background: currentColor;
		border-radius: 100%;
		fill: #fff;
		cursor: pointer;
		}
		#fShare menu svg{
			position: absolute;
			top: 25%;
			left: 25%;
			width: 50%;
			height: 50%;
			}
	#fShare dl{
		position: relative;
		background: #fff;
		}
	#fShare dt{
		padding: 0.8em;
		text-align: center;
		}
	#fShare dd{
		position: relative;
		border-top: 1px solid #a9a9a9;
		}
		#fShare dd a{
			display: flex;
			align-items: baseline;
			padding: 0.8em;
			fill: #4d4d4d;
			cursor: pointer;
			}
		#fShare dd i{
			display: flex;
			align-items: center;
			width: 1em;
			height: 1em;
			margin-right: 0.5em;
			}
	#fShare textarea{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: none;
		opacity: 0;
		pointer-events: none;
		}
	#fShare .wrap{
		position: relative;
		width: auto;
		}
	#fShare.open{
		pointer-events: all;
		opacity: 1;
		}
		#fShare.open dl{
			min-width: 15em;
			}

#copyright{
	display: none;
	}

#bulletin{
	padding: 2em 0;
	order: -10;
	}
	#bulletin dl{
		display: flex;
		flex-direction: column;
		align-items: center;
		}
	#bulletin dt{
		display: none;
		}
	#bulletin dt+dd{
		align-self: stretch;
		line-height: 1.4em;
		}
	#bulletin dd+dd{
		margin-top: 1em;
		}
	#bulletin .wrap{
		display: flex;
		align-items: center;
		justify-content: space-between;
		border: 2px solid #9f9f9f;
		}
	#bulletin .linkBut{
		border: 1px solid #b5b5b5;
		border-radius: 8px;
		}
		#bulletin .linkBut:not(:hover){
			color: inherit;
			}
	#bulletin .slick-track{
		display: flex !important;
		}
	#bulletin .slick-slide{
		display: flex;
		float: none !important;
		height: auto;
		}
		#bulletin .slick-slide dl{
			width: 100%;
			height: 100%;
			}

#customSearch{
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background: rgba(0,0,0,0.5);
	opacity: 0;
	z-index: 120;
	}
	#customSearch menu{
		position: absolute;
		top: -2em;
		right: 0;
		width: 2em;
		height: 2em;
		padding: 0;
		margin: 0;
		fill: #fff;
		cursor: pointer;
		}
		#customSearch menu svg{
			position: absolute;
			top: 25%;
			left: 25%;
			width: 50%;
			height: 50%;
			}
	#customSearch > div{
		position: relative;
		width: 90vw;
		max-width: 560px;
		padding: 1em;
		background: #fff;
		}
	#customSearch.open{
		pointer-events: all;
		opacity: 1;
		}

#cookiePolicy{
	position: fixed;
	left: 0;
	bottom: 1em;
	display: flex;
	justify-content: center;
	width: 100%;
	pointer-events: none;
	z-index: 1000;
	}
	#cookiePolicy p{
		line-height: 1.5em;
		}
		#cookiePolicy p a{
			text-decoration: underline;
			}
	#cookiePolicy button{
		margin-top: 1em;
		pointer-events: all;
		}
	#cookiePolicy .wrap{
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 1em;
		background: #fff;
		filter: drop-shadow(0 0 0.2em rgba(0,0,0,0.2));
		}

#subject{
	position: relative;
	}
	#subject svg{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0.2;
		z-index: -1;
		}
	#subject .headline{
		text-align: center;
		}
		#subject .headline:lang(ja){
			color: #16377a;
			}
		#subject .headline:not(:lang(ja)){
			font-weight: bold;
			}

#pageTab{
	padding-bottom: 0;
	background: #eff1f6;
	border-bottom: 2px solid #16377a;
	}
	#pageTab:not(:lang(ja)){
		background: #fae3e1;
		border-color: #bb000b;
		}
	#pageTab ul{
		position: relative;
		display: flex;
		padding-bottom: calc(1em - 2px);
		z-index: 1;
		}
	#pageTab li{
		position: relative;
		display: flex;
		width: 50%;
		}
		#pageTab li a{
			display: flex;
			align-items: center;
			width: 100%;
			background: #fff;
			border: 1px solid currentColor;
			color: inherit;
			line-height: 1.4em;
			text-decoration: none;
			cursor: pointer;
			}
		#pageTab li i{
			position: absolute;
			top: calc(50% - 0.5em);
			right: 0.5em;
			}
	#pageTab li+li{
		margin-left: 0.5em;
		}
	#pageTab li.select{
		position: relative;
		color: #16377a;
		pointer-events: none;
		}
		#pageTab li.select:not(:lang(ja)){
			color: #bb000b;
			}
		#pageTab li.select a{
			background: none;
			border-color: transparent;
			pointer-events: none;
			}
		#pageTab li.select:before{
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: calc(100% + 1em);
			background: #fff;
			border: 2px solid currentColor;
			border-bottom: none;
			box-sizing: border-box;
			z-index: -1;
			}

#pagenation{
	overflow: hidden;
	}
	#pagenation ul,
	#pagenation ol{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		list-style: none;
		margin: -0.5em;
		}
	#pagenation li{
		margin: 0.5em;
		}
	#pagenation a{
		display: flex;
		align-items: center;
		justify-content: center;
		height: 2.6em;
		color: inherit;
		text-decoration: none;
		}
		#pagenation a:not([rel]){
			min-width: 2.6em;
			padding: 0 0.3em;
			border: 1px solid #aeaeae;
			}
		#pagenation a[rel]{
			color: inherit;
			}
	#pagenation [rel="prev"]{}
		#pagenation [rel="prev"] i{
			margin-right: 0.5em;
			transform: scale(-1, 1);
			}
	#pagenation [rel="next"]{}
		#pagenation [rel="next"] i{
			margin-left: 0.5em;
			}
	#pagenation .lsc-current-page,
	#pagenation .now{
		pointer-events: none;
		}
		#pagenation .lsc-current-page:lang(ja),
		#pagenation .now:lang(ja){
			border-color: currentColor;
			box-shadow: 0 0 0 1px currentColor inset;
			}
		#pagenation .lsc-current-page:not(:lang(ja)),
		#pagenation .now:not(:lang(ja)){
			background: #fae3e1;
			}

.wrap{
	margin-left: auto;
	margin-right: auto;
	}

.headline{
	margin: 0;
	padding: 0em;
	font-weight: 500;
	line-height: 1.4em;
	}
	.headline.min{}
	.headline.min:not(:lang(ja)){
		font-weight: bold;
		}
	.headline.min:not(:lang(en)){
		letter-spacing: 0.1em;
		}

.title{
	margin: 0;
	padding: 0em;
	font-weight: 500;
	line-height: 1.4em;
	}
	.title.point{
		position: relative;
		padding-left: calc(4px + 0.5em);
		}
		.title.point:before{
			content: "";
			position: absolute;
			top: 0.2em;
			left: 0;
			width: 4px;
			height: 1em;
			background: #16377a;
			}
		.title.point:not(:lang(ja)):before{
			background: #fe9b97;
			}
	.title:not(:lang(ja)){
		font-weight: bold;
		}

.subTitle{
	margin: 0;
	padding: 0em;
	font-weight: 500;
	line-height: 1.4em;
	}
	.subTitle.point{
		position: relative;
		padding-left: calc(4px + 0.5em);
		}
		.subTitle.point:before{
			content: "";
			position: absolute;
			top: 0.2em;
			left: 0;
			width: 4px;
			height: 1em;
			background: #16377a;
			}
	.subTitle.point:not(:lang(ja)):before{
		background: #fe9b97;
		}
	.subTitle:not(:lang(ja)){
		font-weight: bold;
		}

.buttonSet{
	display: flex;
	grid-gap: 1em;
	}
	.buttonSet li{
		display: flex;
		}
		.buttonSet li a,
		.buttonSet li button{
			width: 100%;
			}

.linkBut{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	grid-gap: 0.5em;
	padding: 0.8em 1em;
	background: none;
	border: 1px solid #16377a;
	color: inherit;
	fill: currentColor;
	font-family: inherit;
	font-size:  inherit;
	font-weight: normal;
	text-decoration: none;
	line-height: 1.4em;
	}
	.linkBut:not(:lang(ja)){
		border-color: #bb000b;
		}
	.linkBut:hover{
		background: #cedaf3;
		border-color: transparent;
		color: inherit;
		}
	.linkBut:hover:not(:lang(ja)){
		background: #fae3e1;
		}
	.linkBut i{
		display: inline-flex;
		align-items: center;
		justify-content: center;
		}
	.linkBut.prev,
	.linkBut.next{
		position: relative;
		}
		.linkBut.prev i,
		.linkBut.next i{
			position: absolute;
			top: calc(50% - 0.5em);
			}
	.linkBut.prev{
		padding-left: 2.5em;
		}
		.linkBut.prev i{
			left: 0.5em;
			}
	.linkBut.next{
		padding-right: 2.5em;
		}
	.linkBut.next i{
		right: 0.5em;
		}

.list{
	list-style: none;
	}
	.list > li{
		line-height: 1.4em;
		text-indent: 0;
		}
		.list > li > .list{
			margin-top: 0.5em;
			}
			.list > li:not(:last-child){}
				.list > li:not(:last-child) > .list:last-child{
					margin-bottom: 1em;
					}
		.list > li > .list.count{}
			.list > li > .list.count > li{
				padding-left: 2.8em;
				}
				.list > li > .list.count > li:before{
					content: "（"counter(count)"）";
					}
	.list > li+li{
		margin-top: 0.5em;
		}
	.list.point{}
		.list.point > li{
			position: relative;
			padding-left: 1.2em;
			}
			.list.point > li:before{
				content: "●";
				position: absolute;
				top: 0.1em;
				left: 0;
				color: #16377a;
				transform: scale(0.5);
				}
	.list.notes{}
		.list.notes > li{
			padding-left: 1em;
			text-indent: -1em;
			}
	.list.count{
		counter-reset: count;
		}
		.list.count > li{
			position: relative;
			padding-left: 1.5em;
			}
			.list.count > li:before{
				counter-increment: count;
				content: counter(count)".";
				position: absolute;
				left: 0;
				}

.table{}
	table.table{
		width: 100%;
		border-collapse: collapse;
		}
		table.table thead{
			background: rgba(0, 104, 182, 0.1);
			}
		table.table th,
		table.table td{
			padding: 0.8em;
			border: 1px solid #ccc;
			line-height: 1.4em;
			vertical-align: middle;
			}
		table.table th{
			background: rgba(0, 0, 0, 0.05);
			}
	dl.table{}
		dl.table > dt,
		dl.table > dd{
			padding: 0.8em;
			line-height: 1.4em;
			}
		dl.table > dt{
			background: rgba(0, 104, 182, 0.1);
			}
		dl.table > dd{
			background: rgba(0, 0, 0, 0.05);
			}

.topicsList{}
	.topicsList dl{
		position: relative;
		display: flex;
		align-items: center;
		padding-right: 3em !important;
		z-index: 1;
		}
	.topicsList *{
		pointer-events: none;
		}
	.topicsList dl+dl{
		border-top: 1px solid #cecece;
		}
	.topicsList dt{
		font-weight: normal;
		line-height: 1.4em;
		order: 1;
		}
	.topicsList dd{}
		.topicsList dd time{
			color: #4d4d4d;
			}
		.topicsList dd ul{
			display: flex;
			}
		.topicsList dd li{
			display: flex;
			align-items: center;
			justify-content: center;
			width: 6em;
			height: 2em;
			font-size: 0.6em;
			text-align: center;
			text-transform: uppercase;
			border: 1px solid currentColor;
			}
			.topicsList dd li.tagNew{
				background: #fff;
				color: #e55a54;
				}
			.topicsList dd li.tagCheck{
				background: #16377a;
				border-color: transparent;
				color: #fff;
				}
		.topicsList dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			color: transparent;
			fill: #666;
			pointer-events: all;
			z-index: -1;
			}
			.topicsList dd a:hover{
				background: #cedaf3;
				}
			.topicsList dd a i{
				position: absolute;
				top: calc(50% - 0.5em);
				right: 1em;
				}
	.topicsList p{
		padding: 10% 0;
		color: #4d4d4d;
		}

.articleList{}
	.articleList dl{
		position: relative;
		display: flex;
		flex-direction: column;
		}
		.articleList dl:hover{}
			.articleList dl:hover dt+dd{
				opacity: 0.5;
				}
	.articleList dt{
		font-weight: 500;
		line-height: 1.4em;
		}
	.articleList dt:not(:lang(ja)){
		font-weight: 600;
		}
	.articleList dd{}
		.articleList dd:empty{
			display: none;
			}
		.articleList dd:nth-of-type(1){
			margin-bottom: 1em;
			transition: opacity 0.2s ease-out;
			order: -1;
			}
		.articleList dd:nth-of-type(2):not(:last-child){
			align-self: flex-start;
			margin-bottom: 1em;
			padding: 0.4em;
			border: 1px solid #666666;
			font-size: 0.8em;
			order: -1;
			}
		.articleList dd:nth-of-type(3):not(:last-child){
			margin-top: 1em;
			color: #666666;
			font-size: 0.8em;
			line-height: 1.4em;
			}
		.articleList dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0;
			}
	.articleList .thumb{
		padding-top: 100%;
		}

.spotList{}
	.spotList dl{
		position: relative;
		display: flex;
		flex-direction: column;
		}
		.spotList dl:hover{}
			.spotList dl:hover dt+dd{
				opacity: 0.5;
				}
	.spotList dt{
		position: relative;
		margin-top: -3em;
		padding: 1em;
		background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.8));
		color: #fff;
		font-weight: 500;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
		z-index: 1;
		}
		.spotList dt:not(:lang(ja)){
			font-weight: 600;
			}
		.spotList dd{}
		.spotList dd:empty{
			display: none;
			}
		.spotList dd:nth-of-type(1){
			transition: opacity 0.2s ease-out;
			order: -1;
			}
		.spotList dd:nth-of-type(2):not(:last-child){
			display: flex;
			flex-direction: column;
			margin: 0.8em 0;
			}
		.spotList dd:nth-of-type(3):not(:last-child){
			color: #666666;
			font-size: 0.8em;
			line-height: 1.4em;
			}
		.spotList dd time{
			position: relative;
			display: block;
			margin-top: 0.8em;
			padding-left: 1.2em;
			white-space: nowrap;
			text-overflow: ellipsis;
			font-weight: 500;
			overflow: hidden;
			}
			.spotList dd time:not(:lang(ja)){
				font-weight: 600;
				}
			.spotList dd time i{
				position: absolute;
				top: 0;
				left: 0;
				transform: scale(0.8);
				}
		.spotList dd ul{
			display: flex;
			flex-wrap: wrap;
			}
		.spotList dd li{
			color: #16377a;
			font-size: 0.8em;
			}
			.spotList dd li:lang(ja){}
				.spotList dd li:lang(ja):after{
					content: "エリア";
					}
			.spotList dd li:not(:lang(ja)){
				color: #bb000b;
				}
			.spotList dd li+li:before{
				content: "/";
				margin: 0 0.5em;
				}
		.spotList dd a{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			opacity: 0;
			z-index: 2;
			}
	.spotList .thumb{
		padding-top: 100%;
		}

.areaMap{}
	.areaMap text{}
		.areaMap text[transform]{
			font-size: 13px;
			pointer-events: none;
			}
	.areaMap a,
	.areaMap a:hover{
		color: inherit;
		text-decoration: none;
		}
		.areaMap a text{
			font-size: 18px;
			font-weight: 700;
			letter-spacing: 0.01em;
			}
	.areaMap:not(:lang(ja)){}
		.areaMap:not(:lang(ja)) a{}
			.areaMap:not(:lang(ja)) a use{
				fill: #f5f5f5;
				stroke: #c7c7c7;
				}
			.areaMap:not(:lang(ja)) a rect{
				fill: #fae3e1;
				}
			.areaMap:not(:lang(ja)) a.select{}
				.areaMap:not(:lang(ja)) a.select use{
					fill: #fae3e1;
					}
				.areaMap:not(:lang(ja)) a.select text{
					fill: #fff;
					}
				.areaMap:not(:lang(ja)) a.select rect{
					fill: #b4000b;
					}
	.areaMap:lang(ja){}
		.areaMap:lang(ja) a{}
			.areaMap:lang(ja) a:not(.select) use{
				fill: #f3f5fa;
				stroke: #aeaeae;
				}
			.areaMap:lang(ja) a text{
				font-family: YuGothic, "Yu Gothic medium", 'Noto Sans JP', sans-serif;
				fill: #fff;
				}
		.areaMap:lang(ja) [data-area="nanbu"]{}
			.areaMap:lang(ja) [data-area="nanbu"] use{
				fill: #cbeccb;
				stroke: #85b285;
				}
			.areaMap:lang(ja) [data-area="nanbu"] rect{
				fill: #85b285;
				}
		.areaMap:lang(ja) [data-area="simokita"]{}
			.areaMap:lang(ja) [data-area="simokita"] use{
				fill: #b5e2e0;
				stroke: #7bb4b2;
				}
			.areaMap:lang(ja) [data-area="simokita"] rect{
				fill: #7bb4b2;
				}
		.areaMap:lang(ja) [data-area="tsugaru"]{}
			.areaMap:lang(ja) [data-area="tsugaru"] use{
				fill:#ffe94d;
				stroke:#b7a733;
				}
			.areaMap:lang(ja) [data-area="tsugaru"] rect{
				fill: #b7a733;
				}

.customSearch{}
	.customSearch *{
		padding: 0;
		margin: 0;
		background: none;
		border: none;
		font-size: inherit;
		color: inherit;
		}
	.customSearch .gsc-control-cse{
		padding: 0;
		}
	.customSearch .gsc-search-box{
		margin: 0;
		font-size: 16px;
		}
		.customSearch .gsc-search-box *{
			padding: 0;
			margin: 0;
			font-size: inherit;
			color: inherit;
			}
		.customSearch .gsc-search-box td{
			padding: 0 !important;
			margin: 0 !important;
			}
	.customSearch .gsc-input{
		width: calc(100% - 2.4em);
		}
	.customSearch .gsc-input-box{
		position: relative;
		border: 1px solid #bcbcbc;
		border-radius: 0;
		}
		.customSearch .gsc-input-box input{
			height: 2.4em !important;
			margin: -1px !important;
			padding-left: 0.5em !important;
			background-color: transparent !important;
			background-position: 0.5em center !important;
			}
	.customSearch .gsst_a{
		width: 1em;
		}
	.customSearch .gsc-search-button{
		width: 2.4em;
		height: 2.4em;
		background: #16377a;
		border: none;
		border-radius: 0;
		padding: 0;
		}
		.customSearch .gsc-search-button:not(:lang(ja)){
			background: #bb000b;
			}

.slick-slider{
	opacity: 0;
	transition: opacity 0.2s ease-out;
	}
.slick-initialized{
	opacity: 1;
	}
.slick-arrow{
	position: relative;
	width: 3em;
	height: 3em;
	border: 1px solid #9f9f9f;
	border-radius: 100%;
	fill: currentColor;
	cursor: pointer;
	}
	.slick-arrow:hover{
		border: 1px solid transparent;
		background: #000;
		color: #fff;
		}
	.slick-arrow svg{
		position: absolute;
		top: 25%;
		left: 25%;
		width: 50%;
		height: 50%;
		}

.googlemap{
	position: relative;
	}
	.googlemap iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		}
	.googlemap div+div{
		margin-top: auto;
		}

.infoWin{}
	.infoWin dl{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		max-width: 300px;
		}
	.infoWin dt{
		width: 100%;
		line-height: 1.4em;
		font-weight: normal;
		}
	.infoWin dt+dd{
		width: 100%;
		margin-top: 1em;
		}
		.infoWin dt+dd img{
			display: block;
			width: 100%;
			height: auto;
			}
	.infoWin dd+dd{
		margin-top: 1em;
		width: calc(50% - 0.5em);
		}
	.infoWin dd{}
		.infoWin dd a{
			display: block;
			padding: 0.8em;
			background: #000;
			color: #fff;
			font-size: 0.8em;
			text-align: center;
			text-decoration: none;
			}
		.infoWin dd:nth-of-type(2){}
			.infoWin dd:nth-of-type(2) a{
				background: #16377a;
				}
			.infoWin dd:nth-of-type(2) a:not(:lang(ja)){
				background: #bb000b;
				}
		.infoWin dd:nth-of-type(3){
			margin-left: 1em;
			}
			.infoWin dd:nth-of-type(3) a{
				background: #666;
				}

.youtube{
	position: relative;
	padding-top: 56%;
	}
	.youtube iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		}

.anchor{
	position: absolute;
	opacity: 0;
	}





/* for all */
@media (max-width: 1199.98px) {
/*1199px以下*/
}
@media (max-width: 991.98px) {
/*991px以下*/
#body{}
	#body:not(.nav){}
		#body:not(.nav) #nav{
			left: 100vw;
			}
	#body:not(.scrollTop){}
		#body:not(.scrollTop) #header #navButton{
			background: rgba(255,255,255,0.5);
			}
#header{
	justify-content: center;
	}
	#header #navButton{
		color: #16377a;
		transition: all 0.2s ease-out;
		}
		#header #navButton:not(:lang(ja)){
			color: #bb000b;
			}
		#header #navButton.fixed{
			position: fixed;
			}
#nav{
	padding-bottom: constant(safe-area-inset-bottom);
	padding-bottom: env(safe-area-inset-bottom);
	transition: left 0.2s ease-out;
	}
	#nav > div{
		position: relative;
		flex-direction: column;
		}
	#nav #siteName{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		}
	#nav #navButton{
		order: -1;
		}
	#nav .wrap{
		margin-top: 2em;
		}
#floatingNav{
	display: none;
	}
#bulletin{
	padding-top: 6em;
	}
}


/* for mobile */
@media (max-width: 767.98px) {
/*767px以下*/
main > *,
article,
article section,
article nav,
article header,
article footer{
	padding-top: 2em;
	padding-bottom: 2em;
	}
#nav{}
	#nav .wrap{
		grid-gap: 2em;
		padding-bottom: 2em;
		}
#pagePath{
	white-space: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
	}
#footer{
	padding: 2em 0;
	}
	#footer .wrap{
		grid-gap: 2em;
		}
#bulletin{}
	#bulletin .wrap{
		padding: 1em;
		}
#subject{
	padding: 2em 0;
	}
#pageTab{}
	#pageTab a{
		padding: 1em;
		padding-right: 1.5em;
		}
.wrap{
	width: 90vw;
	}
.headline{
	font-size: 1.5em;
	}
.title{
	font-size: 1.3em;
	}
.subTitle{
	font-size: 1.1em;
	}
.topicsList{}
	.topicsList dl{
		flex-wrap: wrap;
		padding: 1em 0;
		}
	.topicsList dt{
		width: 100%;
		margin-top: 1em;
		}
	.topicsList dd{}
		.topicsList dd ul{
			margin-left: 1em;
			}
		.topicsList dd li+li{
			margin-left: 0.5em;
			}
.anchor{
	margin-top: -3em;
	}
}
@media (max-width: 767.98px) and (orientation:portrait) {
/*767px以下縦向き*/
body{
	font-size: 3.8vw;
	}
#navGlobal{}
	#navGlobal dd{
		width: 100%;
		}
#navAbout{}
	#navAbout dd{
		width: 100%;
		}
#fLogo{
	grid-row: 1;
	justify-self: center;
	}
#fSns{
	grid-row: 2;
	}
	#fSns ul{
		justify-content: center;
		margin: -1em 0;
		}
#fTooltip{}
	#fTooltip ul{
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 1em;
		}
#fNav{}
	#fNav:lang(ja){
		grid-row: 3;
		}
	#fNav li{}
		#fNav li a{
			justify-content: space-between;
			}
#fNavS{}
	#fNavS ul{
		flex-direction: column;
		grid-gap: 1em;
		}
#bulletin{}

	#bulletin a{
		width: 100%;
		}
	#bulletin dd{}
		#bulletin dd:nth-of-type(2):not(:last-child){
			order: 1;
			}
		#bulletin dd:last-child{
			display: flex;
			grid-gap: 0.5em;
			margin-left: auto;
			}
	#bulletin .slick-slider{}
		#bulletin .slick-slider > .slick-arrow{
			display: none !important;
			}
.buttonSet{
	flex-direction: column;
	align-items: stretch;
	padding: 0 1.5em;
	}
.googlemap{
	height: 100vw;
	}
}
@media (max-width: 767.98px) and (orientation:landscape) {
/*767px以下横向き*/
body{
	font-size: 2.2vw;
	}
#footer{}
	#footer .wrap:lang(ja){
		grid-column-gap: 3em;
		}
#fNav{}
	#fNav ul{}
		#fNav ul:lang(ja){
			grid-template-columns: repeat(2, 1fr);
			}
	#fNav li{}
		#fNav li:lang(ja):nth-of-type(even){}
			#fNav li:lang(ja):nth-of-type(even):before{
				content: "";
				}
		#fNav li+li:not(:lang(ja)){}
			#fNav li+li:not(:lang(ja)):before{
				content: "";
				}
#bulletin{}
	#bulletin .slick-list{
		width: calc(100% - 6em);
		}
	#bulletin .slick-arrow{
		width: 2em;
		height: 2em;
		}
.googlemap{
	height: 70vh;
	}
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) {
/*767px以下 横向き, 768px以上,*/
#navGlobal{}
	#navGlobal ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		}
	#navGlobal li{
		width: calc(50% - 1em);
		}
		#navGlobal li:nth-of-type(-n+2){
			margin-top: 0;
			}
#footer{}
	#footer:lang(ja) #fLogo{
		justify-self: center;
		}
	#footer:lang(ja) #fTooltip{}
		#footer:lang(ja) #fTooltip ul{
			display: flex;
			justify-content: center;
			grid-gap: 2em;
			}
	#footer:not(:lang(ja)){}
		#footer:not(:lang(ja)) .wrap{
			grid-template-columns: 1fr 1fr;
			column-gap: 4em;
			}
		#footer:not(:lang(ja)) #fLogo{
			grid-column: 1;
			grid-row: 1;
			justify-self: end;
			align-self: start;
			}
		#footer:not(:lang(ja)) #fSns{
			grid-column: 1;
			grid-row: 1;
			justify-self: end;
			align-self: end;
			}
	#footer:not(:lang(ja)) #fTooltip{
		grid-column: 2;
		}
		#footer:not(:lang(ja)) #fTooltip li+li{
			margin-top: 1em;
			}
	#footer:not(:lang(ja)) #fNav{
		grid-column: 1 / 3;
		}
		#footer:not(:lang(ja)) #fNav ul{
			display: grid;
			grid-template-columns: repeat(3, 1fr);
			}
	#footer:not(:lang(ja)) #fNavS{
		grid-column: 1 / 3;
		}
#fNav{}
	#fNav ul{
		display: grid;
		}
	#fNav li{}
		#fNav li a{
			padding: 1em;
			}
		#fNav li i{
			display: none;
			}
#fNavS{}
	#fNavS li+li{}
		#fNavS li+li:before{
			content: "";
			}
#bulletin{}
	#bulletin a{
		min-width: 20em;
		}
	#bulletin dd{}
		#bulletin dd:last-child{
			display: none;
			}
.buttonSet{
	justify-content: center;
	}
.table{}
	dl.table{
		display: grid;
		grid-template-columns: 12em calc(100% - 12em);
		grid-gap: 1px 0;
		}
}
@media (max-width: 767.98px) and (orientation:landscape), (min-width: 768px) and (max-width: 991.98px) {
/*767px以下 横向き, 768px～991px*/
#nav{}
	#nav .wrap{
		margin-top: 2em;
		max-width: calc(100% - 10em);
		}
#footer{}
	#footer .wrap:lang((ja)){
		grid-gap: 0 3em;
		}
}


/* for tablet */
@media (min-width: 768px) {
/*768px以上*/
html{
	font-size: 62.5%;
	}
#body{}
	#body:not(.nav){}
		#body:not(.nav) #nav{
			pointer-events: none;
			opacity: 0;
			}
#nav{
	transition: opacity 0.2s ease-out;
	}
	#nav .wrap{
		grid-gap: 2em;
		padding-bottom: 2em;
		}
#pagePath{}
	#pagePath ul{
		flex-wrap: wrap;
		grid-gap: 0.3em 0;
		}
#fNav{}
	#fNav li+li{}
		#fNav li+li:before{
			content: "";
			}
#bulletin{}
	#bulletin .wrap{
		padding: 1.5em;
		}
	#bulletin .slick-list{
		width: calc(100% - 8em);
		}
	#bulletin .slick-arrow{
		width: 3em;
		height: 3em;
		}
#pageTab{}
	#pageTab a{
		padding: 1em 1.5em;
		padding-right: 2em;
		}
.headline{
	font-size: 1.8em;
	}
.title{
	font-size: 1.6em;
	}
.subTitle{
	font-size: 1.2em;
	}
.topicsList{}
	.topicsList dl{
		padding: 1.5em 0;
		}
	.topicsList dt{
		width: calc(100% - 12em);
		margin-left: auto;
		}
	.topicsList dd{}
		.topicsList dd ul{
			margin-left: 1.5em;
			flex-direction: column;
			}
		.topicsList dd li+li{
			margin-top: 0.5em;
			}
#fTooltip ul {
	min-height: 7.5em;
	}
}
@media (min-width: 768px) and (max-width: 1199.98px) {
/*768px～1199px*/
body{
	font-size: 1.4rem;
	}
}
@media (min-width: 768px) and (max-width: 991.98px) {
/*768px～991px*/
main > *,
article,
article section,
article nav,
article header,
article footer{
	padding-top: 3em;
	padding-bottom: 3em;
	}
#footer{
	padding: 3em 0;
	}
	#footer .wrap{
		grid-gap: 3em;
		}
#fNav{}
	#fNav ul:lang(ja){
		grid-template-columns: repeat(4, auto);
		}
#bulletin{}
	#bulletin .wrap{
		border-width: 3px;
		}
#subject{
	padding: 3em 0;
	}
.wrap{
	width: 724px;
	}
.googlemap{
	height: 30em;
	}
.anchor{
	margin-top: -3em;
	}
}


/* for PC */
@media (min-width: 992px) {
/*992px以上*/
main > *,
article,
article section,
article nav,
article header,
article footer{
	padding-top: 4em;
	padding-bottom: 4em;
	}
#header{
	display: none;
	}
#nav{}
	#nav #navButton{
		margin-left: -5em;
		}
	#nav .wrap{
		max-width: 760px;
		}
#navSearch{
	align-self: center;
	width: 560px;
	margin-top: 1.5em;
	}
#footer{
	padding: 4em 0;
	}
	#footer .wrap{
		grid-gap: 2em;
		}
#fNav{}
	#fNav ul:lang(ja){
		grid-template-columns: repeat(4, 1fr);
		}
#floatingNav{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	display: flex;
	align-items: center;
	width: 100%;
	height: 6em;
	padding: 0 5em;
	background: #fff;
	transition: top 0.2s ease-out;
	order: -1;
 	z-index: 100;
	}
	#floatingNav #siteName,
	#floatingNav #navButton{
		position: absolute;
		top: calc(50% - 2.5em);
		}
	#floatingNav #siteName{
		left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		height: 5em;
		}
	#floatingNav #navButton{
		right: 0;
		}
	#floatingNav .wrap{
		display: flex;
		flex-wrap: wrap;
		align-content: space-between;
		align-items: center;
		justify-content: flex-end;
		height: inherit;
		padding-top: 1em;
		}
#floatingNavGlobal{
	width: 100%;
	order: 1;
	}
	#floatingNavGlobal dl{
		display: flex;
		justify-content: flex-end;
		margin-right: -0.8em;
		}
	#floatingNavGlobal dt{
		display: none;
		}
	#floatingNavGlobal dd{}
		#floatingNavGlobal dd:lang(ja):last-child{
			display: none;
			}
		#floatingNavGlobal dd a{
			display: block;
			padding: 0.8em;
			transform: rotate(0.05deg);
			}
		#floatingNavGlobal dd a:hover{
			background: #cedaf3;
			color: #16377a;
			}
		#floatingNavGlobal dd a:hover:not(:lang(ja)){
			background: #fae3e1;
			color: #bb000b;
			}
	#floatingNavGlobal .active{
		background: #cedaf3;
		color: #16377a;
		}
	#floatingNavGlobal .active:not(:lang(ja)){
		background: #fae3e1;
		color: #bb000b;
		}
#floatingNavExtra{}
	#floatingNavExtra ul{
		display: flex;
		}
	#floatingNavExtra li{
		margin-right: 1em;
		}
	#floatingNavExtra a{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 2em;
		padding: 0 1.5em;
		padding-left: 3em;
		border: 1px solid #a9a9a9;
		fill: #4d4d4d;
		font-size: 0.8em;
		transform: rotate(0.05deg);
		}
		#floatingNavExtra a:hover{
			background: #cedaf3;
			color: #16377a;
			fill: currentColor;
			}
		#floatingNavExtra a:hover:not(:lang(ja)){
			background: #fae3e1;
			color: #bb000b;
			}
	#floatingNavExtra i{
		position: absolute;
		top: calc(50% - 0.5em);
		left: 0.5em;
		}
#floatingNavLanguage{
	position: relative;
	width: 8em;
	align-self: stretch;
	}
	#floatingNavLanguage dl{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		background: #fff;
		font-size: 0.8em;
		text-align: center;
		transition: all 0.2s ease-out;
		cursor: pointer;
		overflow: hidden;
		z-index: 10;
		}
		#floatingNavLanguage dl:hover{
			height: calc(2em * 6);
			}
	#floatingNavLanguage dt,
	#floatingNavLanguage dd{
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 2em;
		border: 1px solid #b5b5b5;
		transform: rotate(0.05deg);
		}
	#floatingNavLanguage dt{
		padding: 0 1.5em;
		padding-left: 3em;
		fill: #4d4d4d;
		font-weight: normal;
		}
		#floatingNavLanguage dt i{
			position: absolute;
			top: calc(50% - 0.5em);
			left: 0.5em;
			}
	#floatingNavLanguage dd{
		border-top: none;
		}
	#floatingNavLanguage a{
		position: absolute;
		top: 0;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 100%;
		padding: 0 1.5em;
		}
		#floatingNavLanguage a:hover{
			background: #cedaf3;
			color: #16377a;
			}
		#floatingNavLanguage a:hover:not(:lang(ja)){
			background: #fae3e1;
			color: #bb000b;
			}
#bulletin{}
	#bulletin .wrap{
		border-width: 4px;
		}
#subject{
	padding: 4em 0;
	}
.min{}
	.min:lang(ja){
		font-family: 'YuMincho','Yu Mincho','游明朝体', 'Noto Serif JP', serif;
		}
.googlemap{
	height: 40em;
	}
.anchor{
	margin-top: calc(-4em - 6em);
	}
}
@media (min-width: 992px) and (max-width: 1199.98px) {
/*992px～1199px*/
#nav{}
	#nav #siteName{
		left: calc(50% - 470px);
		}
#floatingNav{}
	#floatingNav #siteName{
		left: calc(50% - 470px);
		}
.wrap{
	width: 940px;
	}
}
@media (min-width: 1200px) {
/*1200px以上*/
body{
	font-size: 1.6rem;
	}
#nav{}
	#nav #siteName{
		left: calc(50% - 570px);
		}
#floatingNav{}
	#floatingNav #siteName{
		left: calc(50% - 570px);
		}
.wrap{
	width: 1140px;
	}
}





