@charset "UTF-8";

/*-------------------------------------------------
	Reset
-------------------------------------------------*/
*,*::before,*::after{box-sizing:border-box;}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,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,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;background:none;}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block;}body{line-height:1;color:#000;background:#fff;}ul,ol{list-style:none;}table{border-collapse:collapse;border-spacing:0;}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto;}button,input,select,textarea{font:inherit;color:inherit;margin:0;background:none;border:none;padding:0;appearance:none;box-shadow:none;}a{color:inherit;text-decoration:none;background:none;}blockquote,q{quotes:none;}blockquote::before,blockquote::after,q::before,q::after{content:'';}hr{border:0;border-top:1px solid #ccc;margin:2em 0;}mark{background:#ff9;color:#222;}:focus:not(:focus-visible){outline:none;}

/*-------------------------------------------------
	Base
-------------------------------------------------*/
:root {
	--font-ja: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", "Yu Gothic", "YuGothic", "MS PGothic", sans-serif;
	--font-en: "Poppins", sans-serif;
	--key-color: #003C89;
	--color-green: #3CB446;
	--color-green: #3CB446;
	--color-orange: #E66E00;
	--color-black: #323232;
	--color-grey: #B4B4B4;
	--color-light-grey: #C8C8C8;
	--color-light-blue: #CCD8E7;
	--text-color: #323232;
	--pd-side: 60px;
	--pc-min-width: 1366px;
	--master-width: 1260px;
	--header-height: 100px;
	--spacing-higher: 100px;
	--spacing-high: 90px;
	--spacing-mid: 60px;
}
@media screen and (max-width: 666px) {
	:root {
		--pd-side: 25px;
		--header-height: 65px;
		--pc-min-width: 100%;
		--spacing-higher: 55px;
		--spacing-high: 60px;
		--spacing-mid: 30px;
	}
}

body {
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	min-width: var(--pc-min-width);
	min-height: 100vh;
	font-family: var(--font-ja);
	font-weight: 400;
	font-style: normal;
	color: var(--text-color);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.loading,
.un_loading_top {
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
}
.un_loading_top__img {
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 50%;
	height: auto;
}
a:link, a:visited {
	color: var(--text-color);
	text-decoration: none;
	outline: none;
	opacity: 1;
	transition: opacity .3s;
}
a:hover {
	text-decoration: none;
	opacity: .7;
	cursor: pointer;
}
a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
}
a.el_link_txt,
button.el_link_txt,
.bl_accordion_cont p a {
	font-weight: 700;
	color: var(--key-color);
	text-decoration: underline;
}
img {
	width: 100%;
	height: auto;
}
@media screen and (max-width: 666px) {
	body {
		min-width: 100%;
	}
	.un_loading_top {
		padding-top: var(--header-height);
	}
	.un_loading_top__inner {
		position: relative;
		height: 100%;
		max-height: 635px;
	}
	.un_loading_top__img {
		width: 72%;
		height: auto;
	}
}

/*-------------------------------------------------
	Commons
-------------------------------------------------*/
/* Layout */
.ly_cont {
	flex: 1;
	position: relative;
}
body.page .ly_cont {
	padding-top: var(--header-height);
}
.ly_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ly_flex.rev {
	flex-direction: row-reverse;
}
.ly_flex.aiC {
	align-items: center;
}
.ly_flex.jcFs {
	justify-content: flex-start;
}
.ly_flex.jcC {
	justify-content: center;
}
.ly_w_100 {
	width: 100%;
}
.ly_w_100vw {
	margin-left: calc( - ( var(--pd-side) ));
	width: 100vw;
}
.ly_w_master {
	margin-inline: auto;
	padding-left: var(--pd-side);
	padding-right: var(--pd-side);
	width: 100%;
	max-width: calc(var(--master-width) + ( var(--pd-side) * 2 ));
}
.ly_scroll {
    margin-top: -190px;
    padding-top: 190px;
}
:root {
	--ly_col3_gap: 30px;
}
.ly_col3 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--ly_col3_gap);
}
.bl_col3_span1 { grid-column: span 1; }
.bl_col3_span2 { grid-column: span 2; }
.bl_col3_span2 > p:first-child {
	margin-top: -0.5em;
}
.ly_col3 p {
	line-height: 1.875;
}
.ly_ill {
	position: absolute;
}
.ly_ill.birds {
	top: 100px;
	right: 0;
	width: 300px;
}
.ly_ill.dogs {
	bottom: 130px;
	left: 0;
	width: 270px;
}
@media screen and (max-width: 666px) {
	.sm_flexNone {
		display: block;
	}
	.ly_scroll {
		margin-top: -110px;
		padding-top: 110px;
	}
	.ly_col3 {
		display: block;
	}
	.ly_ill.birds {
		top: 35px;
		right: 0;
		width: 120px;
	}
	.ly_ill.dogs {
		bottom: unset;
		left: unset;
		top: 30px;
		right: 0;
		width: 110px;
	}
}

/* Helper */
.la_dn, .la_dn_ib {
	display: none !important;
}
.sm_dn {
	display: block !important;
}
.sm_dn_ib {
	display: inline-block;
}
span.ib {
	display: inline-block;
}
.hp_posRel {
	position: relative;
}
.hp_color_key {
	color: var(--key-color) !important;
}
.hp_bg_light-grey {
	background-color: #f6f6f6;
}
.hp_border_top {
	border-top: 2px solid var(--color-grey);
}
@media screen and (max-width: 666px) {
	.la_dn {
		display: block !important;
	}
	.la_dn_ib {
		display: inline-block;
	}
	.sm_dn, .sm_dn_ib {
		display: none !important;
	}
	.sm_w_100 {
		width: 100% !important;
	}
	.sm_w_100vw {
		margin-left: calc( - ( var(--pd-side) ));
		width: 100vw !important;
	}
}

/* Margin */
.hp_miA {
	margin-inline: auto;
}
.mgn_top_mid {
	margin-top: var(--spacing-mid);
}
.mgn_btm_mid {
	margin-bottom: var(--spacing-mid);
}

/* Padding */
.pd_top_higher {
	padding-top: var(--spacing-higher);
}
body.page .pd_top_higher {
	padding-top: 86px;
}
.pd_btm_high {
	padding-bottom: var(--spacing-high);
}
body.page .pd_btm_high {
	padding-bottom: 100px;
}
.pd_side {
	padding-left: var(--pd-side);
	padding-right: var(--pd-side);
}
@media screen and (max-width: 666px) {
	body.page .pd_top_higher {
		padding-top: 30px;
	}
	body.page .pd_btm_high {
		padding-bottom: 63px;
	}
}

/* Heading + Text */
.el_lv1H {
	margin-top: -.25em;
	margin-bottom: 1.5em;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.333;
	color: var(--key-color);
}
.el_lv1H + .el_lv2H {
	margin-top: -.25em;
}
.el_lv2H {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.333;
	color: var(--color-black);
}
p {
	font-weight: 500;
	font-size: 16px;
	line-height: 2;
	text-align: justify;
	color: var(--text-color);
	word-break: break-word
}
p:not(:last-of-type) {
	padding-bottom: 1.75em;
}
strong {
	font-weight: 700;
}
.hp_txt_la {
	font-size: 18px;
	line-height: 1.777;
}
.hp_txt_la .hp_lineH_high {
	line-height: 1.888;
}
.hp_fontEn {
	font-family: var(--font-en);
	font-weight: 700;
}
.hp_fontW_b {
	font-weight: 700;
}
.hp_txtA_c {
	text-align: center !important;
}
.hp_txtA_l {
	text-align: left !important;
}
.hp_lS0 {
	letter-spacing: 0;
}
.hp_lS_n01 {
	letter-spacing: -.01em;
}
.hp_lS_n04 {
	letter-spacing: -.04em;
}
.hp_fontFS_palt {
	font-feature-settings: "palt";
}
.hp_color_key {
	color: var(--key-color);
}
.hp_color_white {
	color: #fff;
}
.small,
span.small {
	font-size: .9em;
}
@media screen and (max-width: 666px) {
	.el_lv1H {
		margin-bottom: 1.2em;
		font-size: 25px;
	}
	.el_lv1H + .el_lv2H {
		margin-top: -.5em;
	}
	.el_lv2H {
		margin-bottom: 1em;
		font-size: 18px;
		line-height: 1.666;
	}
	p {
		font-size: 15px;
		line-height: 1.8;
	}
	.hp_txt_la {
		font-size: 15px;
		line-height: 1.8;
	}
	.sm_fontFS_palt {
		font-feature-settings: "palt";
	}
	.sm_lS_n01 {
		letter-spacing: -.01em;
	}
}

