/* CSS Document */
@import url('//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap');
/* Noto JP
@import url('//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('//fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap');
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Noto Serif JP', serif;
*/

/* LINE Seed JP 
font-family: 'LINE Seed JP', serif;

@font-face {
	font-family: "LINE Seed JP";
	src: url("/nyukai/common/fonts/LINE_Seed_JP/WOFF2/LINESeedJP_OTF_Thd.woff2") format("woff2");
	font-weight: 100;
}
@font-face {
	font-family: "LINE Seed JP";
	src: url("/nyukai/common/fonts/LINE_Seed_JP/WOFF2/LINESeedJP_OTF_Rg.woff2") format("woff2");
	font-weight: 400;
}
@font-face {
	font-family: "LINE Seed JP";
	src: url("/nyukai/common/fonts/LINE_Seed_JP/WOFF2/LINESeedJP_OTF_Bd.woff2") format("woff2");
	font-weight: 700;
}
@font-face {
	font-family: "LINE Seed JP";
	src: url("/nyukai/common/fonts/LINE_Seed_JP/WOFF2/LINESeedJP_OTF_Eb.woff2") format("woff2");
	font-weight: 900;
}
*/

:root{

	--color: #1a1a1c;
	--color--font-rgb: 26, 26, 28;
	--color-bg: #f8f8f8;
	--color-bg-rgb: 248, 248, 248;
	
	--color-theme: #00426c;
	--color-theme-rgb: 0, 66, 108;
	--color-apply: #0066ff;
	--color-apply-rgb: 0, 102, 255;
	--color-lightBlue: #e4eff4;
	--color-lightBlue-rgb: 228, 239, 244;
	--color-red: #b91c00;
	--color-red-rgb: 185, 28, 0;
	--color-border: #999796;
	--color-border-rgb: 154, 153, 151;

	--font: 'Noto Sans JP', 'BIZ UDPGothic', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	/*
	webフォント未使用セット
	--font: 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	*/
	--wrap-space: 24px;
	--wrap-fit: calc(100% - (var(--wrap-space) * 2));
	--wrap-max: 1000px;
	--wrap: min(var(--wrap-fit), var(--wrap-max));
	
	--space: clamp(32px, 7.2vw, 64px);
}

html{
	scroll-behavior: smooth;
	scroll-padding-top: 56px;
}

body{
	color: var(--color);
	font: 400 16px var(--font);
	line-height: 1.65;
	overflow-wrap: anywhere;
	overflow-x: hidden;
	min-width: 350px;
	}
::selection{
	background: var(--color-theme);
	color: #fff;
}
::-moz-selection{
	background: var(--color-theme);
	color: #fff;
}
_:-ms-input-placeholder, :root body{
	visibility: hidden;
}
_::content, _:future, body:not(*:root) {
	/* Chromeのハック */
	/*フォント細いって言われたとき
	font-weight: 500;
	*/
}
_::-webkit-full-page-media, _:future, :root body{
	/* safariのハック */
}
@-moz-document url-prefix(){
	/* Firefoxのハック */
	.xxx{

	}
}

a{
	color: inherit;
	.done &{
		transition-property: color, text-decoration, background, background-color, background-size, border, border-color, box-shadow, filter, opacity;
		transition-duration: 0.2s;
		transition-timing-function: ease-out;
	}
}
a:hover{
	opacity: .8;
}

wbr{
	&:not(:lang(ja)){
		display: none;
	}
}

h2,h3{
	letter-spacing: 1.5px;
}

header{
	border-bottom: 40px solid var(--color-theme);
	position: relative;
	}

main{
	padding-bottom: var(--space);
	}

:where(a, button):focus-visible{
	outline: var(--color-theme) auto 2px;
	outline-offset: 2px;
}

:where(input, textarea, select){
	background-color: transparent;
	accent-color: var(--color-theme);
	caret-color: var(--color-theme);
}

