@charset "UTF-8";

/* =================================================
	地域と未来への活動
================================================= */

/*============//地域と未来への活動とは//============*/
.activity__intro{ padding-bottom:80px; }
.activity__intro .section-title{ margin-bottom:40px; }
.activity__intro-text{ margin-bottom:40px; }
.activity__intro-layout,
.activity__news-layout{
	margin:0 auto;
	width:var(--base-w);
}
.activity__news{
	padding: 120px 0 160px;
	background: var(--color-bg-base);
}

.activity__news.u-rounded-top:before{ top:auto; bottom:0; }

.activity__news-layout{
	display: flex;
	justify-content: space-between;
}
.activity__news-body{ width: calc(100% - 240px); }
.activity__news-layout .section-title{ width:240px; }
	
@media (max-width:1240px) {
	.activity__intro-layout,
	.activity__news-layout{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.activity__intro {
		padding-bottom:20px;
	}
}
@media (max-width:900px) {
	.activity__news-layout{ flex-direction:column; }
	.activity__news-body,
	.activity__news-layout .section-title{ width:100%; }
}
@media (max-width:767px) {
	.activity__intro-layout,
	.activity__news-layout{
		width:var(--content-width-sm);
	}
}
/*============//活動一覧部分//============*/
.activity__service{
	padding:120px 0 160px;
	background:var(--color-bg-base);
}
.activity__service .section-title{
	margin-bottom:3rem;
}
.activity__service .section-title:not(.section-title--colored){
	text-align:center;
}
.activity-service-group{
	width:var(--base-w);
	margin:0 auto;
}
.activity-service-group:not(:last-of-type){margin-bottom:40px;}
.activity-service-group .section-title--colored:before{ display:none; }
.activity-service-group__list{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	gap:20px;
}
.activity-service-group__item{
	width: calc((100% - 40px) / 3);
	display:flex;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
	overflow:hidden;
}
.activity-service-card{
	display:flex;
	flex-direction:column;
	gap:15px;
	width:100%;
	height:100%;
	padding:20px;
	background:#fff;
	transition:background-color .4s;
}
.activity-service-card__title{
	font-size: 2.4rem;
	line-height: 3.4rem;
	position:relative;
	text-align:center;
}
.activity-service-card__desc{
	min-height:70px;
	flex-grow:1;
	font-size:1.4rem;
	font-weight:var(--font-medium);
}
.activity-service-card__figure{ border-radius:8px; overflow:hidden; }
.activity-service-card__figure img{
	aspect-ratio:300 / 180;
	width:100%;
	height:auto;
}


.activity-service-group#everyday .activity__button-arrow{
	background:var(--color-everyday);
}
.activity-service-group#rich .activity__button-arrow{
	background:var(--color-rich);
}
.activity-service-group#emergency .activity__button-arrow{
	background:var(--color-emergency);
}
.activity-service-card .activity__button{
	width:100%;
	font-size: 1.4rem;
	padding:5px 45px 5px 20px;
}
@media (max-width:1240px) {
	.activity__service {padding:100px 0;}
	.activity-service-group{
		width:var(--content-width-med);
	}
	.activity-service-group__item{ width:calc((100% - 20px) / 2); }
}
@media (max-width:767px) {
	.activity-service-group{
		width:var(--content-width-sm);
	}
	.activity-service-group__item{ width:100%; }
	.activity__intro .section-title{ margin-bottom:20px; }
	.activity-service-card__title{
		font-size:2rem;
		line-height: 3rem;
	}
}
@media (any-hover:hover) {
	.activity-service-card:hover .activity__button{ color:#fff; }
	.activity-service-card:hover .activity__button-arrow,
	.activity-service-card:hover .activity__button{
		background:var(--color-accent);
	}
	.activity-service-card:hover .activity__button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.activity-service-card:hover .activity__button-arrow::after {
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}

@media (max-width:1240px) {
	.activity__news {
	padding: 80px 0 100px;
	}
}

/* =================================================
地域と未来への活動下層
================================================= */
/*============// 地域・行政との連携 //============*/
/* 共通 */
.cooperation__detail{
	margin-top: 40px;
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.cooperation__detail-title{
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.cooperation__detail-title::before {
    content: "";
    width: 4px;
    height: calc(100% - 8px) ;
    display: block;
    border-radius: 16px;
	background: var(--color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.cooperation__detail-contents{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border-radius: 15px;
}
.cooperation__detail-contents p{ font-weight: var(--font-medium); }
.cooperation__detail-dl-item:nth-child(n+2){ margin-top: 20px; }
.cooperation__detail-dt{
	margin-bottom: 6px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-accent);
	font-size: 2rem;
	font-weight: var(--font-semibold);
	line-height: 3.2rem;
}
.cooperation__detail-dd{ font-weight: var(--font-medium); }
/* 地域・行政の皆様とともに */
.cooperation__intro{
	width:var(--base-w);
	margin:0 auto;
}
.cooperation__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.cooperation__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/* 地域の課題を共に解決する */
.cooperation__solution{
	width:var(--base-w);
	margin:120px auto 0;
}
.cooperation__solution-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 安心できる街を次世代へ */
.cooperation__next-gen{
	width:var(--base-w);
	margin:120px auto 0;
}
.cooperation__next-gen-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
@media (max-width:1240px) {
	.cooperation__intro ,
	.cooperation__solution ,
	.cooperation__next-gen{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.cooperation__detail{ padding: 20px; }
	.cooperation__detail + .cooperation__detail{ margin-top: 20px; }
	.cooperation__detail-title{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.cooperation__detail-dt{
		font-size: 1.8rem;
		line-height: 2.8rem;
	}
	.cooperation__solution ,
	.cooperation__next-gen{margin: 80px auto 0; }
}
@media (max-width:767px) {
	.cooperation__intro ,
	.cooperation__solution ,
	.cooperation__next-gen{ width:var(--content-width-sm); }
}
/*============// この街を未来にのこすために //============*/
/* 共通 */
.fof__detail{
	margin-top: 40px;
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.fof__detail + .fof__detail{ margin-top: 20px; }
.fof__detail-title{
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.fof__detail-title::before {
    content: "";
    width: 4px;
    height: calc(100% - 8px) ;
    display: block;
    border-radius: 16px;
	background: var(--color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.fof__detail-contents{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border-radius: 16px;
}
.fof__detail-contents p{ font-weight: var(--font-medium); }
/* 持続可能な街づくりを目指して */
.fof__intro{
	width:var(--base-w);
	margin:0 auto;
}
.fof__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 15px;
	overflow: hidden;
}
.fof__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/* 資源をまわし、ゴミを減らす */
.fof__circulation{
	width:var(--base-w);
	margin:120px auto 0;
}
.fof__circulation-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 「食」を大切に使い切る */
.fof__food{
	width:var(--base-w);
	margin:120px auto 0;
}
.fof__food-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 地元の恵みを、低炭素で届ける */
.fof__local{
	width:var(--base-w);
	margin:120px auto 0;
}
.fof__local-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
@media (max-width:1240px) {
	.fof__intro ,
	.fof__circulation ,
	.fof__food ,
	.fof__local{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.fof__detail{ padding: 20px; }
	.fof__detail + .fof__detail{ margin-top: 20px; }
	.fof__detail-title{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.fof__detail-dt{
		font-size: 1.8rem;
		line-height: 2.8rem;
	}
	.fof__circulation ,
	.fof__food ,
	.fof__local{margin: 80px auto 0; }
}
@media (max-width:767px) {
	.fof__intro ,
	.fof__circulation ,
	.fof__food ,
	.fof__local{ width:var(--content-width-sm); }
}
/*============// 安全安心な食のお届け //============*/
.safe-food__intro{
	width:var(--base-w);
	margin:0 auto;
}
.safe-food__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.safe-food__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
.safe-food__nav{
	margin: 40px auto 0;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.safe-food__nav-item{
	width: calc((100% - 40px) / 2);
	color: #222;
	position: relative;
}
.safe-food__nav-link{
    width: 100%;
    min-height: 160px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    box-shadow: var(--next-card-shadow);
    border: 1px solid var(--color-border);
    border-radius: 16px;
    padding: 20px 60px 20px 20px;
    font-size: 2.4rem;
    background: #fff;
    transition: color ease-in .4s, background-color ease-in .4s;
}
.senior__detail-contents .senior__shopping__button{
	width: 100%;
	margin-top: 20px;
}
.safe-food__nav__icon {
	width: 40px;
	height: 40px;
	font-size: 1.8rem;
	right: 20px;
}
.safe-food__nav__icon::before,
.safe-food__nav__icon::after{
	width:40px;
	height:40px;
}
@media (any-hover:hover) {
	.safe-food__nav-link:hover .safe-food__nav__icon::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.safe-food__nav-link:hover .safe-food__nav__icon::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.safe-food__intro{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.safe-food__nav{ display: block; }
	.safe-food__nav-item{ width: 100%; }
	.safe-food__nav-item + .safe-food__nav-item{ margin-top: 20px; }
}
@media (max-width:767px) {
	.safe-food__intro{ width:var(--content-width-sm); }
    .safe-food__nav-link{
        min-height: 100px;
        height: 100%;
        padding: 20px 60px 20px 20px;
        font-size: 1.8rem;
    }
	.safe-food__nav__icon {
		width:30px;
		height:30px;
		font-size: 1.4rem;
	}
	.safe-food__nav__icon::before,
	.safe-food__nav__icon::after{
		width:30px;
		height:30px;
	}
}

/*============// シニアサポート //============*/
/* 共通 */
.senior__detail{
	margin-top: 40px;
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.senior__detail + .senior__detail{ margin-top: 20px; }
.senior__detail-title{
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.senior__detail-title::before {
    content: "";
    width: 4px;
    height: calc(100% - 8px) ;
    display: block;
    border-radius: 16px;
	background: var(--color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.senior__detail-contents{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border-radius: 16px;
}
.senior__detail-contents p{ font-weight: var(--font-medium); }
.senior__detail-contents .senior__shopping__button{
	width: 100%;
	margin-top: 20px;
}
/* 健やかで安心な暮らしをともに */
.senior__intro{
	width:var(--base-w);
	margin:0 auto;
}
.senior__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.senior__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/* 毎日の「安心」を見守る */
.senior__peace{
	width:var(--base-w);
	margin:120px auto 0;
}
.senior__peace-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 「お買い物」の不便を解消する */
.senior__shopping{
	width:var(--base-w);
	margin:120px auto 0;
}
.senior__shopping-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 「お財布」にやさしい特典 */
.senior__benefits{
	width:var(--base-w);
	margin:120px auto 0;
}
.senior__benefits-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 「健康と生きがい」をつくる */
.senior__wellness{
	width:var(--base-w);
	margin:120px auto 0;
}
.senior__wellness-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
@media (max-width:1240px) {
	.senior__intro ,
	.senior__peace ,
	.senior__shopping ,
	.senior__benefits ,
	.senior__wellness{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.senior__detail{ padding: 20px; }
	.senior__detail + .senior__detail{ margin-top: 20px; }
	.senior__detail-title{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.senior__detail-dt{
		font-size: 1.8rem;
		line-height: 2.8rem;
	}
   	.senior__peace ,
	.senior__shopping ,
	.senior__benefits ,
	.senior__wellness{margin: 80px auto 0; }
}
@media (max-width:767px) {
	.senior__intro ,
	.senior__peace ,
	.senior__shopping ,
	.senior__benefits ,
	.senior__wellness{ width:var(--content-width-sm); }
}
/*============// SDGsアクション //============*/
/* 共通 */
.sdgs__detail{
	margin-top: 40px;
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.sdgs__detail-title{
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.sdgs__detail-title::before {
    content: "";
    width: 4px;
    height: calc(100% - 8px) ;
    display: block;
    border-radius: 16px;
	background: var(--color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.sdgs__detail-contents{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border-radius: 16px;
}
.sdgs__detail-contents p{ font-weight: var(--font-medium); }
.sdgs__detail-dl-item:nth-child(n+2){ margin-top: 20px; }
.sdgs__detail-dt{
	margin-bottom: 6px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-accent);
	font-size: 2rem;
	font-weight: var(--font-semibold);
	line-height: 3.2rem;
}
.sdgs__detail-dd{ font-weight: var(--font-medium); }
.sdgs__detail-list-item{
	padding-left: 1em;
	font-weight: var(--font-medium);
	position: relative;
}
.sdgs__detail-list-item::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: var(--color-accent);
	border-radius: 50%;
}
.sdgs__detail-list-item + .sdgs__detail-list-item{ margin-top: 10px; }
.sdgs__detail-list-item-text{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
/* メグリアが取り組むSDGs */
.sdgs__intro{
	width:var(--base-w);
	margin:0 auto;
}
.sdgs__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.sdgs__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/* 食品ロス削減推進宣言 */
.sdgs__declaration{
	width:var(--base-w);
	margin:120px auto 0;
}
.sdgs__declaration-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
/* 食品ロス削減活動実績 */
.sdgs__achievements{
	width:var(--base-w);
	margin:120px auto 0;
}
.sdgs__achievements-text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
@media (max-width:1240px) {
	.sdgs__intro ,
	.sdgs__declaration ,
	.sdgs__achievements{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.sdgs__detail{ padding: 20px; }
	.sdgs__detail + .sdgs__detail{ margin-top: 20px; }
	.sdgs__detail-title{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.sdgs__detail-dt{
		font-size: 1.8rem;
		line-height: 2.8rem;
	}
	.sdgs__declaration ,
	.sdgs__achievements{margin: 80px auto 0; }
}
@media (max-width:767px) {
	.sdgs__intro ,
	.sdgs__declaration ,
	.sdgs__achievements{ width:var(--content-width-sm); }
}

/*============// 子育て応援（すくすく応援） //============*/
/* すくすく応援 */
.sukusuku__intro{
	width:var(--base-w);
	margin:0 auto;
}
.sukusuku__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.sukusuku__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/*============//一覧部分//============*/
.sukusuku__intro__list{
	margin-top: 40px;
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	gap:20px;
}
.sukusuku__intro__list-item{
	width: calc((100% - 40px) / 3);
	display:flex;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
	overflow:hidden;
}
.sukusuku__intro__list-card{
	display:flex;
	flex-direction:column;
	gap:15px;
	width:100%;
	height:100%;
	padding:20px;
	background:#fff;
	transition:background-color .4s;
}
.sukusuku__intro__list-card__title{
	font-size: 2.4rem;
	position:relative;
	text-align:center;
}
.sukusuku__intro__list-card__text{
	font-weight: var(--font-medium);
}
.sukusuku__intro__list-card__desc{
	min-height:70px;
	flex-grow:1;
	font-size:1.4rem;
	font-weight:var(--font-medium);
}
.sukusuku__intro__list-card__figure{ border-radius:8px; overflow:hidden; }
.sukusuku__intro__list-card__figure img{
	aspect-ratio:300 / 180;
	width:100%;
	height:auto;
}
.sukusuku__intro__list-card .sukusuku__intro__list-card-button{
	width:100%;
	margin-top: auto;
	font-size: 1.4rem;
	padding:5px 45px 5px 20px;
}
@media (any-hover:hover) {
	.sukusuku__intro__list-card:hover .sukusuku__intro__list-card-button{ color:#fff; }
	.sukusuku__intro__list-card:hover .sukusuku__intro__list-card-arrow,
	.sukusuku__intro__list-card:hover .sukusuku__intro__list-card-button{
		background:var(--color-accent);
	}
	.sukusuku__intro__list-card:hover .sukusuku__intro__list-card-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.sukusuku__intro__list-card:hover .sukusuku__intro__list-card-arrow::after {
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.sukusuku__intro{ width:var(--content-width-med); }
	.sukusuku__intro__list-item{ width:calc((100% - 20px) / 2); }
}
@media (max-width:767px) {
	.sukusuku__intro{ width:var(--content-width-sm); }
	.sukusuku__intro__list-item{ width:100%; }
}

/*============// WELCOME BOX（ウェルカムボックス） //============*/
/* 共通 */
.welcomebox-note{
	margin-top: 40px;
}
.welcomebox-note-text{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.welcomebox-note-text + .welcomebox-note-text{ margin-top: 4px; }
/* WELCOME BOXとは */
.welcomebox__intro{
	width:var(--base-w);
	margin:0 auto;
}
.welcomebox__intro-image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 16px;
	overflow: hidden;
}
.welcomebox__intro-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
/* 応募条件 */
.welcomebox__eligibility{
	width:var(--base-w);
	margin:120px auto 0;
}
.welcomebox__eligibility-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
.welcomebox__eligibility-list{
	margin-top: 40px;
	padding: 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.welcomebox__eligibility-list-item{
	padding: 20px;
	background: #fff;
	border-radius: 16px;
}
.welcomebox__eligibility-list-item +.welcomebox__eligibility-list-item { margin-top: 20px; }
/* お申込みからお届けまでのながれ */
.welcomebox__process{
	width:var(--base-w);
	margin:120px auto 0;
}
.welcomebox__process-text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
.welcomebox__process-list{
	margin-top: 40px;
	padding: 0 0 0 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}
.welcomebox__process-list-item{
    width: 100%;
    padding: 15px 20px 15px 80px;
    border-radius: 8px;
    background: var(--color-bg-base);
    position: relative;
}
.welcomebox__process-list-item:not(:first-child)::before {
    content: "\f0d7";
    color: var(--color-accent);
    font: var(--fa-font-solid);
    position: absolute;
    top: -25px;
    left: 18px;
}
.welcomebox__process__label{
    width: 64px;
    height: 64px;
    border-radius: 100vmax;
    color: #fff;
    display: flex;
    justify-content: center;
    flex-direction: column;
    line-height: 1.4;
    text-align: center;
    font-size: 1.4rem;
    font-family: var(--font-eng);
    background: var(--color-accent);
    position: absolute;
    top: 50%;
    left: -10px;
    transform: translateY(-50%);
}
.welcomebox__process__num {
    display: block;
    font-size: 2rem;
}
.welcomebox__process__desc { font-weight: var(--font-medium); }
/* 応募に関する注意事項 */
.welcomebox__notes{
	width:var(--base-w);
	margin:120px auto 0;
}
.welcomebox__notes-list{
	margin-top: 40px;
	padding: 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.welcomebox__notes-list-item{
    padding-left: 1em;
    font-weight: var(--font-medium);
    position: relative;
}
.welcomebox__notes-list-item:before{
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: var(--color-accent);
	border-radius: 50%;
}
.welcomebox__notes-list-item + .welcomebox__notes-list-item{ margin-top: 10px; }
/* お問合せ */
.welcomebox__contact{
	width: var(--base-w);
	margin:120px auto 0;
    display: flex;
    justify-content: space-between;
}
.welcomebox__contact .section-title{ width: 320px; }
.welcomebox__contact-card{
	width: calc(100% - 320px);
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.welcomebox__contact-card h3{
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	font-weight: var(--font-semibold);
}
.welcomebox__contact-card-content{
	margin-top: 20px;
	padding: 20px;
	background-color: #fff;
	border-radius: 16px;
}
.welcomebox__contact-card-content .phone-number{
	width: fit-content;
	display: block;
	color: var(--color-accent);
	line-height: 1;
	font-family: var(--font-eng);
	font-size: 4.8rem;
	font-weight: var(--font-bold);
}
.welcomebox__contact-tel__list{
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1;
}
.welcomebox__contact-tel__list:nth-child(n+3){ margin-top: 8px; }
.welcomebox__contact-tel__label{
    width: fit-content;
    min-width: 80px;
    height: 24px;
    padding: 0 15px;
    border-radius: 100vmax;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    background: var(--color-bg-base);
}
.welcomebox__contact-tel__text{ font-weight: var(--font-medium); }
/* 公式ライン */
.welcomebox__line{
	width: var(--base-w);
	margin: 80px auto 0;
	padding: 80px 0;
	border-top: 1px solid var(--color-border);
}
.welcomebox__line-inner{
	padding: 40px;
	display: flex;
	border-radius: 16px;
	background: #06C755;
	overflow: hidden;
	gap: 40px;
}
.welcomebox__line-top{ width: calc(100% - 480px); }
.welcomebox__line-top .section-title { color: #fff; }
.welcomebox__line-top .section-title__en { color: #fff; }
.welcomebox__line-top p{
	margin-top: 30px;
	color: #fff;
	font-weight: var(--font-medium);
}
.welcomebox__line-bottom{ width: 480px; }
.welcomebox__line__link{
	width: 100%;
	min-height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	box-shadow: var(--next-card-shadow);
	border: 1px solid var(--color-border);
	border-radius: 16px;
	padding: 40px;
	font-size: 2.4rem;
	background: #fff;
	transition: color ease-in .4s, background-color ease-in .4s;
	position: relative;
}
.welcomebox__line__image{
    width: 100%;
    max-width: 240px;
    height: auto;
    overflow: hidden;
}
.welcomebox__line__icon {
	background: #06C755;
    top: auto;
    bottom: 16px;
    right: 16px;
    transform: none;
}
@media (any-hover:hover) {
	.welcomebox__line__link:hover .welcomebox__line__icon::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.welcomebox__line__link:hover .welcomebox__line__icon::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.welcomebox__intro ,
	.welcomebox__eligibility ,
	.welcomebox__process ,
	.welcomebox__notes ,
	.welcomebox__contact ,
	.welcomebox__line { width:var(--content-width-med); }
	.welcomebox__contact{
		width:var(--content-width-med);
		display: block;
	}
	.welcomebox__contact .section-title{ width: 100%; }
	.welcomebox__contact-card{
		width: 100%;
		margin-top: 40px;
	}
}
@media (max-width:1024px) {
	.welcomebox__eligibility ,
	.welcomebox__process ,
	.welcomebox__notes ,
	.welcomebox__contact ,
	.welcomebox__line {margin: 80px auto 0; }
	.welcomebox__eligibility-list{ padding: 20px; }
	.welcomebox__eligibility-list-item +.welcomebox__eligibility-list-item { margin-top: 10px; }
	.welcomebox__process__label { font-size: 1.2rem; }
	.welcomebox__process__num { font-size: 1.8rem; }
	.welcomebox__process__desc { font-size: 1.4rem; }
	.welcomebox__notes-list{ padding: 20px; }
	.welcomebox__contact-card{ padding: 20px; }
	.welcomebox__contact-card h3{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.welcomebox__line{
		margin: 40px auto 0;
		padding: 40px 0;
	}
	.welcomebox__line-inner{
		padding: 20px;
		display: block;
	}
	.welcomebox__line-top{ width: 100% }
	.welcomebox__line-top p{ margin-top: 20px; }
	.welcomebox__line-bottom{ width: 100% }
	.welcomebox__line__link{
		margin-top: 20px;
		padding: 20px 40px;
	}
}
@media (max-width:767px) {
	.welcomebox__intro ,
	.welcomebox__eligibility ,
	.welcomebox__process ,
	.welcomebox__notes ,
	.welcomebox__contact ,
	.welcomebox__line { width:var(--content-width-sm); }
	.welcomebox__contact-card-content .phone-number{ font-size: 3.2rem; }
}
/*============// お店でのサービス //============*/
/* すくすく応援デー */
.storeservice__intro{
	width:var(--base-w);
	margin:0 auto;
}
.storeservice__intro-image{
	width: 100%;
	height: auto;
	overflow: hidden;
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.storeservice__intro-note{ margin-top: 40px; }
.storeservice__intro-note-title{ font-size: 1.4rem; }
.storeservice__intro-note-text{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
/* CO・OPのきらきらステップ・キッズ */
.storeservice__coop{
	width:var(--base-w);
	margin:120px auto 0;
	padding: 40px 70px;
    border: solid 10px var(--color-accent);
    border-radius: 24px;
    background: #fff;
}
.storeservice__coop-title{
	margin-bottom: 40px;
	padding: 20px 40px;
	background: var(--color-accent);
	color: #fff;
	text-align: center;
    border-radius: 16px;
}
.storeservice__coop-title h2{
	font-size: 2.4rem;
	line-height: 3.6rem;
	font-weight: var(--font-bold);
}
.storeservice__coop-text{ font-weight: var(--font-medium); }
.storeservice__coop-list{
	margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.storeservice__coop-item {
    padding: 7.5px 15px;
    border-radius: 8px;
    font-size: 1.4rem;
    background: var(--color-bg-base);
}
.storeservice__coop-image {
	display: block;
	max-width: 800px;
	width: 100%;
	height: auto;
	margin: 20px auto 0;
	overflow: hidden;
}
/* 快適にお買い物いただくために */
.storeservice__facilities{
	width:var(--base-w);
	margin:120px auto 0;
}
.storeservice__facilities__detail{
	margin-top: 40px;
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.storeservice__facilities__detail-title{
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.storeservice__facilities__detail-title::before {
    content: "";
    width: 4px;
    height: calc(100% - 8px) ;
    display: block;
    border-radius: 16px;
	background: var(--color-accent);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.storeservice__facilities__detail-store_list{
	margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.storeservice__facilities__detail-store_item{
    padding: 7.5px 15px;
    border-radius: 8px;
    font-size: 1.4rem;
    background: var(--color-bg-base2);
}
.storeservice__facilities__detail-contents{
	margin-top: 20px;
	display: flex;
    gap: 40px;
}
.storeservice__facilities__detail-contents-top{
    width: 500px;
    height: 320px;
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 500 / 320;
}
.storeservice__facilities__detail-contents-top img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 500 / 320;
}
.storeservice__facilities__detail-contents-bottom{ width: calc(100% - 500px); }
.storeservice__facilities__detail-text{ font-weight: var(--font-medium); }
.storeservice__facilities__detail-note{
	margin-top: 10px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
@media (max-width:1240px) {
	.storeservice__intro ,
	.storeservice__coop ,
	.storeservice__facilities { width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.welcomebox__notes ,
	.storeservice__coop ,
	.storeservice__facilities{margin: 80px auto 0; }
	.storeservice__coop{
		padding: 30px 15px 20px;
		border: solid 5px var(--color-accent);
	}
	.storeservice__coop-title{
		margin-bottom: 20px;
		padding: 20px;
	}
	.storeservice__coop-title h2{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.storeservice__facilities__detail{ padding: 20px; }
	.storeservice__facilities__detail + .storeservice__facilities__detail{ margin-top: 20px; }
		.storeservice__facilities__detail-title{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.storeservice__facilities__detail-contents{ display: block; }
	.storeservice__facilities__detail-contents-top{
		width: 100%;
        height: auto;
	}
	.storeservice__facilities__detail-contents-bottom{
		width: 100%;
		margin-top: 20px;
	}
}
@media (max-width:767px) {
	.storeservice__intro ,
	.storeservice__coop ,
	.storeservice__facilities { width:var(--content-width-sm); }
	.storeservice__intro-note{ margin-top: 20px; }
}