/* Button */
.el_btn_mid {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-inline: auto;
	width: 100%;
	max-width: 400px;
	height: 80px;
	border: 3px solid var(--key-color);
	border-radius: 9999px;
	background-color: #fff;
	transition: background-color .3s;
}
a.el_btn_mid:hover {
	background-color: var(--key-color);
	opacity: 1;
}
.el_btn_mid > span {
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	color: var(--key-color);
	transition: color .3s;
}
a.el_btn_mid:hover > span {
	color: #fff;
	opacity: 1;
}
.el_btn_mid.grey {
	border-color: var(--color-grey);
	border-width: 2px;
	transition: border-color .3s, background-color .3s;
}
.el_btn_mid.grey > span {
	color: var(--color-black);
}
a.el_btn_mid.grey:hover {
	border-color: var(--color-grey);
	background-color: var(--color-grey);
}
a.el_btn_mid.grey:hover > span {
	color: #fff;
}
.ly_btn_group {
	display: flex;
	justify-content: center;
	gap: 30px;
}
.ly_btn_group a.el_btn_mid {
	margin-inline: unset;
}
@media screen and (max-width: 666px) {
	.el_btn_mid {
		height: 60px;
	}
	.el_btn_mid > span {
		font-size: 16px;
	}
	.ly_btn_group {
		flex-direction: column;
		gap: 15px;
	}
	.ly_btn_group a.el_btn_mid + a.el_btn_mid {
		margin-top: 0;
	}
}

/* Accordion */
.bl_accordion_cont {
	display: none;
}
.bl_accordion_item {
	border-top: 2px solid var(--key-color);
}
.bl_accordion_item:last-of-type {
	border-bottom: 2px solid var(--key-color);
}
.el_accordion_ttl,
.el_page_lv2H {
	position: relative;
	padding: 1.2128em;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.666;
	color: var(--key-color);
	transition: color .3s, background-color .3s;
}
.el_accordion_ttl.open {
	color: #fff;
	background-color: var(--key-color);
}
.el_accordion_btn {
	padding-right: 88px;
}
.el_accordion_btn:hover {
	cursor: pointer;
}
.el_accordion_icon {
	display: block;
	position: absolute;
	top: 50%;
	right: 24px;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border: 2px solid var(--key-color);
	border-radius: 50%;
}
.el_accordion_icon::before,
.el_accordion_icon::after {
	content: '';
	position: absolute;
	background: var(--key-color);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.3s;
}
.el_accordion_icon::before {
	width: 16px; height: 3px; /* 横線 */
}
.el_accordion_icon::after {
	width: 3px; height: 16px; /* 縦線 */
}
.el_accordion_btn:hover .el_accordion_icon {
	background-color: var(--key-color);
}
.el_accordion_btn:hover .el_accordion_icon::before,
.el_accordion_btn:hover .el_accordion_icon::after {
	background: #fff;
}
.el_accordion_btn.open .el_accordion_icon {
	border-color: #fff;
	background: var(--key-color); /* 反転 */
}
.el_accordion_btn.open .el_accordion_icon::before,
.el_accordion_btn.open .el_accordion_icon::after {
	background: #fff;
}
.el_accordion_btn.open .el_accordion_icon::after {
	transform: translate(-50%, -50%) rotate(90deg) scaleX(0);
}
.bl_accordion_cont {
	padding: 30px 30px 32px 30px;
}
.bl_accordion_cont h3 {
	margin-bottom: .6em;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.666;
	color: var(--key-color);
}
.bl_accordion_cont h3 span.large-orange {
	margin-right: 0.2em;
	font-size: 1.2em;
	color: var(--color-orange);
}
.bl_accordion_cont hr {
    border-top: 2px solid var(--color-grey);
    margin: 2em 0;
}
.bl_accordion_cont figure + hr {
	margin-top: 2.5em;
}
@media screen and (max-width: 666px) {
	.el_accordion_ttl {
		padding: 1em 20px;
		font-size: 16px;
		line-height: 1.75;
	}
	.el_accordion_btn {
		padding-right: 64px;
	}
	.el_accordion_icon {
		right: 18px;
		width: 28px;
		height: 28px;
	}
	.el_accordion_icon::before {
		width: 12px;
		height: 2.5px;
	}
	.el_accordion_icon::after {
		width: 2.5px;
		height: 12px;
	}
	.bl_accordion_cont {
		padding: 24px 0 32px;
	}
	.bl_accordion_cont h3 {
		margin-bottom: 0.4em;
		font-size: 16px;
	}
	.bl_accordion_cont p {
		line-height: 1.8;
	}
	.bl_accordion_cont hr {
		margin: 1.5em 0;
	}
	.bl_accordion_cont figure + hr {
		margin-top: 2em;
	}
}

/* Accordion - FAQ */
.faq .bl_accordion_item {
	border-color: var(--color-grey);
}
.faq .el_accordion_ttl {
	position: relative;
	padding-top: 1.4175em;
	padding-bottom: 1.4175em;
	padding-left: 80px;
	font-size: 20px;
	color: var(--color-black);
}
.faq .el_accordion_ttl.open {
	background-color: rgba(50, 50, 50, .5);
	color: #fff;
}
.faq .el_accordion_ttl::before,
.faq .bl_accordion_cont::before {
	content: 'Q';
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 25px;
	font-family: var(--font-en);
	font-weight: 700;
	font-size: 22px;
	line-height: 40px;
	width: 40px;
	height: 40px;
	color: #fff;
	text-align: center;
	border-radius: 50%;
	background-color: var(--color-black);
	transition: background-color .3s, color .3s;
}
.faq .el_accordion_btn:hover .el_accordion_icon {
	background-color: var(--color-black);
}
.faq .el_accordion_ttl.open::before {
	background-color: #fff;
	color: var(--color-black);
}
.faq .el_accordion_icon {
	border-color: var(--color-black);
}
.faq .el_accordion_btn.open .el_accordion_icon {
	background-color: transparent;
}
.faq .el_accordion_icon::before,
.faq .el_accordion_icon::after {
	background: var(--color-black);
}
.faq .bl_accordion_cont {
	position: relative;
	padding-left: 80px;
}
.faq .bl_accordion_cont::before {
	content: 'A';
	position: relative;
	top: 0;
	left: -55px;
	transform: none;
	color: #fff;
	background-color: var(--color-grey);
}
.faq .bl_accordion_cont h3 {
	color: var(--color-black);
}
.faq .bl_accordion_cont p {
	font-size: 18px;
	line-height: 1.888;
}
.faq .bl_accordion_cont p:first-child {
	margin-top: -40px;
}
.faq .bl_accordion_cont p:not(:last-of-type) {
	padding-bottom: 1em;
}
@media screen and (max-width: 666px) {
	.faq .bl_accordion_item {
		border-color: var(--color-light-grey);
	}
	.faq .el_accordion_ttl {
		padding-top: 1.1em;
		padding-bottom: 1.1em;
		padding-left: 65px;
		font-size: 15px;
		line-height: 1.733;
	}
	.faq .el_accordion_ttl::before,
	.faq .bl_accordion_cont::before {
		left: 18px;
		width: 32px;
		height: 32px;
		font-size: 18px;
		line-height: 32px;
	}
	.faq .bl_accordion_cont::before {
		left: -47px;
	}
	.faq .bl_accordion_cont {
		padding: 30px 0 24px 65px;
	}
	.faq .bl_accordion_cont p {
		font-size: 15px;
		line-height: 1.8;
	}
}

/* Fade in animation */
.bl_fadeIn {
	opacity: 0 !important;
	/* top: 10px; */
	position: relative;
}
.bl_fadeIn.in {
	opacity: 1 !important;
	/* top: 0 !important; */
	transition: opacity .3s ease-out;
}