:is(input[type="checkbox"], input[type="radio"]){
	&:checked{
		background-color: var(--color-theme);
	}
}

button{
	display: grid;
	align-items: center;
	min-height: 48px;
	padding: 8px 16px;
	background: black;
	color: white;
	text-align: center;
	}

#wrapper{
	display: grid;
	grid-template-rows: auto 1fr;
	min-height: 100vh;
	}
	#wrapper>*>*{
		width: var(--wrap);
		margin: 0 auto;
		}
	#wrapper #header{
		position: sticky;
		top: 0;
		z-index: 110;
		}
	#wrapper #nav{
		z-index: 120;
		}
	#wrapper #pagePath,
	#wrapper #footer,
	#wrapper #pageTop{
		order: 10;
		}
	#wrapper #navButton{
		grid-column: 1;
		grid-row: 1;
		justify-self: end;
		position: sticky;
		top: 0;
		z-index: 120;
		}
	@media (min-width: 992px) {
		#wrapper #nav{
			grid-column: 1;
			grid-row: 1;
			justify-self: end;
			position: sticky;
			top: 0;
			}
		}

#main{}
	#main>*{
		width: auto;
		}
		#main>*>*{
			width: var(--wrap);
			margin: 0 auto;
			}
		#main section{
			display: grid;
			grid-gap: clamp(24px, 4.8vw, 32px) 0;
			margin-top: clamp(32px, 7.2vw, 48px);
			}
		#main section h3+*{
			margin-top: 0;
			}

#header{}
	#header{
		display: flex;
		align-items: center;
		min-height: 80px;
		padding-left: 20px;
		background: #fff;
		overflow-y: clip;
		font-weight: bold;
		}
		#header>a{
			grid-template-columns: 32px auto auto 28px;
			grid-gap: 0;
			background: var(--color-apply);
			letter-spacing: 2px;
			margin-left: auto;
			margin-right: 100px;
			font-size: min(3.8vw, 16px);
			}
			#header>a:before{
				aspect-ratio: 1;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M2,20V4h20v16H2ZM9.4,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM6.9,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM4.4,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM3.5,18.5h17v-10H3.5v10ZM15.501,11.8l-4.2,4-3-2.7,1.1-1.1,1.9,1.7,3.2-3,1,1.1Z"/></svg>') center no-repeat;
				-webkit-mask-size: contain; 
				width: 24px;
				margin-top: 2px;
				}
			#header>a:after{
				aspect-ratio: 1;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M9.163 4.516c0.418 0.408 4.502 4.695 4.502 4.695 0.223 0.219 0.335 0.504 0.335 0.789s-0.112 0.57-0.335 0.787c0 0-4.084 4.289-4.502 4.695-0.418 0.408-1.17 0.436-1.615 0-0.446-0.434-0.481-1.041 0-1.574l3.747-3.908-3.747-3.908c-0.481-0.533-0.446-1.141 0-1.576s1.197-0.409 1.615 0z" /></svg>') center no-repeat;
				-webkit-mask-size: contain;
				width: min(5vw, 20px);
				margin-top: 2px;
				justify-self: right;
				}
			#header .figIcon {
				position: absolute;
				bottom: -5px;
				right: 0;
				}
			#header .figIcon img{
				width: 70px;
				}
			#hHands {
				position: absolute;
				bottom: 0;
				left: 50%;
				transform: translateX(-50%);
				text-align: right;
				z-index: 150;
				height: 0;
				}
			#hHands img{
				width: 50px;
				margin-right: 15px;
				transform: translateY(-20px);
				}
	@media (max-width: 991.98px) {
		#header>a{
			grid-template-columns: 32px auto 28px;
			}
		}
	@media (max-width: 767.98px) {
		#header{
			padding-left: 0;
			}
		#header>a {
			grid-template-columns: auto 20px;
			margin-right: 0;
			padding: 10px;
			letter-spacing: 1px;
			}
			#header>a:before{
				display: none;
				}
			#header>a span{
				display: none;
				}
		#header .figIcon,
		#hHands{
			display: none;
			}
		}

