@charset "utf-8";/* --------------------------------------------------- *//* 何でも相談会 *//* --------------------------------------------------- *//* パンくずリスト */#breadcrumb {	width: 100%;	margin: 0 0 0 auto;	padding: 0 0 0 4%;	border-bottom: none;	box-sizing: border-box;}/* --------------------------------------------------- *//* タイトル *//* --------------------------------------------------- */#pgtitle {}#pgtitle .cover {	position: relative;	padding-top: 640px;	background-image: url('../image/soudan2026winter/cover.jpg');	background-size: cover;	background-position: 50% 50%;}#pgtitle .cover h2 {	position: absolute;	top: 8%;	left: 50%;	writing-mode: vertical-rl;	text-shadow: 0 -4px 8px rgba(255, 255, 255, 0.75),	0 4px 8px rgba(255, 255, 255, 0.75),	-4px 0 8px rgba(255, 255, 255, 0.75),	4px 0 8px rgba(255, 255, 255, 0.75);	font-size: 2.6rem;	font-weight: 600;	transform: translateX(-50%);}#pgtitle .lead {	margin: 0 auto;	width: 90%;	max-width: 720px;}#pgtitle .lead h1 {	position: relative;	margin: 0 auto 2.0em;	margin-top: -12.0em;	width: 320px;}#pgtitle .lead p { margin-top: 1.0em; }@media screen and (max-width: 480px) {	#pgtitle .cover { padding-top: 140%; }	#pgtitle .cover h2 {		top: 6%;		font-size: 6.0vw;	}#pgtitle .lead h1 {	position: relative;	margin: 0 auto 2.0em;	margin-top: -37.5%;	width: 75.00%;}}/* --------------------------------------------------- *//* #longlife *//* --------------------------------------------------- */#longlife {	position: relative;	background: linear-gradient(to bottom, transparent, #f0f0ee 50%);}#longlife h2 {	margin: 0 auto;	width: 96%;	font-size: 2.8rem;	font-weight: 600;	line-height: 1.5;	text-align: center;}#longlife h2::before {	content: '｢FPの家｣は';	display: block;}#longlife h2 span {	display: inline-block;	border-bottom: 2px solid;}#longlife .safesec {	display: flex;	justify-content: space-between;}#longlife .safesec > div {	position: relative;	width: 45%;}#longlife .safesec .box {	position: relative;	margin-top: 3.0em;	border-radius: 1.0em;	padding: 2.5em 8% 0;	background-color: #fff;}#longlife .safesec .box::before {	content: '';	position: absolute;	bottom: 99%;	left: 50%;	display: block;	width: 0.001em;	height: 0.001em;	border-top: 24px solid transparent;	border-right: 6px solid transparent;	border-bottom: 12px solid #fff;	border-left: 12px solid #fff;}#longlife .safesec .box::after {	content: '';	position: absolute;	bottom: 99%;	right: 50%;	display: block;	width: 0.001em;	height: 0.001em;	border-top: 24px solid transparent;	border-right: 12px solid #fff;	border-bottom: 12px solid #fff;	border-left: 6px solid transparent;}#longlife .safesec .box > div {	padding-bottom: 2.5em;}#longlife .safesec .safe .box > div {	padding-left: 40%;	background-image: url('../image/soudan2026winter/longlife-panel.png');	background-size: 36% auto;	background-repeat: no-repeat;}#longlife .safesec .sec .box > div {	display: flex;	flex-wrap: wrap;	gap: 0.5em 4%;}#longlife .safesec .sec .box > div figure { width: 100%; }#longlife .safesec .sec .box > div p { width: 48%; font-size: 1.2rem; }#longlife .safesec h3 {	margin-bottom: 1.0em;	padding: 0.5em 0.5em;	font-size: 2.1rem;	font-weight: 600;	text-align: center;}#longlife .safesec .safe h3 { color: #f06e14; }#longlife .safesec .sec h3 { color: #55c1de; }#longlife .safesec .sec > figure { position: relative; }#longlife .safesec .sec > figure::before {	content: '';	position: absolute;	top: 50%;	right: 105%;	display: block;	width: 12%;	padding-top: 12%;	background-image: url('../image/brandnewfp/pluspng.png');	background-size: cover;	background-position: 50% 50%;	transform: translateY(-50%);}@media screen and (max-width: 767px) {}@media screen and (max-width: 640px) {	#longlife .safesec { flex-direction: column; }	#longlife .safesec > div { width: 100%; }	#longlife .safesec .box {		margin-top: 2.0em;		border-radius: 0.75em;		padding: 2.0em 6% 0;	}	#longlife .safesec .sec > figure::before {		position: static;		margin: 3.0em auto;		transform: none;	}}@media screen and (max-width: 420px) {	#longlife h2 { font-size: 2.4rem; }}/* --------------------------------------------------- *//* イベント内容*//* --------------------------------------------------- */#holding {	position: relative;	padding-top: 5%;	background-color: #fcf2e5;}#holding::before {	content: '';	position: absolute;	bottom: 100%;	left: 0;	display:block;	width:100%;	padding-top: 10%;	background-image: url('../image/soudan2026winter/down3.png');	background-size: cover;	background-position: 50% 100%;	background-repeat: no-repeat;}#holding .hold-hd {  position: relative;	display: block;	margin: 0 auto;	width: 86%;	max-width: 1040px;	text-align: center;}#holding .hold-hd h2 {	margin: 0.75em  0 0.5em ;	color: #f6a400;	font-size: 4.8rem;	font-weight: 600;	line-height: 1.4;}#holding .hold-hd h2::before {	content: '全国一斉';	display: block;	margin: 0 auto;	width: 5.0em;	border-bottom: 1px solid;	font-size: 2.1rem;}#holding .hold-hd h4 {	display: block;	font-size: 1.8rem;	font-weight: 600;	line-height: 1.5;}#holding .hold-hd p { display: block; }#holding .hold-hd p span {	display: inline-block;}@media screen and (max-width: 767px) {	#holding .hold-hd h2 {		margin: 0.75em  0 0.5em ;		font-size: 3.6rem;	}	#holding .hold-hd h2::before { font-size: 1.8rem; }}@media screen and (max-width: 420px) {	#holding .hold-hd h2 {		margin: 0.75em  0 0.5em ;		font-size: 9.4vw;	}	#holding .hold-hd h4 { font-size: 1.6rem; }	#holding .hold-hd p { text-align: left; }	#holding .hold-hd p span { display: inline; }	#holding .hold-hd p br { display: none; }}#holding ul {	display: flex;	flex-wrap: wrap;	justify-content: space-between;	gap: 2.0em 0;	font-size: 1.6rem;}#holding ul li {	box-sizing: border-box;	padding: 2.5em;	width: 48.5%;	border-radius: 12px;	background-color: #fff;}#holding ul li h3 {	font-size: 2.4rem;	font-weight: 600;	text-align: center;}#holding ul li figure {	margin: 1.00em auto;}#holding ul li p { font-size: 1.6rem; }@media screen and (max-width: 960px) {	#holding ul { gap: 1.5em 0; }	#holding ul li {		padding: 2.0em 4%;		width: 48.5%;	}}@media screen and (max-width: 767px) {	#holding ul li {		padding: 2.0em 4%;		width: 48.0%;	}}@media screen and (max-width: 640px) {	#holding ul { gap: 1.5em 0; }	#holding ul li {		padding: 2.0em 4%;		width: 100%;	}	#holding ul li h3 { font-size: 2.1rem; }}@media screen and (max-width: 420px) {	#holding ul { gap: 1.0em 0; }	#holding ul li { padding: 1.5em 4%; }}/* --------------------------------------------------- *//* 相談内容例 *//* --------------------------------------------------- */#consult {	position: relative;	background-color: #fcf2e5;}#consult h2 {	font-size: 2.4rem;	font-weight: 600;	line-height: 1.4;	text-align: center;}#consult ul {	display: flex;	flex-wrap: wrap;	justify-content: space-between;	font-size: 1.6rem;}#consult ul li {	display: flex;	flex-direction: column;	width: 23.5%;	box-sizing: border-box;}#consult h3 {	position: relative;	display: block;	margin: 30px auto 20px;	padding: 12px 0;	width: 100%;	background-color: #f6a400;	border-radius: 12px;	box-sizing: border-box;	color: #fff;	line-height: 1.3;	text-align: center;}#consult h3 span {	position: relative;	font-size: 1.8rem;	font-weight: 600;}#consult h3 + p { font-size: 1.6rem; flex: 1 0 auto; }#consult figure {	margin: 0.5em auto 0;	width: 100%;	max-width: 256px;}#consult p.note { font-size:1.4rem; }#consult p.int { padding-left: 1.0em; text-indent: -1.0em; }@media screen and (max-width: 1040px) {	#consult ul li { width: 48%; }}@media screen and (max-width: 767px) {	#consult h2 { font-size: 2.4rem; }	#consult h3 { margin: 2.0em auto 0.75em; }	#consult h3 span { font-size: 1.6rem; }	#consult p { font-size: 1.4rem; }}@media screen and (max-width: 420px) {	#consult ul li { width: 100%; }	#consult h2 { font-size: 2.1rem; }	#consult h3 {		padding: 8px 0;		border-radius: 8px;		line-height: 1.3;	}}/* -------------------------------------------- *//* FPの家チャンネル *//* -------------------------------------------- */#fpch { background-color: #fff; }#fpch .catch h3 {	text-align: center;	vertical-align: middle;}#fpch .catch h3 span {	display: inline-block;	border-bottom: 2px solid;	font-size: 2.8rem;	font-weight: 600;	line-height: 1.5;}#fpch .mvlist > div {	display: flex;	align-items: flex-end;	gap: 2.0em 4%;	margin-top: 3.0em;	padding: 3.0em;	background: linear-gradient(to bottom, transparent, #f0f0ee);	}#fpch .mvlist .include {	position: relative;	width: 48%;}#fpch .mvlist .include + div {	width: 48%;}#fpch .mvlist .include::before {	content: '';	display: block;	padding-top: 56.0%;	width: 100%;}#fpch .mvlist .include iframe{	position: absolute;	top: 0;	bottom: 0;	left: 0;	right: 0;	display: block;	width: 100%;	height: 100%;}#fpch .mvlist h4 {	margin-bottom: 0.75em;	font-size: 1.8rem;	font-weight: 600;}#fpch .mvlist h4::before {	content: attr(data-tag)'';	display: block;	margin-bottom: 0.5em;	width: 128px;	border-radius: 64px;	background-color: #c00014;	color: #fff;	font-size: 1.4rem;	text-align: center;}#fpch .mvlist .mv1 { flex-direction: column; padding: 3.0em 10%; }#fpch .mvlist .mv1 .include,#fpch .mvlist .mv1 .include + div {	width: 100%;}@media screen and (max-width: 960px) {	#fpch .mvlist > div { flex-direction: column; padding: 3.0em 10%; }	#fpch .mvlist .include,	#fpch .mvlist .include + div { width: 100%; }}@media screen and (max-width: 767px) {	#fpch .mvlist > div,	#fpch .mvlist .mv1 { margin-top: 2.5em; padding: 2.5em 8%; }}@media screen and (max-width: 420px) {	#fpch .mvlist > div,	#fpch .mvlist .mv1 { margin-top: 2.0em;  padding: 2.0em 6%; }	#fpch .catch h3 span { font-size: 2.4rem; }	#fpch .mvlist h4::before {		width: 112px;		font-size: 1.2rem;	}}/* -------------------------------------------- *//* イベントマップ *//* -------------------------------------------- */#evmap { background-color: #faecd9; }#evmap #area_viewer li {	padding: 15px 25px;	background-color: #fff;	border-bottom: 1px solid #e0f4f8;	border-left: 1px solid #e0f4f8;	border-right: 1px solid #e0f4f8;	box-sizing: border-box;}#evmap #area_viewer li:first-child { border-top: 1px solid #e0f4f8; border-radius: 25px 25px 0 0; }#evmap #area_viewer li:nth-child(2n+2) { background-color:#f6fcfd; }#evmap #area_viewer li:last-child { border-radius: 0 0 25px 25px; }#evmap #area_viewer dl { display: table; width: 100%; }#evmap #area_viewer dl dt {	display: table-cell;	padding-right: 30px;	width: calc(100% - 300px);	vertical-align: middle;	box-sizing: border-box;}#evmap #area_viewer dl dd {	display: table-cell;	width: 300px;	vertical-align: middle;}#evmap #area_viewer dl dt h4 {	margin-bottom: 8px;	color: #00809b;	font-size: 16px;	font-weight: 500;}#evmap #area_viewer dl dt p { font-size: 14px; }#evmap #area_viewer dl dt p span {	display: inline-block;	padding-left: 8px;	font-size: 12px;}#evmap #area_viewer .wbtn-area {	display: table;	width: 100%;	text-align: center;}#evmap #area_viewer .wbtn-area > div {	display: table-cell;	width: 50%;}#evmap #area_viewer .wbtn-area > div a {	display: table;	margin: 0 auto;	width: 130px;	color: #fff;	font-size: 14px;	line-height: 32px;	text-align: center;	text-decoration: none;	border-radius: 5px;	transition: all .3s;}#evmap #area_viewer .wbtn-area > div a:hover { opacity: 0.5; }#evmap #area_viewer .wbtn-area > div.bnt-arealist a { background-color: #64c8dc; }#evmap #area_viewer .wbtn-area > div.bnt-areaevent a { background-color: #00809b; }@media screen and (max-width: 767px) {	#evmap .wrap > h3 span { font-size: 1.8rem; }	#evmap #area_viewer li { padding: 15px 20px; }	#evmap #area_viewer dl dt {		display: table-cell;		padding-right: 15px;		width: calc(100% - 280px);	}	#evmap #area_viewer dl dd {		display: table-cell;		width: 280px;	}}@media screen and (max-width: 640px) {	#evmap #area_viewer dl dt {		display: block;		padding-right: 0;		width: 100%;	}	#evmap #area_viewer dl dd {		display: table;		margin: 10px 0 0 auto;		width: 100%;		max-width: 300px;	}}@media screen and (max-width: 540px) {	#evmap > h3 { margin-bottom: 10px; }	#evmap > h3 span { font-size: 1.6rem; }	#evmap #area_viewer dl dd {		margin: 10px auto 0;		width: 100%;		max-width: 300px;	}}@media screen and (max-width: 420px) {	#evmap #area_viewer dl dt p { font-size: 13px; }	#evmap #area_viewer dl dt p span {		display: inline-block;		padding-left: 0;		font-size: 10px;	}	#evmap #area_viewer dl dd { max-width: 260px; }	#evmap #area_viewer .wbtn-area > div a {		width: 110px;		font-size: 12px;		line-height: 28px;	}}/* -------------------------------------------- *//* イベント情報 *//* -------------------------------------------- */#event { background-color: #faecd9; }#event .event-title {	margin-bottom: 20px;	text-align: center;}#event .event-title h3 {	display: inline-block;	border-bottom: 1px solid;	color: #f6a400;	font-size: 2.1rem;	font-weight: 600;	line-height: 1.4;}#event .event-title p span {	display: inline-block;	color: #f6a400;	font-size: 2.8rem;	font-weight: 600;}#event .eventlist h2 {  font-size: 2.4rem; font-weight: 600; text-align: center; }#event .eventlist {	padding: 40px 0 40px;	background-color: #fff;	border-radius: 20px;}#event .eventlist hr {	margin: 0 auto;	width: 90%;	border-top: 3px solid #faecd9;}#event .eventlist .ifwrap {	position: relative;	width:100%;	padding-top: 360px;	overflow: auto;	-webkit-overflow-scrolling:touch;}#event .eventlist .ifwrap iframe {	position: absolute;	top: 0;	right: 0;	width: 100% !important;	height: 100% !important;}@media all and (-ms-high-contrast: none){	#event .eventlist .ifwrap iframe {		right: 5%;		width: 90% !important;	}}#area-change { background-color: #cbeaf1; }#area-change form {	margin: 0 auto;	width: 85%;	max-width: 480px;}#area-change form .selectwrap { position: relative; display: table; width:100%; }#area-change form select {	-webkit-appearance: none;	-moz-appearance:  none;	appearance:  none;	display: table;	padding: 5px 20px;	width: 100%;	height: 40px;	border: 0;	font-size: 1.6rem;	line-height: 30px;	background-color: #fff;	border: 2px solid #008cb3;	border-radius: 21px;	box-sizing: border-box;	cursor: pointer;}#area-change form .selectwrap::after {	border-bottom: 1px solid #008cb3;	border-right: 1px solid #008cb3;}*:focus { outline: none; }@media screen and (max-width: 767px) {	#event .eventlist { padding: 30px 0; }	#event .event-title p { font-size: 1.8rem; }	#event .event-title h2 span { font-size: 2.8rem; }}@media screen and (max-width: 420px) {	#event .eventlist { padding: 25px 0; }	#event .event-title p { font-size: 1.6rem; }	#event .event-title h2 span { font-size: 2.4rem; }}