/*-------------------------------------------------
	Header
-------------------------------------------------*/
.wrap_hdr {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: var(--pc-min-width);
	background-color: #fff;
	z-index: 10;
}
.ly_hdr {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 30px;
	height: var(--header-height);
}
.ly_hdr_logo {
	flex: 0 0 auto;
	width: 164px;
	height: 55px;
}
.wrap_hdr_navbtn {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
}
.ly_hdr_nav {
	flex: 1 1 auto;
}
ul.bl_hdr_nav {
	display: flex;
	justify-content: flex-end;
	gap: clamp(24px, 1.8vw, 27px);
}
a.el_hdr_nav_link {
	font-weight: 700;
	font-size: clamp(16px, 1.2vw, 18px);
	line-height: 1;
	letter-spacing: .05em;
	color: var(--key-color);
}
.ly_hdr_btn {
	flex: 0 0 auto;
	display: flex;
	margin-left: 38px;
}
ul.ly_hdr_sns {
	display: flex;
	gap: 12px;
}
li.el_hdr_sns {
	width: 40px;
	height: 40px;
}
a.un_btn_contact {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 25px;
	width: 140px;
	height: 40px;
	border: 2px solid var(--key-color);
	border-radius: 9999px;
	background-color: #fff;
	transition: background-color .3s ease;
}
a.un_btn_contact:hover {
	opacity: 1;
	background-color: var(--key-color);
}
a.un_btn_contact > span {
	font-weight: 700;
	font-size: 14px;
	line-height: 1;
	letter-spacing: .1em;
	color: var(--key-color);
	transition: color .3s ease;
}
a.un_btn_contact:hover > span {
	color: #fff;
}
.sm_hdr_navlogo,
.sm_hdr_btn {
	display: none;
}
/* @media screen and (max-width: 1439px) {
	ul.bl_hdr_nav {

	}
} */
@media screen and (max-width: 666px) {
	.ly_hdr {
		position: relative;
		padding: 0 20px 0 15px;
	}
	.ly_hdr_logo {
		width: 115px;
		height: 38px;
	}
	.sm_hdr_btn {
		display: block;
		margin-right: 50px;
	}
	.sm_hdr_btn .ly_hdr_sns {
		gap: 10px;
	}
	.sm_hdr_btn li.el_hdr_sns {
		width: 35px;
		height: 35px;
	}
	.wrap_hdr_navbtn {
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		padding: 20px var(--pd-side) 30px;
		width: 100vw;
		height: 100vh;
		background-color: #fff;
		overflow-y: auto;
	}
	.sm_hdr_navlogo {
		display: block;
		margin-bottom: 67px;
		width: 180px;
		height: 60px;
	}
	ul.bl_hdr_nav {
		flex-direction: column;
		gap: 35px;
	}
	a.el_hdr_nav_link {
		font-size: 20px;
	}
	.ly_hdr_btn {
		flex-direction: column;
		gap: 60px;
		margin-top: 50px;
		margin-left: 0;
	}
	.ly_hdr_btn ul.ly_hdr_sns {
		gap: 15px;
	}
	.ly_hdr_btn li.el_hdr_sns {
		width: 50px;
		height: 50px;
	}
	a.un_btn_contact {
		margin-left: 0;
		width: 100%;
		max-width: 400px;
		height: 60px;
	}
	a.un_btn_contact > span {
		font-size: 18px;
	}
	/* Hamburger Menu */
	.un_btn_hbg {
		display: block;
		position: absolute;
		top: 0;
		right: calc(var(--pd-side) - 15px);
		bottom: 0;
		margin: auto;
		width: 50px;
		height: 42px;
		z-index: 102;
	}
	.un_btn_hbg > span {
		display: block;
		position: absolute;
		left: 10px;
		width:  30px;
		height: 2px;
		background-color: var(--key-color);
		transition: all .3s;
	}
	.un_btn_hbg.active span {
		left: 6px;
		width: 38px;
	}
	.un_btn_hbg span:nth-of-type(1) {
		top: 10px;
	}
	.un_btn_hbg span:nth-of-type(2) {
		top: 20px;
	}
	.un_btn_hbg span:nth-of-type(3) {
		top: 30px;
	}
	.un_btn_hbg.active span:nth-of-type(1) {
		transform: translateY(10px) translateX(0) rotate(35deg);
	}
	.un_btn_hbg.active span:nth-of-type(2) {
		opacity: 0;
	}
	.un_btn_hbg.active span:nth-of-type(3) {
		transform: translateY(-10px) translateX(0) rotate(-35deg);
	}
}

/*-------------------------------------------------
	Top
-------------------------------------------------*/
/* #first-view */
.ly_fv {
	margin-bottom: 90px;
	padding-top: var(--header-height);
}
.wrap_fv_inner {
	position: relative;
}
.bl_fv_slide.slick-slide {
    margin-right: 8px !important;
    margin-left: 8px !important;
	border-radius: 30px;
	overflow: hidden;
}
.bl_fv_slide {
	height: calc(100vh - (var(--header-height) + 30px)) !important;
	min-height: 600px !important;
	max-height: 800px;
	background: center / cover no-repeat;
}
.bl_fv_slide.pos_top {
	background-position: top center;
}
.bl_fv_slide.pos_btm {
	background-position: bottom center;
}
.bl_fv_slide.pos_left {
	background-position: left center;
}
.bl_fv_slide.pos_right {
	background-position: right center;
}
.bl_fv_slide.fv_1 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__1s.jpg");
}
.bl_fv_slide.fv_2 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__2s.jpg");
}
.bl_fv_slide.fv_3 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__3s.jpg");
}
.bl_fv_slide.fv_4 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__4s.jpg");
}
.bl_fv_slide.fv_5 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__5s.jpg");
}
.bl_fv_slide.fv_6 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__6s.jpg");
}
.bl_fv_slide.fv_7 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__7s.jpg");
}
.bl_fv_slide.fv_8 {
	background-image: url("../img/top/fv-slider/pic_fv_slide__8s.jpg");
}
.un_fv_ttl {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	aspect-ratio: 745 / 200;
	width: 50%;
	height: auto;
}
.un_fv_ttl__img {
	filter: drop-shadow(0 4px 4px rgba(0,0,0,0.25));
}
.un_fv_badge__1 {
	position: absolute;
	top: 50px;
	right: 0;
}
.un_fv_badge__1 > a {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 16px;
	padding-right: 10px;
	width: 330px;
	height: 110px;
	border-radius: 9999px 0 0 9999px;
	background-color: var(--color-orange);
	box-shadow: -4px 4px 4px 0px #00000040;
}
.un_fv_badge__1 > a:hover {
	opacity: 1;
}
.un_fv_badge__1 img {
	margin-top: -5px;
	width: 64px;
}
.un_fv_badge__1 span.txt {
	display: block;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.666;
	letter-spacing: .05em;
	text-align: center;
	color: #fff;
}
.un_fv_badge__2 {
	position: absolute;
	bottom: 50px;
	left: 4vw;
}
.un_fv_badge__2 > a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 280px;
	height: 130px;
	border-radius: 9999px;
	background-color: var(--color-green);
	box-shadow: 5px 5px 5px 0px #00000040;
	pointer-events: none;
}
.un_fv_badge__2 > a:hover {
	opacity: 1;
}
.un_fv_badge__2 span.txt {
	display: block;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.733;
	letter-spacing: .05em;
	text-align: center;
	color: #fff;
}
@media screen and (max-width: 666px) {
	.ly_fv {
		margin-bottom: 60px;
	}
	.bl_fv_slide.slick-slide {
		margin-right: 0 !important;
		margin-left: 0 !important;
		border-radius: 0;
	}
	.bl_fv_slide {
		height: calc(100svh - var(--header-height)) !important;
		min-height: 450px !important;
		max-height: 635px;
	}
	.un_fv_ttl {
		width: 72%;
	}
	.un_fv_badge__1 {
		top: 0;
		right: unset;
		left: 50%;
		transform: translateX(-50%);
	}
	.un_fv_badge__1 > a {
		gap: 6px;
		padding-right: 0;
		width: calc(100vw - 30px);
		height: 55px;
		border-radius: 0 0 15px 15px;
	}
	.un_fv_badge__1 img {
		margin-top: 0;
		width: 32px;
	}
	.un_fv_badge__1 span.txt {
		font-size: clamp(14px, 4.1vw, 18px);
		letter-spacing: 0;
	}
	.un_fv_badge__2 {
		bottom: 30px;
		left: 0;
	}
	.un_fv_badge__2 > a {
		width: 260px;
		height: 110px;
		border-radius: 0 9999px 9999px 0;
	}
	.un_fv_badge__2 span.txt {
		margin-left: -1em;
	}
	.bl_fv_slide.fv_1 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__1s_sm.jpg");
	}
	.bl_fv_slide.fv_2 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__2s_sm.jpg");
	}
	.bl_fv_slide.fv_3 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__3s_sm.jpg");
	}
	.bl_fv_slide.fv_4 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__4s_sm.jpg");
	}
	.bl_fv_slide.fv_5 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__5s_sm.jpg");
	}
	.bl_fv_slide.fv_6 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__6s_sm.jpg");
	}
	.bl_fv_slide.fv_7 {
		background-image: url("../img/top/fv-slider/pic_fv_slide__7s_sm.jpg");
	}
}