#siteName{}
	#siteName a{
		display: grid;
		background: url('/common/images/logoType.svg') left center no-repeat;
		background-size: contain;
		transition: none;
		padding-left: 70px;
		line-height: 1.5;
		font-size: min(3.8vw, 16px);
		}
	#siteName span{
		color: var(--color-theme);
		border: 1px solid var(--color-theme);
		margin-left: 16px;
		padding: 4px 8px;
		border-radius: 4px;
		grid-column: 2 / 3;
		height: fit-content;
		align-self: center;
		}
	@media (max-width: 575.98px) {
		#siteName span{display: none;}
		#siteName a {
			text-align: left;
			padding-left: 3.5em;
			background-size: 25%;
			}
		}


	@keyframes navButton-bar01_on{
		0% {
			transform: translateY(0);
			}
		50% {
			transform: translateY(6px) rotate(0);
			}
		100% {
			transform: translateY(6px) rotate(45deg);
			}
		}
	@keyframes navButton-bar01_off{
		0% {
			transform: translateY(6px) rotate(45deg);
			}
		50% {
			transform: translateY(6px) rotate(0);
			}
		100% {
			transform: translateY(0);
			}
		}
	@keyframes navButton-bar02_on{
		0% {
			transform: scaleX(1);
			}
		50% {
			transform: scaleX(1);
			}
		51% {
			transform: scaleX(0);
			}
		100% {
			transform: scaleX(0);
			}
		}
	@keyframes navButton-bar02_off{
		0% {
			transform: scaleX(0);
			}
		49% {
			transform: scaleX(0);
			}
		50% {
			transform: scaleX(1);
			}
		100% {
			transform: scaleX(1);
			}
		}
	@keyframes navButton-bar03_on{
		0% {
			transform: translateY(0);
			}
		50% {
			transform: translateY(-6px) rotate(0);
			}
		100% {
			transform: translateY(-6px) rotate(-45deg);
			}
		}
	@keyframes navButton-bar03_off{
		0% {
			transform: translateY(-6px) rotate(-45deg);
			}
		50% {
			transform: translateY(-6px) rotate(0);
			}
		100% {
			transform: translateY(0);
			}
		}

#pagePath{
	display: none;
	}
#pagePath{
	padding: 16px 0;
	overflow-y: auto;
	ul{
		display: flex;
		align-items: center;
		grid-gap: 8px 16px;
		width: var(--wrap);
		margin: auto;
		color: var(--color-theme);
		overflow-x: auto;
		font-size: 14px;
		}
	li{
		white-space: nowrap;
		&:first-child{
			text-transform: uppercase;
			}
		&:has(a){
			display: contents;
			&:after{
				content: "";
				aspect-ratio: 1;
				width: 10px;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" style="fill: none; stroke: black; stroke-miterlimit: 10; stroke-width: 2px;"><polyline points="4 1 10 7 4 13"/></svg>') center no-repeat;
				-webkit-mask-size: contain;
				background: currentColor;
				}
			}
		}
	a{
		display: block;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
		max-width: calc(100% - 26px);
		&:hover{
			text-decoration: underline;
			}
		}
	}

#subject {
	padding: var(--space) 0;
	background: var(--color-lightBlue);
	position: relative;
	}
	#subject>div>div{
		display: grid;
		grid-gap: 16px;
		}
	#subject figure{
		position: relative;
		width: 150px;
		}
	#subject img{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		}
	@media (max-width: 991.98px) {
		#subject figure{
			display: none;
			}
		}
	@media (min-width: 768px) {
		#subject>div{
			display: grid;
			grid-template-columns: 1fr auto;
			grid-gap: 16px;
			}
		}

#fCampaign {
	background: var(--color-lightBlue);
	letter-spacing: 1.5px;
	overflow: hidden;
	}