/* #progress-bar */
.el_progress_bar__ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	margin-bottom: 60px;
	margin-inline: auto;
	padding: .9179em 2em;
	width: 100%;
	max-width: 920px;
	border: 4px solid var(--key-color);
	border-radius: 9999px;
	background-color: #fff;
}
.el_progress_bar__ttl::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -34px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 12px solid transparent;
	border-left: 12px solid transparent;
	border-top: 30px solid var(--key-color);
	border-bottom: 0;
}
.el_progress_bar__ttl > span.txt {
	font-weight: 700;
	font-size: 24px;
	line-height: 1.777;
	color: var(--key-color);
}
@media screen and (max-width: 666px) {
	#progress-bar.ly_w_master {
		padding-left: 20px;
		padding-right: 20px;
	}
	.el_progress_bar__ttl {
		margin-bottom: 45px;
		padding: 1.45em 0em;
		max-width: 350px;
	}
	.el_progress_bar__ttl > span.txt {
		font-size: clamp(15px, 4.358vw, 17px);
		text-align: center;
	}
	.el_progress_bar__ttl::after {
		bottom: -29px;
		border-right: 10px solid transparent;
		border-left: 10px solid transparent;
		border-top: 25px solid var(--key-color);
	}
}

/* #progress-bar | rakko-progress */
:root{
	--track-height: 90px;
	--track-radius: 9999px;
	--otters-width: 250px; /* ラッコ2匹の横幅 */
	--otter-head-center-ratio: 0.42; /* 左ラッコ頭中心のX比率（0〜1） */
}
.c-rakko-progress {
	font-family: var(--font-ja);
	color: var(--key-color);
}
.c-rakko-progress__stats {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-end;
	gap: 20px 70px;
	margin-block: 0 50px;
}
.c-rakko-progress__stat {
	display: flex;
	align-items: baseline;
	gap: 12px;
	width: 40%;
}
.c-rakko-progress__stat.jcFe {
	justify-content: flex-end;
}
.c-rakko-progress__stat-label {
	position: relative;
    top: -.1em;
	font-weight: 700;
	font-size: 24px;
	color: var(--key-color);
}
.c-rakko-progress__stat-value {
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
	font-size: 80px;
	line-height: 1;
	font-variant-numeric: tabular-nums lining-nums;
	font-feature-settings: "tnum" 1, "lnum" 1;
	display: inline-block;
	text-align: end;
}
.c-rakko-progress__divider {
	width: 4px;
	height: 80px;
	background-color: var(--key-color);
	border-radius: 9999px;
	align-self: center;
}
.c-rakko-progress__asof {
	width: 100%;
	font-weight: 500;
	font-size: 14px;
	text-align: center;
}
.c-rakko-progress__meter{
	position: relative;
	margin-block: 0 160px;
}
.c-rakko-progress__track{
	position: relative;
	height: var(--track-height);
	border-radius: var(--track-radius);
	background-color: #e8e8e8;
	overflow: hidden;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25) inset;
}
.c-rakko-progress__bar {
	position: absolute; inset: 0 auto 0 0;
	width: 0%;
	background: var(--color-orange);
	border-radius: 0;
	transition: width .6s ease;
}
.c-rakko-progress__label {
	position: absolute;
	right: 46px;
	top: 15px;
	color: var(--key-color);
	font-weight: 800;
	font-size: clamp(18px, 3.2vw, 36px);
	letter-spacing: .03em;
	white-space: nowrap;
	pointer-events: none;
}
.c-rakko-progress__label small {
	position: relative;
	top: -.1em;
	font-weight: 700;
	font-size: 18px;
}
.c-rakko-progress__label .js-remaining{
	margin-left: -.1em;
    margin-right: 0.1em;
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
	font-size: 60px;
	line-height: 1;
	color: var(--key-color);
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1, "lnum" 1;
	display: inline-block;
	text-align: end;
}
.c-rakko-otters {
	position: absolute;
	top: 35px;
	left: 0;
	aspect-ratio: 5 / 3;
	width: var(--otters-width);
	transform: translateX(0);
	pointer-events: none;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}
.is-animated .c-rakko-progress__bar{
	transition: none; /* JSで同期制御 */
}
@media (max-width:560px){
	:root{
	--track-height: 50px;
	--otters-width: 102px;
	--otter-head-center-ratio: 0.45;
	}
	.c-rakko-progress {
		position: relative;
	}
	.c-rakko-progress__stats {
		gap: 20px 25px;
		margin-block: 0 30px;
	}
	.c-rakko-progress__stat {
		gap: 0;
		position: relative;
	}
	.c-rakko-progress__stat-label {
		font-size: 13px;
	}
	.c-rakko-progress__stat-label:first-of-type {
		position: absolute;
		top: -20px;
		left: -8px;
		width: 100%;
		text-align: center;
	}
	.c-rakko-progress__stat--current .c-rakko-progress__stat-label:first-of-type {
		left: 11px; /* 「現在」の位置調整 */
	}
	.c-rakko-progress__stat-label:last-of-type {
		margin-left: 0.25em;
	}
	.c-rakko-progress__stat-value {
		font-size: 40px;
	}
	.c-rakko-progress__divider {
		width: 3px;
		height: 70px;
	}
	.c-rakko-progress__asof {
		font-size: 12px;
	}
	.c-rakko-progress__meter {
		margin-block: 0 137px;
	}
	.c-rakko-otters {
		top: 27px;
	}
	.c-rakko-progress__label {
		top: unset;
		right: unset;
		bottom: -82px;
		left: 50%;
		transform: translateX(-50%);
	}
	.c-rakko-progress__label small {
		font-size: 13px;
	}
	.c-rakko-progress__label .js-remaining {
		font-size: 32px;
	}
}

/* #our-vision */
.ly_vision {
	padding: 90px 0;
	background-color: var(--key-color);
}
.el_lead_txt {
	margin-top: -0.5em;
	margin-bottom: 3.1em;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.8;
	text-align: justify;
}
.ly_vision_slider {
	background-color: var(--key-color);
}
.bl_vision_slide {
	padding: 60px;
	border-radius: 30px;
}
.bl_vision_slide.slick-slide {
    margin-right: 15px !important;
    margin-left: 15px !important;
	padding: 60px;
	border-radius: 30px;
	box-shadow: 0px 12px 12px 0px #00000040;
	background-color: #fff;
	overflow: hidden;
}
.bl_vision_slide.bg_orange {
	background: linear-gradient(rgba(230, 110, 0, .1), rgba(230, 110, 0, .1)), #ffffff;
}
.bl_vision_slide.bg_green {
	background: linear-gradient(rgba(60, 180, 70, .1), rgba(60, 180, 70, .1)), #ffffff;
}
.bl_vision_slide.bg_light-blue {
	background: linear-gradient(rgba(0, 60, 137, .1), rgba(0, 60, 137, .1)), #ffffff;
}
.slick-arrow {
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -45px;
	width: 90px;
	height: 90px;
	background: center / contain no-repeat url("../img/top/vision-slider/arrow_vision_slider.svg");
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
	transition: background-image .3s;
	overflow: hidden;
	cursor: pointer;
	z-index: 1;
}
@media (hover: hover) {
	.slick-arrow:hover {
		background-image: url("../img/top/vision-slider/arrow_vision_slider_hover.svg");
	}
}
.prev.slick-arrow {
	left: calc(15.67% - 45px);
}
.next.slick-arrow {
	right: calc(15.67% - 45px);
	transform: scale(-1, 1);
}
@media screen and (max-width: 666px) {
	.ly_vision {
		padding: 45px 0;
	}
	.el_lead_txt {
		margin-bottom: 2.15em;
		font-size: 16px;
		line-height: 1.75;
	}
	.bl_vision_slide.slick-slide {
		margin-right: var(--pd-side) !important;
		margin-left: var(--pd-side) !important;
		padding: 25px 15px 30px;
		border-radius: 20px;
	}
	.slick-arrow {
		top: 53px;
		width: 40px;
		height: 40px;
		margin-top: 0;
	}
	.prev.slick-arrow {
		left: 10px;
	}
	.next.slick-arrow {
		right: 10px;
	}
}

/* #our-vision - Slide Contents */
.el_vision_slide__lv1H {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	padding: 36px;
	width: 100%;
	height: auto;
	border-radius: 9999px;
	background-color: #fff;
}
.el_vision_slide__lv1H span.txt {
	display: block;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.5;
	color: var(--key-color);
	text-align: center;
}
.el_vision_slide__lv1H span.la {
	display: inline-block;
	font-size: 40px;
}
@media (min-width: 667px) and (max-width: 1499px) {
	.el_vision_slide__lv1H.la_fos_small span.txt {
		font-size: 29px;
	}
	.el_vision_slide__lv1H.la_fos_small span.la {
		font-size: 36px;
	}
}
.ly_vision_slide__cont_1 {
	display: flex;
	justify-content: space-between;
	gap: 40px;
}
.ly_vision_slide__cont_1 +  div {
	margin-top: 40px;
}
.bl_vision_slide__img {
	flex: 0 0 auto;
	aspect-ratio: 5 / 3.3;
	width: 56.818%;
	height: 100%;
	border-radius: 20px;
	overflow: hidden;
}
.bl_vision_slide__img > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.bl_vision_slide__txt {
	flex: 1 1 auto;
	padding-top: 14px;
	padding-right: 20px;
}
.bl_vision_slide__txt p {
	font-size: 15px;
	line-height: 2;
}
.el_vision_slide__lv2H {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.5;
	color: var(--key-color);
	text-align: center;
}
.ly_vision_slide__cont_2 {
	padding: 30px 40px 27px;
	border-radius: 20px;
	background-color: #fff;
}
.bl_vision_slide__fig .el_figCap {
	font-weight: 400;
}
@media screen and (max-width: 666px) {
	.el_vision_slide__lv1H {
		margin-bottom: 25px;
		padding: 18px 20px;
	}
	.el_vision_slide__lv1H span.txt {
		font-size: clamp(16px, 4.615vw, 20px);
		line-height: 1.555;
	}
	.el_vision_slide__lv1H span.la {
		font-size: 1.111em;
	}
	.el_vision_slide__lv1H.sm_line_2 {
		padding: 16px 20px;
	}
	.el_vision_slide__lv1H.sm_line_2 span.la {
		display: unset;
	}
	.ly_vision_slide__cont_1 {
		flex-direction: column;
		gap: 20px;
		padding: 0 5px;
	}
	.bl_vision_slide__img {
		width: 100%;
		border-radius: 10px;
	}
	.bl_vision_slide__txt {
		padding: 0 18px;
	}
	.bl_vision_slide__txt p {
		min-height: 286px;
		font-size: 14px;
		line-height: 1.857;
	}
	.ly_vision_slide__cont_1 + div {
		margin-top: 30px;
		margin-left: -15px;
		padding: 24px 20px 20px;
		width: calc(100% + 30px);
	}
	.el_vision_slide__lv2H {
		font-size: 18px;
		line-height: 1.555;
	}
	.bl_vision_slide__fig .el_figCap {
		min-height: 40px;
	}
}

/* #donation-request */
.ly_donation {
	padding-top: 110px;
}
a.un_btn_dl_donation-form {
	display: block;
	margin: 22px 0 30px;
	width: 280px;
}
.el_figCap {
	margin-top: 1em;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.666;
}
.el_figCap bold {
	font-weight: 700;
}
@media screen and (max-width: 666px) {
	.ly_donation {
		padding-top: 68px;
	}
	a.un_btn_dl_donation-form {
		margin: -2px 0 30px;
	}
	.el_figCap {
		font-size: 12px;
	}
}

/* #donation-request | Cards */
.ly_donation_cards {
	margin-top: 70px;
	margin-bottom: 100px;
}
.bl_donation_card {
	margin-bottom: 20px;
	border-radius: 30px;
	overflow: hidden;
}
.el_donation_card__ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100px;
	color: #fff;
}
.el_donation_card__ttl.orange {
	background-color: var(--color-orange);
}
.el_donation_card__ttl.green {
	background-color: var(--color-green);
}
.el_donation_card__ttl.blue {
	background-color: var(--key-color);
}
.el_donation_card__ttl span.txt {
	display: block;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.666;
}
.el_donation_card__ttl span.num {
	display: inline-block;
	margin: 0 .2em;
	font-size: 50px;
	vertical-align: sub;
}
.el_donation_card__ttl span.space {
	margin-left: .75em;
}
@media screen and (max-width: 666px) {
	.ly_donation_cards {
		margin-top: 40px;
		margin-bottom: 62px;
	}
	.ly_donation_cards li + li {
		margin-top: 22px;
	}
	.bl_donation_card {
		margin-bottom: 10px;
		border-radius: 25px;
	}
	.el_donation_card__ttl {
		height: 85px;
	}
	.el_donation_card__ttl span.txt {
		font-size: 18px;
	}
	.el_donation_card__ttl span.num {
		margin: 0 .15em;
		font-size: 45px;
	}
	.el_donation_card__ttl span.space {
		margin-left: .5em;
	}
}

/* #donation-request | Tabs */
.bl_tablist {
	display: flex;
	justify-content: center;
	gap: 0 15px;
}
.el_tab {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 500px;
	height: 80px;
	border-radius: 20px 20px 0 0;
	background-color: var(--color-light-blue);
	transition: background-color .3s, color .3s;
}
.el_tab:not(.is-current):hover {
	cursor: pointer;
}
.el_tab > span {
	display: block;
	font-weight: 700;
	font-size: 22px;
	line-height: 1;
	color: var(--key-color);
}
.bl_tabpanel.is-current,
.el_tab.is-current {
	background-color: var(--key-color);
}
.el_tab.is-current > span {
	color: #fff;
}
.el_tab.mini {
	width: 400px;
	height: 60px;
	background-color: var(--color-light-blue);
}
.el_tab.mini.is-current {
	background-color: #fff;
}
.el_tab.mini > span {
	font-size: 18px;
}
.el_tab.mini.is-current > span {
	color: var(--key-color);
}
.bl_tabpanel {
	padding-top: 60px;
	padding-bottom: 60px;
	text-align: center;
	background-color: var(--key-color);
}
.bl_tabpanel--sub {
	padding: 70px var(--pd-side) 45px;
	border-radius: 30px;
	background-color: #fff;
}
.el_tabpanel--sub_ttl {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.666;
	color: var(--key-color);
}
.el_credit_cards {
	margin-inline: auto;
	width: 100%;
	max-width: 473px;
}
@media screen and (max-width: 666px) {
	.bl_tablist {
		gap: 0 10px;
	}
	.el_tab {
		width: calc((100vw - 10px) / 2);
		height: 70px;
	}
	.el_tab > span {
		font-size: 16px;
		line-height: 1.5;
	}
	.el_tab > span.sm_sm {
		font-size: 15px;
	}
	.bl_tabpanel {
		padding-top: 30px;
		padding-bottom: 40px;
	}
	.el_tab.mini {
		width: calc((100vw - 10px - (var(--pd-side) * 2)) / 2);
		height: 50px;
	}
	.el_tab.mini > span {
		font-size: 15px;
	}
	.bl_tabpanel--sub {
		margin-left: calc(-1 * var(--pd-side));
		padding: 30px var(--pd-side);
		width: 100vw;
		border-radius: 0;
	}
	.bl_tabpanel--sub.sm_yearly {
		padding-top: 60px;
	}
	.el_tabpanel--sub_ttl {
		font-size: 16px;
		line-height: 1.5;
	}
	.el_credit_cards {
		max-width: 255px;
	}
}