#fCamWrap{
    width: var(--wrap);
    margin: var(--space) auto;
	display: grid;
	grid-gap: 32px;
	}
#fCamPresent{
	border: 1px solid var(--color-red);
	background: #fff;
	}
#fPreTitle {
	background: var(--color-red);
	text-align: center;
	color: #fff;
	padding: 16px;
	}
	#fPreTitle+div {
		padding: clamp(16px, 2.8vw, 24px);
		position: relative;
		}
#fPreBlock{
	font-weight: bold;
	margin-bottom: 24px;
	}
	#fPreLimit {
		letter-spacing: 2px;
		margin-bottom: 24px;
		font-size: 28px;
		text-align: center;
		font-weight: 900;
		}
		#fPreLimit span{
			color: #fff;
			background: var(--color-red);
			margin-left: 4px;
			padding: 4px 8px;
			display: inline-block;
			}
	#fPreFrom{
		color: initial;
		margin-bottom: 8px;
		letter-spacing: 0;
		}
		#fPreFrom span{
			color: var(--color-apply);
			font-weight: 900;
			}
	#fPreGift{
		color: initial;
		font-size: 24px;
		white-space: nowrap;
		}
		#fPreGift span{
			color: var(--color-red);
			font-weight: 900;
			}
	#fPrePoint{
		display: grid;
		grid-gap: min(4vw, 36px);
		font-size: 12px;
		}
	#fPrePoint span{
		white-space: normal;
		}
	#fPrePoint figure{
		transform: scale(1.1);
		margin-right: 16px;
		}

#fCamApply{
	text-align: center;
	background: #fff;
	border: 1px solid var(--color-apply);
	}
	#fAppTitle {
		background: var(--color-apply);
		text-align: center;
		color: #fff;
		padding: 16px;
		}
		#fAppTitle+div {
			padding: clamp(20px, 3.6vw, 32px);
			padding-top: 46px;
			display: grid;
			align-content: space-between;
			}
		#fAppTitle+div>div{
			display: grid;
			grid-gap: 8px;
			}
		#fAppTitle+div>div div {
			width: fit-content;
			font-size: 14px;
			margin: 0 auto;
			padding: 4px;
			}
	#fCamApply a {
		grid-template-columns: 30px auto 30px;
		grid-gap: 8px;
		margin: 0 auto;
		padding: 16px;
		border-radius: 8px;
		width: 100%;
		}
		#fCamApply a:after{
			content: "";
			aspect-ratio: 1;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M9.163 4.516c0.418 0.408 4.502 4.695 4.502 4.695 0.223 0.219 0.335 0.504 0.335 0.789s-0.112 0.57-0.335 0.787c0 0-4.084 4.289-4.502 4.695-0.418 0.408-1.17 0.436-1.615 0-0.446-0.434-0.481-1.041 0-1.574l3.747-3.908-3.747-3.908c-0.481-0.533-0.446-1.141 0-1.576s1.197-0.409 1.615 0z" /></svg>') center no-repeat;
			-webkit-mask-size: contain;
			width: 25px;
			}
#fAppTarget{
	margin-top: 16px;
	margin-bottom: 32px;
	position: relative;
	}
	#fAppTarget:before,
	#fAppTarget:after{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, -90%);
		width: 50px;
		background-size: cover;
		z-index: 10;
		}
	#fAppTarget:before{
		background: url("/common/images/hNavRabbyFace.svg") center no-repeat;
		height: 50px;
		}
	#fAppTarget:after{
		background: url("/common/images/hNavRabbyHands.svg") center no-repeat;
		height: 6px;
		transform: translate(-60%, -50%);
		}
	#fAppTarget div{
		background: var(--color-red);
		color: #fff;
		z-index: 100;
		}
	#fAppTarget a{
		background: var(--color-apply);
		}
		#fAppTarget a:after{
			background: #fff;
			}