/* #donation-request | Price List */
.ly_price_list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0px, 1fr));
	gap: 20px;
	margin-top: 47px;
	margin-inline: auto;
	max-width: 1020px;
}
.ly_price_list.yearly {
	margin-top: 100px;
	margin-bottom: 75px;
}
.ly_price_list + .el_btn_mid {
	margin-top: 45px;
}
.bl_price_list {
	position: relative;
	height: 100px;
	border-radius: 20px;
	background-color: #E8E8E8;
	box-shadow: 0px 2px 2px 0px #00000040 inset;
}
a.el_price_list__btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
    height: 100%;
}
.el_price_list__btn span.txt {
	display: block;
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	color: var(--key-color);
}
.el_price_list__btn span.num {
	display: inline-block;
	margin-right: 0.25em;
	font-size: 40px;
	vertical-align: sub;
}
.bl_price_list span.orange {
	display: block;
	position: absolute;
	top: -19px;
	left: 50%;
	transform: translateX(-50%);
	padding: 10px 22px;
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	color: #fff;
	white-space: nowrap;
	border-radius: 9999px;
	background-color: var(--color-orange);
}
@media screen and (max-width: 666px) {
	.ly_price_list {
		grid-template-columns: repeat(2, minmax(0px, 1fr));
		gap: 10px;
		margin-top: 30px;
	}
	.ly_price_list.yearly {
		margin-top: 50px;
		margin-bottom: 40px;
	}
	.ly_price_list + .el_btn_mid {
		margin-top: 30px;
	}
	.bl_price_list {
		height: 70px;
	}
	.bl_price_list.sm_gap_high {
		margin-top: 14px;
	}
	.el_price_list__btn span.txt {
		font-size: 14px;
	}
	.el_price_list__btn span.num {
		font-size: clamp(30px, 8.2vw, 32px);
	}
	.bl_price_list span.orange {
		top: -14px;
		padding: 8px 13px;
		font-size: 12px;
	}
}

/* #donation-request | Onetime List */
.ly_donation_onetime_list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0px, 1fr));
	gap: 60px;
	margin-top: 50px;
	margin-inline: auto;
	max-width: 1060px;
}
.bl_donation_onetime_list {
	border-radius: 20px;
}
.el_donation_onetime_list_link {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 340px;
	border: 2px solid var(--key-color);
	border-radius: 20px;
}
.un_donation_onetime_list__credit > img {
	width: 186px;
}
.ly_donation_onetime_list figcaption {
	margin-top: 1em;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.666;
	color: var(--key-color);
}
.un_donation_onetime_list__paypay > img {
	width: 179px;
}
.ly_donation_onetime_list .el_credit_cards {
	margin-top: 53px;
	margin-bottom: 27px;
}
.ly_qr {
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-top: 35px;
}
.ly_qr > img {
	width: 100px;
	height: 100px;
}
.ly_qr > figcaption {
	margin-top: 0;
	white-space: nowrap;
}
@media screen and (max-width: 666px) {
	#panel-oneoff .el_tabpanel--sub_ttl {
		margin-top: 10px;
	}
	.ly_donation_onetime_list {
		display: block;
		margin-top: 25px;
	}
	.el_donation_onetime_list_link {
		height: 215px;
	}
	.un_donation_onetime_list__credit > img {
		width: 116px;
	}
	.un_donation_onetime_list__paypay > img {
		width: 126px;
	}
	.ly_donation_onetime_list figcaption {
		margin-top: 0.4em;
		font-size: 14px;
	}
	.ly_donation_onetime_list .el_credit_cards {
		margin-top: 15px;
		margin-bottom: 30px;
	}
	.ly_qr {
		display: none !important;
	}
}

/* #donation-request | Other Support */
.wrap_other_support {
	margin-top: 100px;
	margin-bottom: 100px;
}
.el_other_support__lv2H {
	margin-bottom: 60px;
	font-weight: 700;
	font-size: 28px;
	line-height: 1.666;
	color: var(--color-green);
}
.ly_other_support {
	margin-bottom: 55px;
}
.ly_other_support.ly_col3 {
	gap: 55px 60px;
}
.bl_other_support__card {
	margin-bottom: 20px;
	width: 100%;
	border-radius: 30px;
	background-color: rgba(60, 180, 70, .1);
	overflow: hidden;
}
.el_other_support__ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 70px;
	background-color: var(--color-green);
}
.el_other_support__ttl > span {
	display: block;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.666;
	color: #fff;
}
.el_other_support__ttl > span > span.small {
	font-size: .8em;
}
.el_other_support__note {
	font-size: 14px;
}
@media screen and (max-width: 666px) {
	.wrap_other_support {
		margin-top: 55px;
		margin-bottom: 65px;
	}
	.ly_other_support {
		margin-bottom: 25px;
	}
	.bl_other_support + .bl_other_support {
		margin-top: 22px;
	}
	.bl_other_support__card {
		margin-bottom: 10px;
	}
	.el_other_support__lv2H {
		margin-bottom: 25px;
		font-size: 25px;
	}
	.el_other_support__ttl {
		height: 55px;
	}
	.el_other_support__ttl > span {
		font-size: 20px;
	}
	.el_other_support__img {
		aspect-ratio: 34 / 20;
		width: 100%;
		height: auto;
		overflow: hidden;
	}
	.el_other_support__img > img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		object-position: center;
	}
}

/* #cheering-message */
.bl_msg > button {
	display: flex;
	gap: 20px;
	padding: 23px 23px 23px 0;
	border: 2px solid var(--color-grey);
	border-radius: 20px;
	background-color: #fff;
	box-shadow: 3px 3px 3px 0px #00000026;
	overflow: hidden;
}
.bl_msg__img {
	flex: 1 0 auto;
	aspect-ratio: 1 / 1;
	width: 100%;
	max-width: 170px;
	height: 100%;
	max-height: 170px;
	border-radius: 0 15px 15px 0;
	overflow: hidden;
}
.bl_msg__img > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.bl_msg__txt {
	flex: 2 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: .6em 0;
	text-align: left;
}
.el_msg__name {
	margin-top: .1em;
	font-weight: 700;
	font-size: clamp(15px, 1.066vw, 16px);
	line-height: 1.5;
	color: var(--color-black);
}
.el_msg__katagaki {
	display: block;
	margin-top: .7em;
	font-weight: 700;
	font-size: clamp(11px, .8vw, 12px);
	line-height: 1.5;
	color: var(--color-black);
}
.el_msg__txt {
	font-size: clamp(13px, .933vw, 14px);
	line-height: 1.785;
	color: var(--color-black);
}
@media screen and (max-width: 666px) {
	.bl_msg + .bl_msg {
		margin-top: 20px;
	}
	.bl_msg > button {
		padding: 22px 20px 22px 0;
	}
	.bl_msg__img {
		max-width: 140px;
	}
	.el_msg__name {
		margin-top: -0.3em;
		font-size: clamp(14px, 4.102vw, 16px);
	}
	.el_msg__katagaki {
		font-size: clamp(10px, 3.076vw, 12px);
	}
	.el_msg__txt {
		font-size: clamp(12px, 3.589vw, 14px);
		line-height: 1.571 !important;
	}
}