#fAppNoTarget{}
	#fAppNoTarget div{
		background: #d9d9d9;
		}
	#fAppNoTarget a{
		background: #fff;
		border: 1px solid;
		color: initial;
		}
		#fApNoTarget a:after{
			background: initial;
			}

@media (max-width: 991.98px) {
	#fCamPresent,
	#fCamApply{
		max-width: 480px;
		width: 100%;
		margin: 0 auto;
		}
	}
@media (max-width: 575.98px) {
	#fPreTitle+div {
		max-width: 320px;
		margin: 0 auto;
		}
	#fPreBlock{
		text-align: center;
		}
	#fPreLimit{
		text-align: left;
		margin-top: 12px;
		font-size: 20px;
		}
	#fPrePoint figure{
		position: absolute;
		top: 12px;
		right: -4px;
		width: 80px;
		}
	}
@media (min-width: 576px) {
	#fPrePoint{
		grid-template-columns: 1fr 180px;
		}
	}
@media (min-width: 992px) {
	#fCamWrap{
		grid-template-columns: repeat(2, 1fr);
		}
	}

#fMenu {
	background: var(--color-bg);
	display: grid;
	grid-gap: clamp(24px, 4.8vw, 32px);;
	padding: var(--space) 0;
	letter-spacing: 1.5px;
	}
	#fMenu ul{
		display: grid;
		grid-gap: clamp(24px, 4.8vw, 32px);;
		}
	#fMenu figure{
		width: min(25vw, 120px);
		height: min(25vw, 120px);
		margin: 20px auto 40px;
		}
	#fMenu .figIcon{
		width: min(25vw, 120px);
		height: min(25vw, 120px);
		margin: 20px auto 40px;
		}
		#fMenuDoc span:before {
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M16.7,2H4v20h16V5.2l-3.3-3.2ZM5.5,20.5V3.5h10.5v2.5h2.5v14.5H5.5ZM16.5,7.5H7.5v1.5h9v-1.5ZM7.5,10.5h9v1.5H7.5v-1.5ZM12,13.5h-4.5v1.5h4.5v-1.5ZM17,17c0,1.105-.895,2-2,2s-2-.895-2-2,.895-2,2-2,2,.895,2,2Z"/></svg>') center no-repeat;
			}
		#fMenuAgt span:before {
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M1,16.5h10.5v-1.5H2.5V6h17.5v2h1.5v-3.5H1v12ZM11.5,8h7v1.5h-7v-1.5ZM16,11.5h-4.5v1.5h4.5v-1.5ZM4,10.4l2.5,2.5,3.6-3.6-1.1-1.1-2.5,2.6-1.4-1.5-1.1,1.1ZM20.5,13.4l-7.1,7.1h-1.4v-1.4l7.1-7.1,1.4,1.4ZM19.77,11.286l1.414-1.414,1.414,1.414-1.414,1.414-1.414-1.414Z"/></svg>') center no-repeat;
			}
		#fMenuBiz span:before {
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.999,5c0,1.6-1.3,2.9-2.9,2.9s-2.9-1.4-2.9-3,1.2-2.9,2.9-2.9,2.9,1.4,2.9,3ZM8.499,4.9c0-.8-.6-1.4-1.4-1.4s-1.4.6-1.4,1.4.6,1.5,1.4,1.5,1.4-.7,1.4-1.5ZM22.498,13.7c0-2.6-2.1-4.8-4.8-4.8h-1.7c-1.7,0-3.1.9-4,2.2-.8-1.3-2.3-2.2-4-2.2h-1.8c-2.6,0-4.8,2.1-4.8,4.8v7.3h1.6v-7.3c0-1.8,1.5-3.2,3.2-3.2h1.8c1.4,0,2.6.9,3,2.1h2c.5-1.2,1.6-2.1,3-2.1h1.8c1.8,0,3.2,1.5,3.2,3.2v7.3h1.5v-7.3ZM11.997,18.5c-1.7,0-3.1,1-3.7,2.5h7.4c-.6-1.5-2-2.5-3.7-2.5ZM16.9,7.9c1.6,0,2.9-1.3,2.9-2.9s-1.3-3-2.9-3-2.9,1.3-2.9,2.9,1.2,3,2.9,3ZM16.9,3.5c.8,0,1.4.6,1.4,1.4s-.6,1.4-1.4,1.4-1.4-.6-1.4-1.4.6-1.4,1.4-1.4ZM14,15.5c0,1.105-.895,2-2,2s-2-.895-2-2,.895-2,2-2,2,.895,2,2Z"/></svg>') center no-repeat;
			}
		#fMenuOsaka span:before {
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M8,2v5h1.5v-3.5h11v18.5h1.5V2h-14ZM11.5,5.5h7v1.5h-7v-1.5ZM18.5,8.5h-4.5v1.5h4.5v-1.5ZM12,20v-5h-5v5h5ZM8.5,16.5h2v2h-2v-2ZM1.9,16.4l-.9-1.2,8.5-6.7,8.5,6.7-.9,1.2-1.6-1.2v6.8h-1.5v-8l-4.5-3.5-4.5,3.5v8h-1.5v-6.9l-1.6,1.3Z"/></svg>') center no-repeat;
			}

	#fMainMenu {
		grid-template-columns: repeat(2, 1fr);
		}
	@media (min-width: 768px) {
		#fMainMenu {
			grid-template-columns: repeat(4, 1fr);
			}
		#fSubMenu {
			grid-template-columns: repeat(2, 1fr);
			}
		}



footer{
	background: var(--color-theme);
	}
	#footer{
		color: #fff;
		padding: 24px 0;
		}
	#fNav a{
		text-decoration: underline;
		}
	#copyright {
		font-size: min(3vw, 16px);
		white-space: nowrap;
		}
@media (max-width: 991.98px) {
	#footer{
		text-align: center;
		}
	#fNav li+li{
		margin-top: 16px;
		}
	#copyright{
		margin-top: 32px;
		text-align: center;
		}
	}
	@media (min-width: 992px) {
		#footer{
			display: flex;
			justify-content: space-between;
			align-items: center;
			}
		#fNav *{
			line-height: 1;
			}
		#fNav ul{
			display: flex;
			}
		#fNav li+li{
			padding-left: 32px;
			margin-left: 32px;
			border-left: 1px solid #fff;
			}
		}

#pageHome {
    width: 100%;
	}
	#pageHome a{
		display: block;
		padding: 18px;
		text-decoration: underline;
		text-align: center;
		font-size: 18px;
		}
	@media (max-width: 575.98px) {
		#pageHome a{
			padding: 20px;
			font-size: 16px;
			}
	}

#pageTop{
	display: none;
	}
#pageTop{
	position: sticky;
	bottom: 0;
	font-size: 0;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s ease-out 1s;
	z-index: 100;
	}
	.done:not(.scrollTop) #pageTop{
		opacity: 1;
		}
	#pageTop:hover:before{
		background: #e50012;
		}
	#pageTop:before,
	#pageTop:after{
		content: "";
		position: absolute;
		right: 0;
		bottom: 0;
		aspect-ratio: 1;
		width: 48px;
		}
	#pageTop:before{
		background: var(--color-theme);
		}
	#pageTop:after{
		-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.582 13.891c-0.272 0.268-0.709 0.268-0.979 0s-0.271-0.701 0-0.969l7.908-7.83c0.27-0.268 0.707-0.268 0.979 0l7.908 7.83c0.27 0.268 0.27 0.701 0 0.969s-0.709 0.268-0.978 0l-7.42-7.141-7.418 7.141z" /></svg>');
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
		-webkit-mask-size: 32px;
		background: #fff;
		}


.wrap{
	width: var(--wrap);
	margin: 0 auto;
	}