/* #cheering-message | Modal */
body.no_scroll {
    overflow-y: hidden !important;
}
.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(50, 50, 50, 0.8);
	width: 100%;
	height: 100%;
	z-index: 20;
}
.modal-window {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - (var(--pd-side) * 2));
	max-width: 1160px;
	height: auto;
	max-height: 660px;
	background-color: #fff;
	box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.25);
	z-index: 200;
	overflow: scroll;
	padding: 80px 50px 80px 80px;
}
.modal-window.furusato {
	padding: 36px 40px;
	max-width: 550px;
}
.button-close {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	background-color: var(--color-black);
	cursor: pointer;
}
.button-close::before,
.button-close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 3px; /* 棒の幅（太さ） */
	height: 22px; /* 棒の高さ */
	background: #fff;
}
.button-close::before {
	transform: translate(-50%,-50%) rotate(45deg);
}
.button-close::after {
	transform: translate(-50%,-50%) rotate(-45deg);
}
.js-open:hover,
.js-close:hover {
	cursor: pointer;
}
.ly_msg_modal {
	display: flex;
	justify-content: space-between;
}
.bl_msg_modal__head {
	flex: 0 0 auto;
	margin: -30px 0 0 -30px;
	width: 250px;
}
.bl_msg_modal__txt {
	flex: 1 1 auto;
	margin-left: 80px;
	padding-right: 22px;
	max-height: 500px;
    overflow-y: scroll;
}
.ly_msg_modal .bl_msg__img {
	margin-bottom: 20px;
	width: 250px;
	max-width: 250px;
	height: 250px;
	max-height: 250px;
	border-radius: 20px;
}
.ly_msg_modal .el_msg__name {
	font-size: 20px;
}
.ly_msg_modal .el_msg__katagaki {
	margin-top: 1em;
	font-size: 14px;
	line-height: 1.7;
}
.ly_msg_modal .el_msg__txt {
	font-size: 16px;
	line-height: 2;
}
.ly_msg_modal .el_msg__txt strong {
	display: inline-block;
	margin-bottom: 1em;
}
.el_msg_modal__note {
	margin-top: 10px;
	font-size: 14px;
	line-height: 1.714;
	color: var(--color-black);
}
.el_msg_modal__note::before {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	margin-bottom: 15px;
	background-color: var(--color-grey);
}
.hp_original_scrollbar::-webkit-scrollbar {
	width: 8px;
	background: transparent;
	border-radius: 0;
}
.hp_original_scrollbar::-webkit-scrollbar-thumb {
	background: var(--color-black);
	border-radius: 0;
}
@media screen and (max-width: 666px) {
	.modal-window {
		padding: 50px 25px 0;
		width: calc(100vw - 70px);
		height: auto;
		max-height: calc(100vh - 70px);
		overflow: unset;
	}
	.ly_msg_modal {
		display: block;
	}
	.bl_msg_modal__head {
		display: flex;
		justify-content: space-between;
		margin: 0;
		padding-bottom: 30px;
		width: 100%;
		border-bottom: 2px solid var(--color-grey);
	}
	.ly_msg_modal .bl_msg__img {
		flex: 0 0 auto;
		margin: -50px 20px 0 -25px;
		width: 140px;
		max-width: 140px;
		height: 140px;
		max-height: 140px;
		border-radius: 0 0 20px 0;
	}
	.ly_msg_modal .el_msg__name {
		flex: 1 1 auto;
		font-size: 16px;
	}
	.ly_msg_modal .el_msg__katagaki {
		margin-top: .8em;
		font-size: 12px;
		line-height: 1.65;
	}
	.bl_msg_modal__txt {
		margin-left: 0;
		padding: 22px 20px 20px 0;
		width: calc(100% + 25px);
		max-height: 70svh;
	}
	.ly_msg_modal .el_msg__txt {
		font-size: 14px;
		line-height: 1.857 !important;
	}
	.el_msg_modal__note {
		margin-top: 0;
		font-size: 12px;
		line-height: 1.833;
	}
	.el_msg_modal__note::before {
		margin-bottom: 10px;
	}
	.hp_original_scrollbar::-webkit-scrollbar {
		width: 5px;
	}
	.button-close {
		width: 32px;
		height: 32px;
	}
	.button-close::before, .button-close::after {
		height: 16px;
	}
	.modal-window.furusato {
		padding: 30px 40px;
	}
	.modal-window.furusato p {
		font-size: 16px;
		line-height: 2;
	}
}

/* #donor-list */
.wrap_donor_list + .wrap_donor_list {
	margin-top: 40px;
}
.el_lv2H + .wrap_donor_list {
	margin-top: 42px;
}
.el_donor_ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 12px;
	width: 150px;
	height: 40px;
	border-radius: 9999px;
	background-color: var(--color-black);
}
.el_donor_ttl > span {
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	color: #fff;
}
.ly_donor_list {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 25px 20px;
	grid-auto-flow: row;
	margin-top: 25px;
}
.bl_donor_list {
	grid-column: span 2;
}
.bl_donor_list > .bl_donor_list__logo {
	height: 80px;
}
.bl_donor_list.is_full {
	grid-column: span 12;
}
.bl_donor_list.is_full > .bl_donor_list__logo {
	height: 120px;
}
/* .bl_donor_list.is_half {
	grid-column: span 6;
}
.bl_donor_list.is_half > .bl_donor_list__logo {
	height: 110px;
} */
.bl_donor_list.is_quarter {
	grid-column: span 3;
}
.bl_donor_list.is_quarter > .bl_donor_list__logo {
	height: 100px;
}
.bl_donor_list__logo {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 15px;
	background-color: #fff;
	box-shadow: 0px 2px 2px 0px #00000040 inset;
	overflow: hidden;
}
.bl_donor_list__logo img {
	width: auto;
	height: 100%;
	object-fit: contain;
}
.el_donor_list__name {
	margin-top: .85em;
	font-weight: 500;
	font-size: 12px;
	line-height: 1.666;
	text-align: center;
}
.el_donor_list__name.hp_wide {
	margin-left: -10%;
	width: 120%;
}
.bl_donor_list.is_full .el_donor_list__name {
	margin-top: 1.25em;
}
.wrap_donor_list p.note {
	display: inline-block;
	margin-top: 35px;
	font-size: .75em;
	vertical-align: bottom;
}
.wrap_donor_list.kojin p {
	padding-bottom: 0;
}
.wrap_donor_list.kojin p.note {
	margin-top: .6em;
}
@media screen and (max-width: 666px) {
	.wrap_donor_list + .wrap_donor_list {
		margin-top: 25px;
	}
	.el_lv2H + .wrap_donor_list {
		margin-top: 22px;
	}
	.el_donor_ttl {
		width: 120px;
		height: 35px;
	}
	.el_donor_ttl > span {
		font-size: 14px;
	}
	.wrap_donor_list.kojin p {
		font-size: 14px;
		line-height: 1.785;
	}
	.ly_donor_list {
		gap: 15px 10px;
		margin-top: 20px;
	}
	.bl_donor_list,
	.bl_donor_list.is_quarter {
		grid-column: span 6;
	}
	.bl_donor_list.is_full > .bl_donor_list__logo {
		height: 100px;
	}
	.bl_donor_list.is_quarter > .bl_donor_list__logo {
		height: 75px;
	}
	.bl_donor_list > .bl_donor_list__logo {
		height: 65px;
	}
	.bl_donor_list__logo img.sm_w_80p {
		width: 80%;
	}
	.bl_donor_list__logo img.sm_w_70p {
		width: 70%;
	}
	.el_donor_list__name {
		margin-top: 0.5em;
		margin-bottom: -5px;
		font-size: 10px;
	}
	.bl_donor_list.is_quarter .el_donor_list__name,
	.bl_donor_list.is_full .el_donor_list__name {
		margin-top: .7em;
		margin-bottom: 0;
		font-size: 12px;
	}
	.wrap_donor_list.kojin p.note {
		margin-top: .25em;
		font-size: 12px;
	}
}

/* #organizer */
.ly_org_list {
	display: grid;
	grid-template-columns: max-content 1fr;
	column-gap: 20px;
	row-gap: 0;
	align-items: baseline;
	margin: 33px 0 53px 0;
}
.ly_org_list dt,
.ly_org_list dd {
	margin: 0;
	font-weight: 500;
	font-size: 14px;
	line-height: 2;
}
.ly_org_list dt {
	color: var(--color-black);
	white-space: nowrap;
}
.ly_org_list dt::before {
	content: "［";
	margin-left: -.7em;
	color: var(--color-black);
}
.ly_org_list dt::after  {
	content: "］";
	color: var(--color-black);
}
.ly_org_list dd {
	color: var(--color-black);
	overflow-wrap: anywhere;
}
.bl_org_img {
	display: block;
	aspect-ratio: 4 / 3;
	border-radius: 20px;
	background-color: #f6f6f6;
	overflow: hidden;
}
.el_org_img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
@media (max-width: 640px) {
	.ly_org_list {
		margin: 22px 0 35px;
	}
	.ly_org_list dt,
	.ly_org_list dd {
		font-size: 13px;
		line-height: 1.846;
	}
	.ly_org_img.ly_col3 {
		display: flex;
		flex-direction: row;
        flex-wrap: wrap;
		gap: 10px;
	}
	.bl_org_img {
		width: calc((100% - 10px) / 2);
		border-radius: 15px;
	}
	.bl_org_img:first-of-type {
		width: 100%;
	}
}