.subject{
	margin: 0;
	padding: 0;
	color: var(--color-theme);
	font-weight: bold;
	font-size: clamp(24px, 4.8vw, 32px);
	}

.headline{
	position: relative;
	margin: 16px 0;
	padding: 0 16px;
	font-weight: bold;
	font-size: clamp(18px, 3.6vw, 24px);
	line-height: 1;
	border-left: 5px solid var(--color-theme);
	}
	#form h2::after{
		content: "";
		position: absolute;
		bottom: -22px;
		left: -5px;
		right: 0;
		background: var(--color-border);
		height: 1px;
		}

.title{
	margin: 0 0 -8px 0;
	padding: 0;
	font-size: clamp(20px, 3.6vw, 24px);
	font-weight: bold;
	line-height: 1.5;
	}

.subTitle{
	margin: 0 0 8px 0;
	padding: 8px 0;
	border-bottom: 1px solid var(--color-border);
	border-top: 3px solid var(--color-border);
	font-size: clamp(16px, 2.7vw, 18px);
	font-weight: bold;
	line-height: 1.5;
	}

.buttonSet{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	grid-gap: 16px;
	}
	@media (max-width: 575.98px) {
	.buttonSet{
		flex-direction: column;
		padding: 0 10%;
		}
	}

.button{
	display: grid;
	align-items: center;
	column-gap: 8px;
	padding: 10px 24px;
	background: #000;
	border: none;
	color: #fff;
	border-radius: 4px;
	font-family: inherit;
	font-size:  inherit;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	}
	.button:before,
	.button:after{
		content: "";
		background: currentColor;
		}

.cardList {}
	.cardList li{
		display: grid;
		}
	.cardList a span{
		display: grid;
		grid-template-columns: 20px auto 20px;
		align-items: center;
		white-space: nowrap;
		}
		.cardList li span:before{
			content: "";
			width: 20px;
			}
		.cardList a span:after{
			content: "";
			background: var(--color-border);
			aspect-ratio: 1;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M9.163 4.516c0.418 0.408 4.502 4.695 4.502 4.695 0.223 0.219 0.335 0.504 0.335 0.789s-0.112 0.57-0.335 0.787c0 0-4.084 4.289-4.502 4.695-0.418 0.408-1.17 0.436-1.615 0-0.446-0.434-0.481-1.041 0-1.574l3.747-3.908-3.747-3.908c-0.481-0.533-0.446-1.141 0-1.576s1.197-0.409 1.615 0z" /></svg>') center no-repeat;
			-webkit-mask-size: contain;
			width: 20px;
			}
		.cardList a[href*="osaka-fudosan.jp"] span:after {
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M3.201,12.8h9.6v-4.267h1.333v5.6H1.867V1.867h5.6v1.333H3.201v9.6ZM9.134,3.2v-1.333h5v5h-1.333v-2.733l-5.8,5.8-.933-.933,5.8-5.8h-2.733Z"/></svg>') center no-repeat;
			}
	.cardList a{
		display: grid;
		border: 2px solid var(--color-border);
		background: #fff;
		padding: 16px 8px;
		border-radius: 4px;
		text-align: center;
		overflow: hidden;
		}
		a[href="https://nyukai.zennichi.or.jp/shinsei/signup/index/27"]:after{
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M3.201,12.8h9.6v-4.267h1.333v5.6H1.867V1.867h5.6v1.333H3.201v9.6ZM9.134,3.2v-1.333h5v5h-1.333v-2.733l-5.8,5.8-.933-.933,5.8-5.8h-2.733Z"/></svg>') center no-repeat!important;
			}
	.cardList .figIcon {
		width: min(15vw, 80px);
		height: min(15vw, 80px);
		margin: 0 auto;
		position: relative;
		}
		.cardList .figIcon:before {
			content: "";
			position: absolute;
			inset: 0;
			background-color: var(--color-lightBlue);
			border-radius: 100%;
			}
	.cardList img {
		position: absolute;
		top: 50%;
		left: 50%;
		object-fit: contain;
		transform: translate(-50%, -50%);
		}
		img[src*="images/fMenuPhoto-02.png"] {
			height: min(20vw, 104px);
			}
		img[src*="images/fMenuPhoto-03.png"]{
			top: 59%;
			left: 59%;
			}
	.cardListIcon li span:before{
		content: "";
		background: currentColor;
		aspect-ratio: 1;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M2,20V4h20v16H2ZM9.4,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM6.9,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM4.4,7c.4,0,.7-.3.7-.8,0-.4-.2-.8-.7-.8s-.8.4-.8.8c0,.5.4.8.8.8ZM3.5,18.5h17v-10H3.5v10ZM15.501,11.8l-4.2,4-3-2.7,1.1-1.1,1.9,1.7,3.2-3,1,1.1Z"/></svg>') center no-repeat;
		-webkit-mask-size: contain; 
		width: 20px;
		}