/* #contact */
.ly_contact {
	margin-top: 43px;
	border-top: 2px solid var(--color-grey);
	border-bottom: 2px solid var(--color-grey);
}
.bl_contact {
	padding: 45px 0 0;
	width: 50%;
}
.bl_contact.is_full {
	width: 100%;
}
.bl_contact__img {
	display: flex;
	align-items: center;
	gap: 0 30px;
}
.el_contact__img {
	display: block;
	flex: 0 0 auto;
	width: 145px;
	height: 145px;
	border-radius: 50%;
	overflow: hidden;
}
.el_contact__name {
	display: block;
	flex: 1 1 auto;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.333;
	color: var(--color-black);
}
.el_contact_lv3H {
	padding: 40px 0;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.666;
	color: var(--color-black);
	border-top: 2px solid var(--color-grey);
}
.bl_contact__note p {
	margin-top: 42px;
	font-size: 12px;
	line-height: 2;
	color: var(--color-black);
}
.bl_contact__note p strong {
	font-weight: 700;
}
.un_copyright_j {
	position: absolute;
	bottom: 96px;
	left: 0;
	font-size: 12px;
	line-height: 1;
}
@media screen and (max-width: 666px) {
	.ly_contact {
		justify-content: center;
		gap: 0 45px;
		margin-top: 30px;
	}
	.ly_contact,
	.el_contact_lv3H {
		border-color: var(--color-light-grey);
	}
	.bl_contact {
		padding-top: 30px;
		width: auto;
	}
	.bl_contact__img {
		flex-direction: column;
		text-align: center;
	}
	.el_contact__img {
		width: 120px;
		height: 120px;
	}
	.el_contact__name {
		margin-top: 1em;
		font-size: 14px;
	}
	.el_contact_lv3H {
		padding: 21px 0;
		font-size: 16px;
		line-height: 1.875;
	}
	.bl_contact__note p {
		margin-top: 23px;
		line-height: 1.85;
	}
	.bl_contact__note p strong {
		display: inline-block;
        margin-bottom: .5em;
	}
	.un_copyright_j {
		position: relative;
		bottom: unset;
		left: unset;
		margin-top: 3.5em;
		margin-bottom: -2.5em;
	}
}

/*-------------------------------------------------
	Page - kouza-furikae-monthly
-------------------------------------------------*/
.el_page_lv2H {
	margin: .25em 0 1.4em;
	color: #fff;
	background-color: var(--key-color);
}
p.la_pd_side + .el_page_lv2H {
	margin-top: 1em;
}
.bl_dl_list + .el_page_lv2H {
	margin-top: 2.3em;
}
.la_pd_side {
	padding-left: 30px;
	padding-right: 30px;
}
.bl_dl_list {
	margin-top: -0.75em;
	margin-left: 1.5em;
	padding: 0 30px 0 60px;
	text-indent: -1.5em;
}
.el_dl_item p::before {
	content: '▶';
	margin-right: 0.5em;
	color: var(--key-color);
}
.el_icon_dl {
	display: inline-block;
	margin-left: 0.4em;
	width: 30px;
	height: 30px;
	vertical-align: middle;
}
@media screen and (max-width: 666px) {
	.el_page_lv2H {
		margin: 0 0 1.4em;
		padding: .834em 1em;
		font-size: 18px;
		line-height: 1.666;
	}
	.la_pd_side {
		padding-left: 0;
		padding-right: 0;
	}
	.bl_dl_list {
		margin-top: -1em;
		margin-left: 0;
		padding: 0 0 0 1.5em;
	}
	.bl_dl_list + .el_page_lv2H {
		margin-top: 1.9em;
	}
	.el_dl_item + .el_dl_item {
		margin-top: .25em;
	}
	.el_dl_item span.sm_sm {
		margin-left: .5em;
		font-size: .8em;
	}
	p.la_pd_side + .el_page_lv2H {
		margin-top: .5em;
	}
}

/*-------------------------------------------------
	Page - FAQ
-------------------------------------------------*/
.bl_faq + .bl_faq {
	margin-top: 60px;
}
.el_faq__ttl {
	display: inline-block;
	padding: 20px 25px;
	border-radius: 20px 20px 0 0;
	background-color: var(--color-black);
}
.el_faq__ttl > span.txt {
	font-weight: 700;
	font-size: 18px;
	line-height: 1;
	color: #fff;
}
.el_faq__ttl span.num {
	margin-right: 0.5em;
}
@media screen and (max-width: 666px) {
	.bl_faq + .bl_faq {
		margin-top: 40px;
	}
	.el_faq__ttl {
		padding: 12px 18px;
	}
	.el_faq__ttl > span.txt {
		font-size: 14px;
		line-height: 1.5;
	}
}

/*-------------------------------------------------
	Page - Top Message
-------------------------------------------------*/
.el_top_message__img {
	margin-bottom: 40px;
}
.el_top_message__img img {
	border-radius: 15px;
}
.el_top_message__ttl span.name {
	display: block;
	margin-top: 1em;
	font-size: 22px;
}
.el_top_message__ttl span.small {
	font-size: 18px;
}
.ly_top_message h3 {
	margin-bottom: .6em;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.6875;
	color: var(--key-color);
}
.ly_top_message p {
	font-size: 18px;
	line-height: 1.888;
}
p.el_top_message__note {
	margin-top: 1.75em;
	padding-top: 1em;
	font-size: 16px;
	line-height: 2;
	border-top: 2px solid var(--color-grey);
}
@media screen and (max-width: 666px) {
	.el_top_message__img {
		margin-bottom: 30px;
	}
	.el_top_message__img .el_figCap {
		margin-top: .5em;
		font-size: 13px;
	}
	.el_top_message__ttl {
		font-size: 24px;
		line-height: 1.458;
	}
	.el_top_message__ttl span.name {
		margin-top: .8em;
		font-size: 16px;
	}
	.el_top_message__ttl span.small {
		font-size: 14px;
	}
	.ly_top_message h3 {
		margin-bottom: .8em;
		font-size: 16px;
	}
	.ly_top_message p {
		font-size: 15px;
		line-height: 1.8;
	}
	p.el_top_message__note {
		margin-top: .9em;
		font-size: 14px;
		line-height: 1.857;
	}
}

/*-------------------------------------------------
	Footer
-------------------------------------------------*/
.ly_ftr {
	padding-top: 60px;
	padding-bottom: 60px;
	background-color: var(--key-color);
}
.el_ftr_logo {
	margin-bottom: 22px;
	width: 177px;
	height: 20px;
}
.bl_ftr_txt {
	width: 50%;
}
.bl_ftr_txt:last-of-type {
	padding-left: 20px;
	border-left: 1px solid #fff;
}
.bl_ftr_list {
	display: flex;
	justify-content: flex-start;
}
.el_ftr_list_ttl {
	min-width: 100px;
}
.el_ftr_list_ttl,
.el_ftr_txt {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.833;
	color: #fff;
}
a.el_btn_page_top {
	display: block;
	position: absolute;
	top: -90px;
	right: var(--pd-side);
	width: 60px;
	height: 82px;
	font-size: 16px;
	line-height: 1;
	color: #fff;
	text-align: center;
}
a.el_btn_page_top::before {
	content: '';
	display: block;
	margin-bottom: 8px;
	width: 60px;
	height: 60px;
	border: 3px solid var(--key-color);
	border-radius: 50%;
	background: top center / contain no-repeat url("../img/cmn/arrow_top.svg") #fff;
	box-shadow: 0px 4px 4px 0px #00000040;
	overflow: hidden;
}
a.el_btn_page_top:hover {
	opacity: 1;
}
.un_copyright_okf {
	margin-top: 2em;
	font-weight: 400;
	font-size: 12px;
	line-height: 1;
	color: #fff;
}
@media screen and (max-width: 666px) {
	.ly_ftr {
		padding-top: 45px;
		/* padding-bottom: 40px; */
		padding-bottom: 50px;
	}
	.ly_ftr .ly_w_master {
		padding-left: 35px;
		padding-right: var(--pd-side);
		max-width: 100%;
	}
	.ly_ftr .ly_w_master .ly_flex {
		display: block;
	}
	.el_ftr_logo {
		margin-bottom: 30px;
		width: 220px;
		height: 26px;
	}
	.bl_ftr_txt {
		width: 100%;;
	}
	.ly_ftr_list {
		margin-bottom: 1em;
	}
	.bl_ftr_txt:last-of-type {
		padding-left: 0;
		border-left: none;
	}
	.bl_ftr_txt:last-of-type .el_ftr_txt {
		line-height: 1.5;
	}
	.el_ftr_list_ttl {
		min-width: 90px;
	}
	a.el_btn_page_top {
		display: none;
		position: fixed;
		top: unset;
		right: var(--pd-side);
		bottom: var(--pd-side);
		width: 45px;
		height: 45px;
		font-size: 14px;
		z-index: 9;
	}
	a.el_btn_page_top::before {
		margin-bottom: 0;
		width: 45px;
		height: 45px;
		border: 2px solid var(--key-color);
	}
	a.el_btn_page_top > span {
		display: none;
	}
}