.list{
	display: grid;
	grid-gap: 8px;
	list-style: none;
	line-height: 1.5;
	}
	.list:where(.point, .count){}
		.list:where(.point,.count) > li{
			position: relative;
			padding-left: 1em;
			}
			.list:where(.point,.count) > li:before{
				position: absolute;
				top: 0;
				left: 0;
				}
	.list.point{}
		.list.point > li{}
			.list.point > li:before{
				content: "●";
				color: #0068b7;
				transform: scale(0.7);
				}
	.list.notes{}
		.list.notes > li{
			display: block;
			grid-column: 1 / 3;
			padding-left: 16px;
			text-indent: -16px;
			}
	.list.count{
		counter-reset: count;
		grid-column-gap: 0;
		}
		.list.count > li{
			padding-left: 1em;
			}
			.list.count > li:before{
				counter-increment: count;
				content: counter(count)".";
				}
			.list.count:has(li:nth-child(10)) > li{
				padding-left: 1.5em;
				}
				.list.count:has(li:nth-child(10)) > li:nth-child(-n+9):before{
					content: "0"counter(count)".";
					}
		.list.count .list.count{}
			.list.count .list.count > li{}
				.list.count .list.count > li:before{
					content: "（"counter(count)"）";
					}

.table{}
	.table :where(th, td, dt, dd){
		padding: 0.8em;
		line-height: 1.5;
		}
	.table :where(th,td){
		border: 1px solid #ccc;
		vertical-align: middle;
		}
	.table:is(table){
		width: 100%;
		border-collapse: collapse;
		}
	.table thead{
		background: rgba(0, 104, 182, 0.1);
		}
	.table th{
		background: rgba(0, 0, 0, 0.05);
		}
	.table{}
		.table > dt{
			background: rgba(0, 104, 182, 0.1);
			}
		.table > dd{
			background: rgba(0, 0, 0, 0.05);
			}
	@media (max-width: 575.98px) {
		.table{}
			.table > dd+dt{
				margin-top: 1px;
				}
		}
	@media (min-width: 576px) {
		.table{}
			.table:is(dl){
				display: grid;
				grid-template-columns: clamp(132px, 30%, 20em) auto;
				grid-gap: 1px 0;
				}
		}

.googlemap{}
	.googlemap iframe{
		width: 100%;
		height: 100%;
		aspect-ratio: 1;
		}
	@media (min-width: 576px) {
		.googlemap iframe{
			aspect-ratio: 16 / 9;
			}
		}

.youtube{}
	.youtube iframe{
		width: 100%;
		height: 100%;
		aspect-ratio: 16 / 9;
		}

/*調整用オリジナルbr*/
br.origin{display: none;}
	@media (max-width:991.98px) {
		br.origin{display: block;}
		}
br.min{display: none;}
	@media (max-width:400px) {
		br.min{display: block;}
		}
	@media (max-width:400px) {
		#fCamPresent>figure {
			left: 20px;
			width: 300px;
			transform: translate(0%, 15%);
			}
		}

