@charset "UTF-8";

/* =================================================
	大見出し
================================================= */

/*============//中見出し//============*/

/*小見出し*/



/* =================================================
	ベース
================================================= */
:root {
	--next-bg-base:#faf1e7;
	--next-color-text:#222;
	--next-spacing-text:0.02em;
	--content-width-lg:calc(100% - 220px);
	--content-width-med:calc(100% - 120px);
	--content-width-sm:calc(100% - 30px);
	--next-shadow-top:0 -10px 10px rgba(102,90,102,0.08);
	--next-shadow-bottom:0 10px 10px rgba(102, 90, 102, 0.08);
	--next-card-shadow:5px 5px 30px 2px rgba(102,90,82,0.2);
	--next-item-shadow:4px 4px 40px 2px rgba(102, 90, 82, 0.2);
	--color-everyday:#5bb6ad;
	--color-rich:   #feb34d;
	--color-emergency:#f2635f;
	--color-everyday-light:#a3e5de;
	--color-rich-light:  #fcd8a4;
	--color-emergency-light:#ffb5b2;
	--font-sub:"IBM Plex Sans JP";
}



/* =================================================
	共通パーツ
================================================= */

/*============//改行スタイル//============*/

/*改行スマホのみ*/
@media (min-width:768px) {
	.break--sp-only{ display:none; }
}
/*改行PCのみ*/
@media (max-width:767px) {
	.break--pc-only{ display:none; }
}

/*============//コンテンツベース//============*/
@media (min-width:1025px) {
	.next-main{ padding-top:165px; }
}
@media (max-width:1024px) {
	.next-main{ padding-top:72px; }
}
.page-content{
	padding-top:40px;
	background:var(--color-bg-base2);
	position:relative;
	z-index:0;
}
@media (max-width:1024px) {
	.page-content{ padding-top:20px; }
}


/*============//見出し//============*/

/* 各セクションの見出し*/
.section-title{
	margin-bottom:1rem;
	font-size:3.2rem;
	line-height:4.8rem;
	letter-spacing:var(--next-spacing-text);
}
@media (max-width:1024px) {
	.section-title{ font-size:2.4rem; line-height:3.6rem; }
}
/* 各セクションの見出しの英語*/
.section-title__en{
	display:block;
	color:var(--color-accent);
	font-family:var(--font-eng);
	font-size:1.6rem;
	line-height:3rem;
}
/* 各セクションの見出しの小文字説明*/
.section-title__note{
	font-size:1.6rem;
}
/*下地が暗い背景の時*/
.section-title__en--on-dark,
.section-title--on-dark{ color:#fff; }

/*オレンジ色のタイトル*/
.section-title--accent{ color:var(--color-accent); }

/* 色付きのラウンドタイトル */
.section-title--colored{
	display:flex;
	padding:10px 30px;
	margin-bottom: 40px;
	border-radius:16px;
	align-items:center;
	font-size:2.8rem;
	gap:20px;
	position:relative;
}
.section-title--colored:before{
	content:"";
	width:8px;
	height:32px;
	display:block;
	border-radius:0 16px 16px 0;
	position:absolute;
	left:0;
	top:50%;
	transform:translateY(-50%);
}
/* サイズ調整用 */
.section-title--sub{ font-size:2.4rem; }

@media (max-width:1024px) {
	.section-title--colored{ display:block; font-size:2.2rem; }
}

/*下線付きタイトル*/
.underline-rounded {
	display:inline-block;
	color:var(--color-text);
	line-height:6.4rem;
	letter-spacing:0.025em;
	position:relative;
}
.underline-rounded::after {
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:4px;
	background:#faad7a;
	border-radius:999px;
}
@media (max-width:1024px) {
	.underline-rounded { line-height:5.4rem; }
}

/*============//ヘッドタイトル//============*/
.page-title{
	width:100%;
	min-height:360px;
	padding-top:70px;
	padding-bottom:40px;
	background:var(--color-bg-base);
	position:relative;
	z-index:0;
	overflow:hidden;
}
.page-title:before,
.page-title:after{
	content:"";
	width:126vw;
	height:70.6rem;
	display:block;
	border-radius:50%;
	pointer-events:none;
	left:50%;
	transform:translate(-50%);
	position:absolute;
}
.page-title:before{
	top:-44rem;
	background:var(--color-bg-base2);
	z-index:-1;
}
.page-title:after{
	top:-42rem;
	background:var(--next-bg-base);
	z-index:-2;
}
.page-title__heading{
	display:flex;
	padding:0 20px;
	flex-direction:column;
	align-items:center;
	text-align:center;
	color:var(--color-text);
	font-size:2.4rem;
	font-weight:var(--font-semibold);
	letter-spacing:var(--next-spacing-text);
}
.page-title__en{
	color:var(--color-accent);
	font-size:8rem;
	line-height:1;
	margin-bottom:10px;
	font-weight:var(--font-bold);
	font-family:var(--font-eng);
	word-break: break-word;
}
@media (max-width:1024px) {
	.page-title__en{ font-size:6.4rem; }
	.page-title__heading{ font-size:1.8rem; }
}
@media (max-width:767px) {
	.page-title__en{font-size:5.2rem;}
}

/*============//パンくずリスト//============*/
.breadcrumb{
	margin-top:80px;
	padding:0 50px 20px;
	display:flex;
	justify-content:flex-end;
	z-index:2;
	position:relative;
}
.breadcrumb__list{
	display:inline-block;
}
.breadcrumb__label{
	display:inline-block;
	padding:5px 15px;
	font-size:1.4rem;
	line-height:1.2;
	background:#fff;
	border-radius:30px;
	border:1px solid var(--color-border);
}
.breadcrumb__link{
	transition:color ease-in .4s;
}
.breadcrumb__link:hover{
	color:var(--color-accent);
}
.breadcrumb__item{
	display:
	inline-block;
	margin-bottom:5px;
	color:var(--next-color-text);
	position:relative;
	z-index:3;
}
.breadcrumb__list .breadcrumb__item:not(:last-of-type):after{
	content:"";
	width:8px;
	height:1px;
	margin:0 5px;
	display:inline-block;
	vertical-align:middle;
	background:var(--color-text-sub);
}
.breadcrumb__list .breadcrumb__item:last-of-type{
	color:var(--color-accent);
}

@media (max-width:1024px) {
	.breadcrumb{ padding:0 20px 20px; }
	.breadcrumb__label{ font-size:1.2rem; }
}
@media (max-width:767px) {
	.breadcrumb{ 
		margin-top:60px;
	}
}

/*============//ページ内リンクナビ//============*/
.page-nav{
	width:var(--base-w);
	margin:0 auto 80px;
}
.page-nav__list{
	display:flex;
	flex-wrap:wrap;
	gap: 25px 0;
}
.page-nav__item:not(:last-child){
	padding-right:20px;
	margin-right:20px;
	border-right:1px solid var(--color-border);
}
.page-nav__link{
	display:flex;
	font-size:1.4rem;
	align-items:center;
	gap:.6rem;
	transition:color ease-in .4s;
}
.page-nav__link:before{
	width:24px;
	height:24px;
	display:flex;
	content:"\f063";
	color:var(--color-accent);
	border:1px solid var(--color-border);
	border-radius:50%;
	align-items:center;
	justify-content:center;
	font:var(--fa-font-solid);
	font-size:1.2rem;
	flex-shrink:0;
	background:#fff;
}
@media (any-hover:hover) {
	.page-nav__link:hover{ color:var(--color-accent); }
}
@media (max-width:1240px) {
	.page-nav{
		width:var(--content-width-sm);
	}
}
@media (max-width:1024px) {
	.page-nav__item{ width:calc((100% - 82px) / 3); }
	.page-nav__item:last-child{
		border-right:1px solid var(--color-border);
		padding-right:20px;
		margin-right:20px;
	}
	.page-nav__item:nth-of-type(3n){
		border-right:0;
		padding-right:0;
		margin-right:0;
	}
}
@media (max-width:767px) {
	.page-nav {
		margin:0 auto 40px;
	}
	.page-nav__item{ width:calc((100% - 30px) / 2); font-size:1.4rem; }
	.page-nav__item:nth-of-type(3n){
		border-right:1px solid var(--color-border);
		padding-right:20px;
		margin-right:20px;
	}
	.page-nav__item:nth-of-type(2n){
		border-right:0;
		padding-right:0;
		margin-right:0;
	}
}
@media (max-width:500px) {
	.page-nav__item{ border-right:none!important; }
}

/*============//角丸スタイル//============*/

/*ベース*/
.u-rounded-top,
.u-rounded-bottom{ position:relative; }

/*上部*/
.u-rounded-top:before {
	content:"";
	width:100%;
	height:40px;
	display:block;
	border-radius:40px 40px 0 0;
	background:var(--color-bg-base2);
	position:absolute;
	box-shadow:var(--next-shadow-top);
	top:-40px;
	z-index:1;
}
/*下部*/
.u-rounded-bottom:before {
	content:"";
	width:100%;
	height:40px;
	display:block;
	border-radius:0 0 40px 40px;
	background:var(--color-bg-base2);
	position:absolute;
	box-shadow:var(--next-shadow-bottom);
	bottom:-40px;
	z-index:2;
}
/*============//tel無効//============*/
@media screen and (min-width:768px){
	a[href^="tel:"] {
		pointer-events:none;
	}
}


/* =================================================
	新着情報 一覧
================================================= */
.news__wrapper {
	width:var(--base-w);
	margin:0 auto;
	display:flex;
	justify-content:space-between;
}
.news__body{ width:calc(100% - 280px); }
.news-sidebar{ width:200px; }
.news__item{
	padding:3rem 0;
	border-bottom:1px solid var(--color-border);
}
.news__item:first-of-type{
	border-top:1px solid var(--color-border);
}
.news__item article{
	display:flex;
	gap:4rem;
}
.news__meta{
	display:flex;
	align-items:center;
	gap:2rem;
}
.news__label{
	min-width:12.5em;
	min-height: 3rem;
	line-height: 3rem;
	padding: 0 1rem;
	text-align:center;
	color:#fff;
	border-radius:20px;
	font-size:1.2rem;
	background:var(--color-accent);
	transition:color .4s ease-in, background-color .4s ease-in;
}
.news__label:hover{
	background:#fff;
	color:var(--color-accent);
}
.news__meta time{
	font-size:1.4rem;
	color:var(--color-text-sub);
	flex-shrink:1;
}
.news__link{
	width:100%;
	color:var(--color-overlay);
	transition:color .4s ease-in;
	position:relative;
	padding-right:50px;
}
.news__link:after{
	content:"\f061";
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--color-text-sub);
	font:var(--fa-font-solid);
	font-size:1.4rem;
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	right:15px;
}
.news__link:hover{
	color:var(--color-accent);
}

@media (max-width:1240px) {
	.news__wrapper{
		width:var(--content-width-med);
	}
	.news__item article{
		flex-direction:column;
		align-items:flex-start;
		gap:1.5rem;
	}
	.news__item {
		padding:2rem 0;
	}
}
@media (max-width:1024px) {
	.news__label{
		min-height: 2.5rem;
		line-height: 2.5rem;
	}
}
@media (max-width:767px) {
	.news__wrapper{
		width:var(--content-width-sm);
		flex-direction:column;
	}
	.news__body{
		width:100%;
	}
}


/*============//記事アーカイブナビ//============*/
.news-sidebar__section{
	padding:20px 0 40px;
	border-top:1px solid var(--color-border);
}
.news-sidebar__item,
.news-sidebar__link{
	color:var(--color-text-sub);
}
.news-sidebar__item{
	font-size:1.4rem;
	display:flex;
	align-items:center;
	gap:10px;
}
.news-sidebar__item:before{
	content:"";
	height:8px;
	width:8px;
	display:block;
	border-radius:50%;
	background:var(--color-bg-accent);
}
.news-sidebar__link{ transition:color .4s ease-in; }
.news-sidebar__link:hover{
	color:var(--color-accent);
}

@media (max-width:767px) {
	.news-sidebar{
		width:100%;
	}
	.news-sidebar{
		margin-top:60px;
	}
}


/* =================================================
	新着情報 記事詳細
================================================= */

.news-detail {
	.news__meta{ margin-bottom:30px; }
}

/*============//ページネーション//============*/
.pagination{ margin-top:40px; }
.pagination__list{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:8px;
}
.pagination__unit{
	width:40px;
	height:40px;
	display:block;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
}
.pagination__link:hover,
.pagination__current{
	color:#fff;
	background:var(--color-accent);
	border:1px solid var(--color-accent);
	transition:all .4s ease-in;
}
.pagination__link{ background:#fff; border:1px solid var(--color-border); transition:all .4s ease-in; }


/* =================================================
	新着情報 記事
================================================= */

/*============//記事用見出し//============*/
.section-title--article{
	margin-bottom:4rem;
	padding-bottom:10px;
	border-bottom:1px solid var(--color-border);
}
@media (max-width:767px) {
	.section-title--article{margin-bottom:2rem;padding-bottom:5px;}
}

/*============//記事のリセット用//============*/
/*デフォルトテキスト*/
.entry{ font-weight:var(--font-medium); }

/*リンク*/
.entry a{ transition:color ease-in .4s; }
.entry a:hover{ color:var(--color-accent); }



/* =================================================
	メグリアについて
================================================= */

/*============// メグリアとは //============*/
.about__intro{
	position:relative;
	padding-bottom:160px;
}
.about__intro-wrapper{
	width:880px;
	margin:auto;
	border-radius:24px;
	background:#fff;
	position:relative;
}
.about__intro-inner{
	margin:0 auto;
	padding:70px 80px;
	border:1px solid var(--color-border);
	border-radius:24px;
	background:rgba(255, 255, 255, 0.4);
	backdrop-filter:blur(8px);
	position:relative;
}
.about__intro .section-title{ margin-bottom:70px; padding:0 40px; line-height:6.4rem; }
.about__intro .section-title,
.about__intro .section-title__en{ text-align:center; }
.about__intro .section-title__en:after{
	content:"";
	width:1px;
	height:24px;
	display:block;
	margin:25px auto;
	background:var(--color-border);
}
.section-title__accent{
	color:var(--color-accent);
	font-size:4rem;
}
.about__intro-text{ margin-bottom:80px; padding:0 40px; }
.about__intro-text p{
	line-height:4rem;
	font-weight:var(--font-medium);
	letter-spacing:0.025em;
}
.about__intro-text p + p{ margin-top:1em; }

.about__move-item{ position:absolute; }
.about__move-item:nth-child(1) { top:11vw; left:-300px; }
.about__move-item:nth-child(2) { top:28vw; left:-200px; }
.about__move-item:nth-child(3) { top:43vw; left:-220px; }
.about__move-item:nth-child(4) { top:10vw; right:-80px; }
.about__move-item:nth-child(5) { top:22.5vw; right:-260px; }
.about__move-item:nth-child(6) { top:44vw; right:-280px; }
.about__move-item img{
	box-shadow:10px 10px 40px 4px rgba(102,90,82,0.15);
	border-radius:8px;
}
.about__figure{
	width:min(720px, 100%);
	margin-bottom:-190px;
}
.about__figure img{
	width:100%;
	height:auto;
}
@media (max-width:1500px) {
	.about__intro-wrapper{
		width:var(--content-width-sm);
		max-width:780px;
	}
	.about__move-item:nth-child(2) { top:81vw; }
	.about__move-item:nth-child(3) { top:52vw; }
	.about__move-item:nth-child(5) { top:56.5vw; right:-140px; }
	.about__move-item:nth-child(6) { top:81vw; }
}
@media (max-width:1240px) {
	.about__intro-inner{
		margin:0 auto;
		padding:35px 20px;
	}
	.about__intro .section-title{ padding:0; margin-bottom:25px; }
}
@media (max-width:1024px) {
	.about__intro .section-title{ line-height:5rem; }
	.about__intro .section-title__accent{ font-size:2.8rem; }
}
@media (max-width:900px) {
	.about__move-illust{ display:none; }
}
@media (max-width:767px) {
	.about__intro .section-title__en:after{ margin:15px auto; }
	.about__intro-text{ padding:0; }
}


/*============// メグリアバードに込めた想い //============*/
.about__bird{
	padding:170px 0 140px;
	position:relative;
	overflow:hidden;
}
.about__bird:before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background:rgba(41,47,51,.6);
	position:absolute;
	top:0;
	left:0;
	z-index:1;
}
.about__bird:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	filter:blur(8px);
	background:url(../../about/img/about-bird-bg.jpg) 100% no-repeat;
	z-index:0;
	position:absolute;
	inset:0;
}
.about__bird-inner{
	width:1000px;
	margin:0 auto;
	display:flex;
	gap:70px;
	justify-content:space-between;
	color:#fff;
	position:relative;
	z-index:1;
}
.about__bird-figure{
	width:clamp(260px, 42vw, 320px);
	height:clamp(260px, 42vw, 320px);
	padding:20px;
	background:rgba(255,255,255,.2);
	border-radius:24px;
	border:1px solid #fff;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-shrink:0;
}
.about__bird-figure img{
	width:66%;
	height:auto;
}
.about__bird .section-title__en--white{ margin-bottom:20px; }
.about__bird .section-title{ margin-bottom:60px; }
.about__bird-body{
	padding-left:70px;
	border-left:#fff 1px solid;
}
.about__bird-text{
	line-height:3.2rem;
	font-weight:var(--font-medium);
}
@media (max-width:1240px) {
	.about__bird{ padding:170px 20px 140px; }
	.about__bird-inner{ width:100%; max-width:800px; gap:50px; }
	.about__bird-body{ padding-left:50px; }
}
@media (max-width:1024px) {
	.about__bird{ padding:100px 20px; }
}
@media (max-width:767px) {
	.about__bird-inner{ flex-direction:column; }
	.about__bird .section-title{ margin-bottom:30px; }
	.about__bird-body{
		padding-left:0;
		padding-top:40px;
		border-left:none;
		border-top:#fff 1px solid;
	}
	.about__bird-figure{ margin:0 auto; }
}


/*============// 兄弟ページリンク //============*/
.about-nav{ padding-top:80px; position:relative; }
.about-nav__list{
	width:var(--base-w);
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}
.about-nav__item{ width:calc((100% - 40px) / 3); color:#222; position:relative; }

.about-nav__item .button-arrow{ font-size:1.8rem; right:20px; }
.about-nav__item .button-arrow,
.about-nav__item .button-arrow::before,
.about-nav__item .button-arrow::after{
	width:40px;
	height:40px;
}
.about-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;
}
.about-nav__en{
	display:block;
	color:var(--color-accent);
	font-size:1.4rem;
	transition:color ease-in .4s, background-color ease-in .4s;
}

@media (any-hover:hover) {
	.about-nav__link:hover{
		color:#fff;
		background:var(--color-accent);
	}
	.about-nav__link:hover .about-nav__en{ color:#fff; }
	.about-nav__link:hover .button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.about-nav__link:hover .button-arrow::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.about-nav__list{
		width:var(--content-width-med);
	}
	.about-nav__item{ width:calc((100% - 20px) / 2); }
}
@media (max-width:1024px) {
	.about-nav{ padding-top:60px; padding-bottom:60px; }
	.about-nav.u-rounded-top{ padding-top:20px; }
}
@media (max-width:767px) {
	.about-nav__list{
		width:var(--content-width-sm);
	}
	.about-nav__item{ width:100%; }
	.about-nav__link{
		min-height:100px;
		height:100%;
		padding:20px 60px 20px 20px;
		font-size:1.8rem;
	}
	.about-nav__item .button-arrow{ font-size:1.4rem; }
	.about-nav__item .button-arrow,
	.about-nav__item .button-arrow::before,
	.about-nav__item .button-arrow::after{
		width:30px;
		height:30px;
	}
}
/* =================================================
	企業情報 
================================================= */
/*============// 会社概要 //============*/

.company__profile{
	padding-bottom:80px;
	position:relative;
}
.company__profile-layout{
	width:var(--base-w);
	margin:0 auto;
	display:flex;
	justify-content:space-between;
}
.company__profile .section-title{width:320px;min-width:20%;}
.company__profile-inner{width:calc(100% - 320px);min-width:75%;}
.company__profile-row{ display:flex; }
.company__profile-term{
	width:240px;
	padding:25px 25px 25px 0;
	border-top:1px solid var(--color-accent);
}
.company__profile-desc{
	width:calc(100% - 240px);
	padding:25px 0;
	border-top:1px solid var(--color-border);
	font-weight:var(--font-medium);
}
.company__officer-item{
	padding-bottom:25px;
	border-bottom:1px solid var(--color-border);
}
.company__officer-item + .company__officer-item{ padding-top:25px; }

.company__officer-list .company__officer-item:last-of-type{
	border-bottom:0;
	padding-bottom:0;
}
.company__profile-list .company__profile-row:last-of-type .company__profile-term{
	border-bottom:1px solid var(--color-accent);
}
.company__profile-list .company__profile-row:last-of-type .company__profile-desc{
	border-bottom:1px solid var(--color-border);
}
/*事務所*/
.company__office-table tbody{
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}
.company__office-table tbody tr{
	width:calc((100% - 20px) / 2);
	padding:15px;
	display:inline-flex;
	text-align:left;
	justify-content:space-between;
	gap:20px;
	border:1px solid var(--color-accent);
	border-radius:8px;
	background:#fff;
}

/*事務所数*/
.company__office-count{ color:var(--color-accent); font-size:1.4rem; font-weight:var(--font-medium); white-space:nowrap; }

/*事務所名*/
.company__office-name{ font-size:1.4rem; }

/*事務所名注釈*/
.company__office-caption{ font-size:1.2rem; }

@media (max-width:1240px) {
	.company__profile-layout{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.company__profile{ padding-bottom:20px; }
	.company__profile-layout{ flex-direction:column; }
	.company__profile-inner { width:100%; min-width:100%; }
	.company__profile-term{ width:20%; min-width:7em; padding:15px 0; }
	.company__profile-desc{ width:80%; padding:15px 0; }
	.company__officer-item{ padding-bottom:15px; }
	.company__officer-item + .company__officer-item{ padding-top:15px; }
	.company__profile .section-title{ margin-bottom:20px; }
}
@media (max-width:767px) {
	.company__profile-layout{ width:var(--content-width-sm); }
	.company__profile-row{ flex-direction:column; }
	.company__profile-term{
		width:100%;
		min-width:100%;
		padding:8px 0 0;
		color: var(--color-accent);
		border-top:0;
		border-bottom:none;
	}
	.company__profile-row + .company__profile-row .company__profile-term{ padding: 24px 0 0; }
	.company__officer-item{ padding-bottom: 8px; }
	.company__profile-list .company__profile-row:last-of-type .company__profile-term {
    	border-bottom: none;
	}
	.company__profile-desc{
		width:100%;
		padding:8px 0;
		border-top:0;
		border-bottom:1px solid var(--color-border);
	}
	.company__office-table tbody{ flex-direction:column; }
	.company__office-table,
	.company__office-table tbody tr{
		width:100%;
		padding:8px;
	}
}

/*============// 沿革 //============*/
.company__history{
	padding:120px 0 160px;
	background:var(--color-bg-base);
}
.company__history-layout{
	width:var(--base-w);
	margin:0 auto;
	display:flex;
	justify-content:flex-start;
}
.company__history .section-title{
	max-width:320px;
	min-width:25%;
}
.company__history-inner{
	max-width:530px;
}
.company__history-year{
	color:var(--color-accent);
	font-family:var(--font-eng);
	font-size:4.8rem;
	line-height:4.8rem;
	margin-bottom:10px;
	margin-left:64px;
}
.company__history-desc li{
	width:100%;
	margin-left:64px;
	display:flex;
	align-items:flex-start;
	gap:15px;
	font-weight:var(--font-medium);
}
.company__history-desc-list > li + li{ margin-top:10px; }
.company__history-desc-list > li:before {
	content:"";
	width:8px;
	height:4px;
	display:inline-flex;
	border-radius:10px;
	background:var(--color-accent);
	flex-shrink:0;
	margin-top:1.2rem;
}
.company__history-row{
	padding-bottom:50px;
	position:relative;
}
.company__history-row:before{
	content:"";
	width:24px;
	height:24px;
	display:block;
	border-radius:50%;
	border:8px solid #ffb484;
	background:var(--color-accent);
	position:absolute;
	left:0;
	top:0;
	z-index:2;
}
.company__history-row:after{
	content:"";
	width:1px;
	height:100%;
	display:block;
	background:#ffb484;
	position:absolute;
	left:11px;
	top:0;
	z-index:1;
}
.company__history-row{padding-bottom:60px;}

@media (max-width:1240px) {
	.company__history-layout{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.company__history { padding: 80px 0 100px; }
	.company__history-layout{ flex-direction:column; }
	.company__history-inner {width:100%;max-width:100%;}
	.company__history-term{ width:20%; min-width:7em; }
	.company__history-desc{ width:80%; }
	.company__history .section-title{ margin-bottom:25px; }
}
@media (max-width:767px) {
	.company__history-layout{
		width:var(--content-width-sm);
	}
}

/*============// アコーディオン //============*/
.company__history-collapse{
	overflow-y:hidden;
	max-height:0;
	transition:max-height 0.4s ease;
}
.company__history-toggle{ min-width:220px; margin-left:auto; position:relative; }

.company__history-list{ position:relative; }
.company__history-list:after{
	content:"";
	width: calc(100vw - 30px);
	height:60px;
	display:block;
	background:var(--color-bg-base);
	position:absolute;
	bottom:0;
	left:0;
	z-index:6;
}
.company__history-toggle:hover{
	color:#fff;
	background:var(--color-accent);
	border-color:var(--color-accent);
}
.company__history-toggle .button-accordion{
	width:32px;
	height:32px;
	display:block;
	content:var(--fa);
	font:var(--fa-font-solid);
	display:flex;
	border-radius:50%;
	align-items:center;
	justify-content:center;
	position:absolute;
	right:6px;
	animation-fill-mode:forwards;
	animation-duration:0.1s;
	background:var(--color-accent);
	position:absolute;
	top:50%;
	transform:translateY(-50%);
}

.button-accordion::before,
.button-accordion::after {
	color:#fff;
}

/* 初期状態：マイナスを非表示 */
.company__history-toggle .fa-minus { display:none; }

/* 展開時：プラスを隠してマイナスを表示 */
.company__history-toggle[aria-expanded="true"] .fa-plus  { display:none; }
.company__history-toggle[aria-expanded="true"] .fa-minus {display:flex;}



/* =================================================
	事業内容
================================================= */

/*============// 生協ならではの安心を //============*/

/* 色付きタイトル */
.section-title--everyday  { background:var(--color-everyday); }
.section-title--rich      { background:var(--color-rich); }
.section-title--emergency { background:var(--color-emergency); }

.section-title--everyday:before{ background:var(--color-everyday-light); }
.section-title--rich:before{ background:var(--color-rich-light); }
.section-title--emergency:before{ background:var(--color-emergency-light); }
.service__intro{
	width:var(--base-w);
	margin:0 auto;
}

.service__intro-layout{
	margin-bottom:120px;
	display:flex;
	align-items:center;
	gap:100px;
}
.service__intro-body{
	width:570px;
	min-width:320px;
}
.service__intro-text{ margin-top:30px;font-weight:var(--font-medium); }

.service__intro-figure img{
	height:auto;
	aspect-ratio:482 / 352;
}
@media (max-width:1024px) {
	.service__intro-layout{ gap:8vw; margin-bottom:60px; }

}
@media (max-width:900px) {
	.service__intro-layout{ flex-direction:column; align-items:flex-start; }
	.service__intro-body,
	.service__intro .section-title--underline{ width:100%; }
}

/*============// サービス紹介部分 //============*/
.service-group{
	width:var(--base-w);
	margin:0 auto;
}
.service-group:not(:last-of-type){ margin-bottom:120px; }
.service-group:last-of-type{ margin-bottom:80px; }

.service-group__list{
	display:flex;
	flex-wrap:wrap;
	gap:40px;
}
.service-group__item{
	width:calc((100% - 80px) / 3);
	border-radius:16px;
	border:1px solid var(--color-border);
	box-shadow:var(--next-card-shadow);
	overflow:hidden;
}
.service-card{
	display:flex;
	flex-direction:column;
	gap:30px;
	width:100%;
	height:100%;
	padding:40px 30px 30px 30px;
	background:#fff;
	transition:background-color .4s;
}
.service-card__header{position:relative;}
.service-card__title{
	margin-right:60px;
	font-size:2.4rem;
	position:relative;
}
.service-card__desc{font-weight:var(--font-medium);}
.service-card__figure{margin-top:auto;border-radius:8px;overflow:hidden;}
.service-card__figure img{
	aspect-ratio:300 / 180;
	width:100%;
	height:100%;
}
/*カードのボーダー*/
.service-group#everyday .service-group__item{ border:1px solid var(--color-everyday); }
.service-group#rich .service-group__item{ border:1px solid var(--color-rich); }
.service-group#emergency .service-group__item{ border:1px solid var(--color-emergency); }

/*ボタン*/
.service-group#everyday .service-card__arrow{
	background:var(--color-everyday);
}
.service-group#rich .service-card__arrow{
	background:var(--color-rich);
}
.service-group#emergency .service-card__arrow{
	background:var(--color-emergency);
}
.service-card__arrow,
.service-card__arrow::before,
.service-card__arrow::after{ width:40px; height:40px; font-size:1.75rem; }

@media (any-hover:hover) {
	.service-card:hover{ color:#fff; }
	.service-group#everyday .service-card:hover{
		background:var(--color-everyday);
	}
	.service-group#rich .service-card:hover{
		background:var(--color-rich);
	}
	.service-group#emergency .service-card:hover{
		background:var(--color-emergency);
	}
	.service-card:hover .service-card__arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.service-card:hover .service-card__arrow::after {
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}


@media (max-width:1240px) {
	.service-group,
	.service__intro{
		width:var(--content-width-med);
	}
	.service-card{ padding:30px 20px 20px 20px; gap:15px; }
	.service-group__item{ width:calc((100% - 40px) / 2); }
}
@media (max-width:1024px) {
	.service-group:not(:last-of-type){ margin-bottom:60px; }
	.service-group:last-of-type{ margin-bottom:40px; }
}
@media (max-width:767px) {
	.service-group,
	.service__intro{
		width:var(--content-width-sm);
	}
	.service-group__item{ width:100%; }
	.service-group__list{ flex-direction:column; }
	.service-card__title{ font-size:2rem; }
}



/* =================================================
	職域活動
================================================= */
/*============// 共通 //============*/
.occupation__area,
.occupation__activities,
.occupation__intro{
	width:var(--base-w);
	margin:0 auto;
}
.occupation__activities,
.occupation__intro{ margin-bottom:120px; }
.occupation__area,
.occupation__activities{
	padding-top:40px;
	border-top:1px solid var(--color-border);
	display:flex;
}
/*タイトル下マージン*/
.occupation__area-text,
.occupation__activities-text{
	margin-top:40px;
	font-weight:var(--font-medium);
}
@media (max-width:1240px) {
	.occupation__area,
	.occupation__activities,
	.occupation__intro{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.occupation__area,
	.occupation__activities,
	.occupation__intro{
		width:var(--base-w);
		margin:0 auto 60px;
	}
}
@media (max-width:767px) {
	.occupation__area,
	.occupation__activities,
	.occupation__intro{
		width:var(--content-width-sm);
	}
	.occupation__activities-text{ margin-top:20px; }
}
/*============// トヨタ自動車（株）およびトヨタグループ関連企業での職域活動 //============*/

/*一部英字との横並びタイトル*/
.section-title__heading-row{
	display:flex;
	align-items:center;
	gap:10px;
}
.section-title__heading-row .section-title__en{
	font-size:1.2rem;
	line-height:1.6rem;
	letter-spacing:0.04rem;
}
.occupation__intro-body{
	margin-bottom:40px;
	display:flex;
	justify-content:space-between;
}
.occupation__intro-text{
	line-height:3.2rem;
	font-weight:var(--font-medium);
}
.occupation__intro-figure{
	border-radius:16px;
	overflow:hidden;
}
.occupation__intro-figure img{
	width:100%;
	height:100%;
}
@media (min-width:1025px) {
	.section-title__heading-row{ white-space:nowrap; }
}
@media (max-width:900px) {
	.section-title__heading-row{ flex-direction:column;
		flex-direction:column;
		align-items:flex-start;
	}
}

/*============// ダイニングサービス・企業内店舗共通 //============*/
.occupation__activities-layout{
	display:flex;
	gap:100px;
}
.occupation__activities-body {
	width:calc(100% - 600px);
}
.occupation__activities-figure {
	width:500px;
	height:320px;
	border-radius:16px;
	overflow:hidden;
	aspect-ratio:500 / 320;
}
.occupation__activities-figure img {
	width:100%;
	height:100%;
	object-fit:cover;
	aspect-ratio:500 / 320;
}

@media (max-width:1240px) {
	.occupation__activities-layout{ gap:50px; }
	.occupation__activities-body{ width:60%; }
}
@media (min-width:1025px) {
	.occupation__intro-text{
		max-width:640px;
		margin-left:40px;
		padding-left:40px;
		border-left:1px solid var(
		--color-border);
	}
}
@media (max-width:1024px) {
	.occupation__intro-body{ flex-direction:column; }
	.occupation__intro-text{
		margin-top:40px;
		padding-top:40px;
		border-top:1px solid var(--color-border);
	}
	.occupation__activities-figure { width:100%; height:auto; }
}
@media (max-width:900px) {
	.occupation__activities-layout{ flex-direction:column; }
	.occupation__activities-body{ width:100%; }
}

/*============// 活動区域 //============*/
.occupation__area{ margin-bottom:60px; }
.occupation__area-layout{
	display:flex;
	justify-content:space-between;
	gap:70px;
}
.occupation__area-body{
	width:calc(100% - 870px);
}
.occupation__area-detail{
	width:800px;
}

.occupation__member .section-title--colored{
	margin-bottom:20px;
	background:var(--color-accent);
}

.occupation__member-title,
.occupation__region-title{
	margin-top:20px;
	color:#fff;
	font-weight:var(--font-semibold);
	background:var(--color-accent);
}
.occupation__member-title,
.occupation__region-title,
.occupation__member-item,
.occupation__region-item{
	padding:10px 20px;
	border-radius:8px;
}
.occupation__member-list,
.occupation__region-list{
	margin-top:10px;
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}

.occupation__region-item,
.occupation__member-item{
	font-weight:var(--font-medium);
	background:var(--color-bg-base);
	width:calc((100% - 10px) / 2);
	font-size:1.4rem;
}

@media (max-width:1240px) {
	.occupation__area-body{
		width:30%;
	}
	.occupation__area-detail{
		width:60%;
	}
}

@media (max-width:900px) {
	.occupation__area,
	.occupation__area-layout{ flex-direction:column; }
	.occupation__area-body,
	.occupation__area-detail{
		width:100%;
	}
	.occupation__area-layout{ gap:40px; }
}


/* =================================================
	生活協同組合について
================================================= */
.about_coop__intro-wrapper,
.about_coop__system-wrapper{
	width:var(--base-w);
	margin:0 auto;
}
@media (max-width:1240px) {
	.about_coop__intro-wrapper,
	.about_coop__system-wrapper{
		width:var(--content-width-med);
	}
}
@media (max-width:767px) {
	.about_coop__intro-wrapper,
	.about_coop__system-wrapper{
		width:var(--content-width-sm);
	}
}
.about_coop__intro{ padding-bottom:80px; }
.about_coop__system{
	padding:160px 0;
	background:var(--color-bg-base);
}
.about_coop__intro-layout{
	margin-bottom:20px;
	display:flex;
	gap:40px;
	align-items:center;
}
.about_coop__intro-figure{
	max-width:581px;
	height:auto;
	aspect-ratio:581 / 546;
}
.about_coop__intro-figure img{
	aspect-ratio:581 / 546;
	width:100%;
	height:auto;
	margin-left:-40px;
}
.about_coop__intro-body{
	width:calc(100% - 604px);
}
.about_coop__intro-heading{
	font-size:4rem;
	line-height:7.2rem;
	padding-bottom:30px;
	margin-bottom:30px;
	border-bottom:1px solid var(--color-border);
}
.about_coop__intro-accent{ color:var(--color-accent); }

.about_coop__pillar-desc,
.about_coop__intro-text,
.about_coop__system-text{ font-weight:var(--font-medium);}

.about_coop__intro-text,
.about_coop__system-text{ color:#3e3e3e; }

.about_coop__pillar-desc strong{ font-weight:var(--font-bold); }

.about_coop__pillar-list{ display:flex; gap:40px; }
.about_coop__pillar-item{
	width:calc((100% - 80px) / 3);
	padding:40px;
	background:#fff;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
}
.about_coop__pillar-label{
	width:100%;
	border-radius:50px;
	color:#fff;
	text-align:center;
	font-weight:var(--font-bold);
	font-family:var(--font-eng);
	position:relative;
}
/*吹き出しの▼*/
.about_coop__pillar-label:before{
	content:"";
	border-left:4px solid transparent;
	border-right:4px solid transparent;
	position:absolute;
	bottom:-8px;
	left:50%;
}
.about_coop__pillar-number{ margin-top:40px; text-align:center; font-family:var(--font-eng); }
.about_coop__pillar-term{ margin-bottom:20px; font-size:3.2rem; text-align:center; }

/*みんなで出資*/
.about_coop__pillar-item--investment .about_coop__pillar-label:before{
	border-top:8px solid #59b8ac;
}
.about_coop__pillar-item--investment .about_coop__pillar-label{ background:#59b8ac; }
.about_coop__pillar-item--investment .about_coop__pillar-term,
.about_coop__pillar-item--investment .about_coop__pillar-number{ color:#59b8ac; }

/*みんなで運営*/
.about_coop__pillar-item--operation .about_coop__pillar-label:before{
	border-top:8px solid #ffb24c;
}
.about_coop__pillar-item--operation .about_coop__pillar-label{ background:#ffb24c; }
.about_coop__pillar-item--operation .about_coop__pillar-term,
.about_coop__pillar-item--operation .about_coop__pillar-number{ color:#ffb24c; }

/*みんなで利用*/
.about_coop__pillar-item--use .about_coop__pillar-label:before{
	border-top:8px solid #f2635f;
}
.about_coop__pillar-item--use .about_coop__pillar-label{ background:#f2635f; }
.about_coop__pillar-item--use .about_coop__pillar-term,
.about_coop__pillar-item--use .about_coop__pillar-number{ color:#f2635f; }

.about_coop__system-layout{
	display:flex;
	margin-bottom:40px;
	gap:40px;
}
.about_coop__system-layout > *{ width:50%; }
.about_coop__compare-head--coop{
	border-radius:16px 0 0 0;
	background:var(--color-accent);
}
.about_coop__compare-head--company{
	border-radius:0 16px 0 0;
	background:#3e3e3e;
}
.about_coop__compare-head{
	width:460px;
	padding:20px;
	text-align:left;
	font-size:2.4rem;
	color:#fff;
}
.about_coop__compare-cell--coop{
	font-size:1.4rem;
	padding:18px 20px;
	background:var(--color-bg-base2);
	border-bottom:1px solid var(--color-border);
	font-weight:var(--font-medium);
}
.about_coop__compare-cell--company{
	font-size:1.4rem;
	padding:18px 20px;
	background:#f8f8f9;
	border-bottom:1px solid var(--color-border);
	font-weight:var(--font-medium);
}

.about_coop__compare-label{
	width:240px;
	padding:18px 20px 18px 0;
	text-align:left;
	border-bottom:1px solid var(--color-border);
}

@media (max-width:1240px) {
	.about_coop__intro-figure{
		width:calc((100% - 40px) - 42%);
		height:auto;
	}
	.about_coop__intro-figure img{
		aspect-ratio:564 / 529;
		width:100%;
		height:auto;
	}
	.about_coop__intro-body{
		width:42%;
		min-width:370px;
	}
}
@media (max-width:1024px) {
	.about_coop__intro-layout{
		gap:20px;
		justify-content:space-between;
		margin-bottom: 40px;
	}
	.about_coop__intro-heading {
		font-size: 2.8rem;
		line-height: 5.2rem;
		padding-bottom:20px;
		margin-bottom:20px;
	}
	.about_coop__pillar-list{ flex-direction:column; }
	.about_coop__pillar-item{ width:100%; }
}
@media (max-width:900px) {
	.about_coop__system-layout,
	.about_coop__intro-layout{flex-direction:column;}
	.about_coop__system-layout > *,
	.about_coop__intro-body,
	.about_coop__intro-figure{width:100%;}
}
@media (max-width:767px) {
	.about_coop__intro-body{ min-width:auto; }
	.about_coop__compare-head { font-size:1.6rem; }
	.about_coop__compare-head,
	.about_coop__compare-cell--company,
	.about_coop__compare-cell--coop {
		padding:10px
	}
	.about_coop__compare-cell--coop,
	.about_coop__compare-cell--company,
	.about_coop__compare-label{
		font-size:1.4rem;
	}
	.about_coop__pillar-number{ margin-top:20px; }
	.about_coop__pillar-item { padding:20px; }
	.about_coop__pillar-term{ font-size:2.4rem; }
	.about_coop__intro {
		padding-bottom:40px;
	}
	.about_coop__system{ padding:100px 0; }
	.about_coop__system-layout{ gap:20px; }
	.about_coop__intro-figure img{ margin-left:0; }
}


/* =================================================
	組合加入について
================================================= */
/*新バッジ*/
.join__content .is-new{
	position:relative;
}
.join__content .is-new:after{
	content:"";
	width:80px;
	height:80px;
	display:block;
	background:url(../../about/join/img/new-badge.png) 100% 100% / 100% no-repeat;
	position:absolute;
	z-index:1;
}

.join__point-figure-store.is-new:after{
	top:440px;
	left:-23px;
}
.join__point-figure-support.is-new:after{
	top:280px;
	left:-23px;
}
.join__point-figure-possible.is-new:after{
	top:-10px;
	left:-23px;
}
.join__point-figure + .join__point-figure{ margin-top:60px; }

@media (max-width:1240px) {
	.join__content .is-new:after{
		width:7vw;
		height:7vw;
	}
	.join__point-figure-store.is-new:after{
		bottom:9vw;
		left:-2vw;
		top:auto;
	}
	.join__point-figure-support.is-new:after{
		bottom:9vw;
		left:-2vw;
		top:auto;
	}
	.join__point-figure-possible.is-new:after{
		top:-10px;
		left:-2vw;
	}
	.join__point-figure + .join__point-figure{ margin-top:30px; }
}


/*============// 組合加入のご案内 //============*/

/*スライダー*/
.join-slider{ width:var(--base-w); margin:0 auto; }
.join-slider .slider__figure{
	border-radius:16px;
	overflow:hidden;
}
.join-slider .slider__controls{margin-top:20px;display:flex;justify-content:flex-end;}
.join-slider .splide__pagination { justify-content:flex-start; position:static; }
.join-slider .splide__pagination__page{
	border-radius:50px;
	height:8px;
	width:24px;
}
.join-slider .slider__play-pause{
	width:40px;
	height:40px;
	border-radius:50%;
	background:var(--color-accent);
}
.join-slider .fa-pause,
.join-slider .fa-play{ color:#fff; }
.join-slider .splide__pagination__page{ background:#ddd5cb; opacity:1; }
.join-slider .splide__pagination__page.is-active{
	transform:none;
	background:var(--color-accent)
}
@media (max-width:1240px) {
	.join__content img{ height:auto; }
	.join__info-layout {
		padding:2vw 5vw 5vw 5vw;
	}
	.join-slider{
		width:var(--content-width-med);
	}
}
@media (max-width:767px) {
	.join-slider{
		width:var(--content-width-sm);
	}
}

/*注釈*/
.join__info-note{
	font-size:1.4rem;
	line-height:2.2rem;
	margin-top:20px;
	font-weight:var(--font-medium);
}

/*組合員証 メグリアカード*/
.join__info-card.join__mem-card{
	padding:40px 40px 0px 35px;
}
.join__info-card{
	padding:40px 70px 70px;
	border:solid 10px var(--color-accent);
	border-radius:24px;
	background:linear-gradient(to bottom, var(--color-bg-base2) 270px, var(--color-bg-base) 270px);
	position:relative;
	overflow:hidden;
}
.join__info-card + .join__info-card{ margin-top:40px; }
.join__info-card > * { position:relative; z-index:1; }
.join__info-card:before{
	content:"";
	width:1404px;
	height:153px;
	display:block;
	background:url(../img/round-bg.png) no-repeat top;
	position:absolute;
	top:140px;
	left:50%;
	transform:translateX(-50%);
	z-index:0;
}
.join__info-card .join__button{ margin:40px auto 0; }

@media (max-width:1240px) {
	.join__info-card {
		border:solid 5px var(--color-accent);
	}
	.join__info-card,
	.join__info-card.join__mem-card{
		padding:30px 15px 20px;
	}
}

.join__point-heading img{
	max-width:35vw;
}
.join__point-figure-possible{
	margin-top:40px;
}
.join__point-target{
	margin-top:40px;
	padding:20px;
	background:var(--color-bg-base);
	border-radius:16px;
}
.join__point-target-title{ margin-bottom:20px; text-align:center; font-size:2rem; }
.join__point-target-list{ display:flex; flex-wrap:wrap; gap:10px; }
.join__point-target-item{
	width:calc((100% - 20px) / 3);
	padding:10px 10px 10px 40px;
	background:#fff;
	position:relative;
	border-radius:8px;
}
.join__point-target-item:before{
	content:"";
	display:block;
	width:8px;
	height:8px;
	border-radius:50%;
	background:var(--color-accent);
	position:absolute;
	left:20px;
	top:50%;
	transform:translateY(-50%);
}
@media (max-width:1024px) {
	.join__point-target-item {
		width:calc((100% - 10px) / 2);
	}
	.join__point-figure-possible{ margin-top:20px; }
	.join__point-target-title{ font-size:1.6rem; }
}
@media (max-width:767px) {
	.join__point-target-item {
		width:100%;
	}
}
.join__mem-card-text{ font-weight:var(--font-medium); }
.join__mem-card-marker{
	display:inline-block;
	font-size:2rem;
	font-weight:var(--font-bold);
	background:linear-gradient(transparent calc(100% - 1.6rem), #ffe78d 1.6rem);
}
.join__mem-card-layout{
	display:flex;
	gap:10px;
	align-items:center;
	z-index:1;
	position:relative;
}
.join__mem-card-figure{ width:473px; }
.join__mem-card-text{ width:430px; padding-bottom:40px; }

.join__point-section{
	margin-top:40px;
	padding:60px 40px 40px;
	border-radius:16px;
	background:#fff;
	position:relative;
}
.join__point-heading {
	text-align:center;
}
.join__point-text{
	margin-top:10px;
	margin-bottom:40px;
	font-size:2rem;
	text-align:center;
	color:var(--color-accent);
}
.join__point-number{
	min-width:100px;
	display:inline-block;
	padding:5px;
	color:#fff;
	border-radius:8px;
	text-align:center;
	background:var(--color-accent);
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	top:-2rem;
}

@media (max-width:1240px) {
	.join__point-section {padding:35px 15px 20px;}
	.join__point-text{ margin-bottom:20px; }
	.join__mem-card-text{ padding-bottom:0; }
}
@media (max-width:767px) {
	.join__point-text {
		font-size:1.6rem;
		text-align:left;
		margin-bottom:10px;
	}
	.join__point-number{ font-size:1.4rem; }
	.join__info-note{
		font-size:1.2rem;
		margin-top:10px;
	}
}


.join__nearby-layout{
	display:flex;
	padding-bottom:30px;
	align-items:center;
	gap:40px;
}
.join__nearby-figure {
	width:251px;
	height:160px;
	box-shadow:var(--next-item-shadow);
	border-radius: 8px;
	overflow:hidden;
}
.join__nearby-text {
	width:calc((100% - 40px) - 251px);
	font-weight:var(--font-medium);
}
.join__nearby-charm{
	margin-bottom:20px;
	font-size:2rem;
	line-height:4rem;
	font-weight:900;
}
.join__nearby-accent{
	color:var(--color-accent);
	font-size:3.2rem;
	display:inline-block;
}
@media (max-width:900px) {
	.join__nearby-layout,
	.join__mem-card-layout{
		flex-direction:column;
		gap:15px;
	}
	.join__mem-card-figure,
	.join__mem-card-text,
	.join__nearby-figure,
	.join__nearby-text{ width:100%; height:auto; }
	.join__nearby-figure{ max-width:45vw; }
}
@media (max-width:767px) {
	.join__nearby-charm{
		margin-bottom:10px;
		font-size:1.8rem;
		line-height:3.8rem;
	}
	.join__nearby-accent{ font-size:2.8rem; }
}
/*アコーディオン*/
.join__faq-question{
	display:flex;
	align-items:center;
	gap:10px;
	color:#fff;
	border-radius:8px;
	border:4px solid var(--color-accent);
	font-family:var(--font-sub);
	background:var(--color-accent);
	cursor:pointer;
}
.join-service-card:focus-visible,
.join__faq-question:focus-visible {
	border:2px solid #000;
}
.join__faq-item + .join__faq-item{ padding-top:8px; }
.join__faq-answer {
	display:none;
	margin-top:-20px;
	color:#3e3e3e;
	padding:30px 20px 20px;
	border-radius:8px;
	border:4px solid var(--color-accent);
	font-weight:var(--font-medium);
	font-family:"Noto Sans JP", sans-serif;
	font-weight:var(--font-semibold);
	background:#fff;
	z-index:-1;
	position:relative;
}
.join__faq-icon{
	width:48px;
	height:48px;
	display:inline-flex;
	justify-content:center;
	border-radius:4px;
	align-items:center;
	color:var(--color-accent);
	font-size:2.4rem;
	font-weight:900;
	font-family:"Noto Sans JP", sans-serif;
	background:#fff;
}
@media (max-width:767px) {
	.join__faq-icon {
		width:36px;
		height:36px;
		font-size:2rem;
	}
	.join__faq-question{ align-items:flex-start; }
}
/*============// 組合加入のご案内 //============*/
.join__union{ width:var(--base-w); margin:0 auto; }
.join__union-title{ text-align:center; margin-bottom:30px; }
.join__union-list{ margin-bottom:120px; display:flex; gap:40px; }
.join__union-item{
	width:calc((100% - 40px) / 2);
	padding:40px;
	display:flex;
	flex-direction:column;
	border:8px solid #e65c00;
	border-radius:16px;
	background:var(--color-accent);
}
.join__union-item-title{
	margin-bottom:10px;
	color:#fff;
	font-size:3.2rem;
}
.join__union-item-text{margin-bottom:30px;color:#fff;font-weight:var(--font-medium);}
.join__union-list .join__button{
	width:100%;
	margin-top:auto;
}
.join__button + .join__info-note{ margin-top:40px; }


@media (any-hover:hover) {
	.join__button:hover .join__button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.join__button:hover .join__button-arrow::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}

@media (max-width:1240px) {
	.join__union{
		width:var(--content-width-med);
	}
	.join__union-list{margin-bottom:60px;gap:20px;}
	.join__union-item-title{
		 font-size:2.4rem;
		line-height:3.6rem;
	}
	.join__union-item {
		width:calc((100% - 20px) / 2);
		padding:20px;
	}
}
@media (max-width:767px) {
	.join__union{
		width:var(--content-width-sm);
	}
	.join__union-list{ flex-direction:column; }
	.join__union-item { width:100%; }
	.join__button + .join__info-note { margin-top: 20px; }
}


/*============// 組合員証のご案内 //============*/
.join__info{padding-bottom:40px;}
.join__info .section-title{ text-align:center; margin-bottom:3rem; }
.join__info-layout{
	padding:30px 80px 80px 80px;
	background:#fff;
	width:var(--base-w);
	margin:0 auto;
	box-shadow:var(--next-card-shadow);
	border-radius:24px;
}
.join-title--sub{
	margin-bottom:30px;
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:10px;
	color:var(--color-accent);
	font-size:2.4rem;
	line-height:3.6rem;
	font-weight:var(--font-bold);
}
.join-title--sub__en{
	color:#fff;
	padding:0 15px;
	border-radius:50px;
	font-family:var(--font-eng);
	font-size:1.4rem;
	text-align:center;
	line-height:2.2rem;
	background:var(--color-accent);
}
@media (max-width:1240px) {
	.join__info-layout{
		width:var(--content-width-med);
		padding:30px 15px 15px;
	}
}
@media (max-width:767px) {
	.join__info-layout{
		width:var(--content-width-sm);
	}
	.join-title--sub{
		font-size:2rem;
		line-height:3.2rem;
	}
}


/*============// サービス紹介部分 //============*/
.join__service{
	padding:120px 0 160px;
	background:var(--color-bg-base);
}
.join__service .section-title{
	margin-bottom:3rem;
}
.join__service .section-title:not(.section-title--colored){
	text-align:center;
}


.join-service-group{
	width:var(--base-w);
	margin:0 auto;
}
.join-service-group:not(:last-of-type){margin-bottom:40px;}
.join-service-group .section-title--colored:before{ display:none; }
.join-service-group__list{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	gap:20px;
}
.join-service-group__item{
	width:calc((100% - 60px) / 4);
	display:flex;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
	overflow:hidden;
}
.join-service-card{
	display:flex;
	flex-direction:column;
	gap:15px;
	width:100%;
	height:100%;
	padding:20px;
	background:#fff;
	transition:background-color .4s;
}
.join-service-card__title{
	font-size:2rem;
	position:relative;
	text-align:center;
}
.join-service-card__desc{
	min-height:70px;
	flex-grow:1;
	font-size:1.4rem;
	font-weight:var(--font-medium);
}
.join-service-card__figure{ border-radius:8px; overflow:hidden; }
.join-service-card__figure img{
	aspect-ratio:300 / 180;
	width:100%;
	height:auto;
}
/*ボタン*/
.join-service-group#everyday .join-service-card__arrow{
	background:var(--color-everyday);
}
.join-service-group#rich .join-service-card__arrow{
	background:var(--color-rich);
}
.join-service-group#emergency .join-service-card__arrow{
	background:var(--color-emergency);
}
.join-service-card .join__button{
	width:100%;
	font-size:1.4rem;
	padding:5px 45px 5px 20px;
}



@media (max-width:1240px) {
	.join__service {padding:100px 0;}
	.join-service-group{
		width:var(--content-width-med);
	}
	.join-service-group__item{ width:calc((100% - 20px) / 2); }
}
@media (max-width:767px) {
	.join-service-group{
		width:var(--content-width-sm);
	}
	.join-service-group__item{ width:100%; }
}

@media (any-hover:hover) {
	.join-service-card:hover .join__button{ color:#fff; }

	.join-service-group#everyday .join__button-arrow,
	.join-service-group#everyday .join-service-card:hover .join__button{
		background:var(--color-everyday);
	}
	.join-service-group#rich .join__button-arrow,
	.join-service-group#rich .join-service-card:hover .join__button{
		background:var(--color-rich);
	}
	.join-service-group#emergency .join__button-arrow,
	.join-service-group#emergency .join-service-card:hover .join__button{
		background:var(--color-emergency);
	}
	.join-service-card:hover .join-service-card__arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.join-service-card:hover .join-service-card__arrow::after {
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}

/*============// 組合員になるには //============*/
.join__howto-layout{
	width:var(--base-w);
	margin:0 auto;
	padding-top:80px;
}
.join__howto-layout .join__howto-item{
	padding:30px;
	border-radius:16px;
	background:var(--color-bg-base);
}
.join__howto-item{ margin-top:20px; }

.join__howto-item-title{
	display:flex;
	gap:15px;
	align-items:center;
	padding-bottom:10px;
	border-bottom:1px solid var(--color-border);
	margin-bottom:10px;
	font-size:2.4rem;
}
.join__howto-item-title:before{
	content:"";
	width:8px;
	height:8px;
	display:block;
	border-radius:50%;
	background:var(--color-accent);
}


@media (max-width:1240px) {
	.join__howto-layout{
		width:var(--content-width-med);
		padding-top:20px;
	}
}
@media (max-width:767px) {
	.join__howto-layout{
		width:var(--content-width-sm);
	}
	.join__howto-layout .join__howto-item{ padding:20px; }
	.join__howto-item-title{ font-size:2rem; }
}

/* =================================================
	会員割引施設
================================================= */
.discount__list{
	width:var(--base-w);
	margin:0 auto;
}
.discount-list__header {
    margin-bottom: 40px;
    padding-bottom: 5px;
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--color-border);
}
.discount-list__title {
    font-size: 2.4rem;
    font-weight: var(--font-semibold);
}
.discount-list__en {
    color: var(--color-text-sub);
    font-family: var(--font-eng);
    font-size: 1.6rem;
}
.discount-card{
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.discount-card__item{
	padding: 40px;
	border-radius: 16px;
	background: #fff;
	overflow: hidden;
	box-shadow: var(--shadow-base);
	position: relative;
}
.discount-card__title{
	display: flex;
    padding: 10px 20px;
	background: var(--color-accent);
	color: #fff;
    font-size: 2rem;
    align-items: center;
    border-radius: 8px;
}
.discount-card__title a{
	color: #fff;
	border-bottom: 1px solid #fff;
	transition:opacity .4s;
}
.discount-card__info-dl{
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.discount-card__info-dl-item{
	padding-bottom: 4px;
	display: flex;
	gap: 20px;
	border-bottom: 1px solid var(--color-border);
}
.discount-card__info-dt{
	min-width: 160px;
}
.discount-card__info-dd{
	width: calc(100% - 160px;);
	font-weight:var(--font-medium);
}
.discount-card__list{
	margin-top: 20px;
    padding: 20px;
	background: var(--color-bg-base);
    border-radius: 16px;
}
.discount-card__list-title{
    padding: 10px 20px;
	background: #fff;
    border-radius: 8px;
    font-size: 1.6rem;
}
.discount-card__list-dl{
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.discount-card__list-dl-item{
	padding-bottom: 4px;
	display: flex;
	gap: 20px;
	border-bottom: 1px solid var(--color-border);
}
.discount-card__list-dt{
	min-width: 160px;
}
.discount-card__list-dd{
	width: calc(100% - 160px;);
	font-weight:var(--font-medium);
}
.discount-card__list-text{
	margin-top: 16px;
	font-weight:var(--font-medium);
}
.discount__list-note{
	margin-top: 40px;
	display: flex;
    padding: 40px;
	background: var(--color-accent);
    border-radius: 16px;
    align-items: center;
	justify-content: center;
}
.discount__list-note p{
	color: #fff;
    font-size: 2rem;
}
/* お問合せ */
.discount__contact{
	width: var(--base-w);
	margin:120px auto 0;
    display: flex;
    justify-content: space-between;
}
.discount__contact .section-title{ width: 320px; }
.discount__contact-card{
	width: calc(100% - 320px);
	padding: 20px 40px 40px;
	background: var(--color-bg-base);
	border-radius: 24px;
}
.discount__contact-card h3{
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	font-weight: var(--font-semibold);
}
.discount__contact-card-content{
	margin-top: 20px;
	padding: 20px;
	background-color: #fff;
	border-radius: 16px;
}
.discount__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);
}
.discount__contact-tel__list{
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1;
}
.discount__contact-tel__list:nth-child(n+3){ margin-top: 8px; }
.discount__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);
}
.discount__contact-tel__text{ font-weight: var(--font-medium); }
@media (any-hover:hover) {
	.discount-card__title a:hover{
		opacity: 0.7;
	}
}
@media (max-width:1240px) {
	.discount__list ,
	.discount__contact{ width:var(--content-width-med); }
	.discount__contact{
		width:var(--content-width-med);
		display: block;
	}
	.discount__contact .section-title{ width: 100%; }
	.discount__contact-card{
		width: 100%;
		margin-top: 40px;
	}
}
@media (max-width:1024px) {
	.discount-card__item{ padding: 20px; }
	.discount__contact{margin: 80px auto 0; }
	.discount__contact-card{ padding: 20px; }
	.discount__contact-card h3{
		font-size: 2rem;
		line-height: 3.2rem;
	}
}
@media (max-width:767px) {
	.discount__list ,
	.discount__contact { width:var(--content-width-sm); }
	.discount-card__header{
		flex-direction: column;
		align-items: baseline;
		gap: 5px;
	}
	.discount-card__info-dl-item{
		flex-direction: column;
		align-items: baseline;
		gap: 5px;
	}
	.discount-card__info-dt ,
	.discount-card__info-dd { width: 100%; }
	.discount-card__list-dl-item{
		flex-direction: column;
		align-items: baseline;
		gap: 5px;
	}
	.discount-card__list-dt ,
	.discount-card__list-dd { width: 100%; }
	.discount__contact-card-content .phone-number{ font-size: 3.2rem; }
}

/* =================================================
	くらしのサポート
================================================= */
.lifesupport-service-group{
	width:var(--base-w);
	margin:0 auto;
}
.lifesupport-service-group:not(:last-of-type){margin-bottom:40px;}

.section-title--lifesupport{
	background:var(--color-accent);
}
.section-title--lifesupport:before{
	background:#F68A42;
}


.lifesupport-service-group__list{
	display:flex;
	flex-wrap:wrap;
	align-items:stretch;
	gap:20px;
}
.lifesupport-service-group__item{
	width:calc((100% - 60px) / 4);
	display:flex;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
	overflow:hidden;
}
.lifesupport-service-card{
	display:flex;
	flex-direction:column;
	gap:15px;
	width:100%;
	height:100%;
	padding:20px;
	background:#fff;
	transition:background-color .4s;
}
.lifesupport-service-card__title{
	font-size:2rem;
	position:relative;
	text-align:center;
}
.lifesupport-service-card__desc{
	min-height:70px;
	flex-grow:1;
	font-size:1.4rem;
	font-weight:var(--font-medium);
}
.lifesupport-service-card__figure{ border-radius:8px; overflow:hidden; }
.lifesupport-service-card__figure img{
	aspect-ratio:300 / 180;
	width:100%;
	height:auto;
}
/*ボタン*/
.lifesupport-service-group#everyday .lifesupport-service-card__arrow{
	background:var(--color-everyday);
}
.lifesupport-service-group#rich .lifesupport-service-card__arrow{
	background:var(--color-rich);
}
.lifesupport-service-group#emergency .lifesupport-service-card__arrow{
	background:var(--color-emergency);
}
.lifesupport-service-card .lifesupport__button{
	width:100%;
	font-size:1.4rem;
	padding:5px 45px 5px 20px;
}

@media (max-width:1240px) {
	.lifesupport-service-group{
		width:var(--content-width-med);
	}
	.lifesupport-service-group__item{ width:calc((100% - 20px) / 2); }
}
@media (max-width:767px) {
	.lifesupport-service-group{
		width:var(--content-width-sm);
	}
	.lifesupport-service-group__item{ width:100%; }
}

@media (any-hover:hover) {
	.lifesupport-service-card:hover .lifesupport__button{ color:#fff; background:var(--color-accent); }

	.lifesupport-service-group#everyday .join__button-arrow,
	.lifesupport-service-group#everyday .lifesupport-service-card:hover .join__button{
		background:var(--color-everyday);
	}
	.lifesupport-service-group#rich .join__button-arrow,
	.lifesupport-service-group#rich .lifesupport-service-card:hover .join__button{
		background:var(--color-rich);
	}
	.lifesupport-service-group#emergency .join__button-arrow,
	.lifesupport-service-group#emergency .lifesupport-service-card:hover .join__button{
		background:var(--color-emergency);
	}
	.lifesupport-service-card:hover .lifesupport-service-card__arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.lifesupport-service-card:hover .lifesupport-service-card__arrow::after {
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}

/* =================================================
	レンタルサービス
================================================= */
/*画像共通*/
.rental__content img{
	height:auto;
}
/*============//メグリアのレンタルコーナー//============*/

.rental__content .section-title {
	margin-bottom:3rem;
}
.rental__place-layout{
	width:var(--base-w);
	margin:0 auto;
	padding-bottom:80px;
}
.rental__place-info{
	margin-top:40px;
	padding-top:40px;
	border-top:1px solid var(--color-border);
	display:flex;
	align-items:center;
	gap:40px;
}
.rental__place-figure{
	border-radius:16px;
	overflow:hidden;
}
.rental__place-figure img{ height:auto; }
.rental__place-tel span{
	font-family:var(--font-eng);
	font-size:3.2rem;
}
.rental__place-time{ font-weight:var(--font-medium); }
.rental__place-time dt{
	display:inline-block;
	font-size:1.2rem;
	padding:.2rem 1.5rem;
	border-radius:50px;
	color:#fff;
	background:var(--color-accent);
}
.rental__place-time dd{
	margin-left:10px;
	display:inline-block;
	font-size:1.4rem;
}
.rental__place-button{ margin-top:40px; }
.rental__place-name{ font-size:2.4rem; margin-bottom:20px; }

.rental__place-tel{
	line-height:3.2rem;
	margin-bottom:10px;
}
.rental__place-telnum{
	margin-right:5px;
	color:var(--color-accent);
	font-family:var(--font-eng);
	font-size:3.2rem;
}
.rental__place-tel span{ display:inline-block; font-size:1.6rem; }


/*ダスキンレントオール*/
#duskin .rental__button-arrow,
#duskin .rental__place-button:hover,
#duskin .rental__place-time dt{
	background:#294197;
}
#duskin .rental__place-telnum{ color:#294197; }


@media (max-width:1240px) {
	.rental__place-layout{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.rental__place-layout{ padding-bottom:20px; }
	.rental__place-name{font-size:2rem;margin-bottom:10px;}
	.rental__place-tel{ margin-bottom:10px; }
	.rental__place-telnum{ font-size:2.4rem; margin-right:0; }
	.rental__place-tel span{ font-size:1.4rem; }
}
@media (max-width:767px) {
	.rental__place-layout{
		width:var(--content-width-sm);
	}
	.rental__place-info{flex-direction:column;gap:20px;}
	.rental__place-detail,
	.rental__place-image,
	.rental__place-figure img{ width:100%; }
}


/*============//レンタルサービスについて//============*/

.rental__about{
	padding:160px 0;
	background:var(--color-bg-base);
}
.rental__about-layout{
	padding:30px 80px 80px 80px;
	background:#fff;
	width:var(--base-w);
	margin:0 auto;
	box-shadow:var(--next-card-shadow);
	border-radius:24px;
}
.rental__about-card{
	padding:40px 70px 70px;
	border:solid 10px var(--color-accent);
	border-radius:16px;
	background:linear-gradient(
		to bottom,
		var(--color-bg-base) 400px,
		var(--color-bg-base2) 400px
	);
	position:relative;
	overflow:hidden;
}
.rental__about .section-title{ text-align:center; }
.rental__about-card:before{
	content:"";
	width:1404px;
	height:153px;
	display:block;
	background:url(../img/round-bg.png) no-repeat top;
	position:absolute;
	top:400px;
	left:50%;
	transform:translateX(-50%) rotate(180deg);
	z-index:1;
}

.rental__about-card > *{ position:relative; z-index:1; }
.rental__about-image{ margin-bottom:50px; }
.rental__about-lead{
	width:100%;
	margin-bottom:20px;
	padding:10px 20px;
	border-radius:16px;
	text-align:center;
	color:#fff;
	font-size:2.4rem;
	line-height:3.2rem;
	background:var(
	--color-accent);
}
.rental__about-list{ display:flex; gap:20px; }
.rental__about-item{ width:calc(100% / 2); }
.rental__about-item-image{border-radius:16px;margin-bottom:20px;overflow:hidden;}
.rental__about-item-image img{ width:100%; height:100%; }
.rental__about-item-title{margin-bottom:10px;font-size:2rem;}
.rental__about-item-price{margin-bottom:20px;line-height:2.4rem;}
.rental__about-item-period{
	display:inline-block;
	font-size:1.2rem;
	padding:.2rem 1.75rem;
	border-radius:50px;
	color:#fff;
	background:var(--color-text-sub);
}
.rental__about-item-pricenum{
	display:inline-block;
	margin-left:15px;
	vertical-align:middle;
}
.rental__about-item-pricenum span{ font-size:2.4rem; }
.rental__about-item-text{ font-size:1.4rem; }
.rental__about-note{ font-size:1.4rem; margin-top:40px; }


@media (max-width:1240px) {
	.rental__about-layout{
		width:var(--content-width-med);
		padding:30px 15px 15px;
	}
	.rental__about-card{
		padding:40px 15px 70px;
		border:solid 5px var(--color-accent);
	}
}
@media (max-width:1024px) {
	.rental__about{
		padding:100px 0;
	}
	.rental__about-card{ background:linear-gradient(to bottom, var(--color-bg-base) 20%, var(--color-bg-base2) 20%); }
	.rental__about-card:before{
		width:702px;
		height:78px;
		top:20%;
	}
	.rental__about-lead{font-size:1.8rem;margin-bottom:30px;}
	.rental__about-image{ margin-bottom:25px; }

	.rental__about-list{ flex-direction:column; }
	.rental__about-item{ width:100%; }
	.rental__about-item-pricenum{ margin-left:5px; }
	.rental__about-item-pricenum span { font-size:2.2rem; }
	.rental__about-note { margin-top:20px; }
}

@media (max-width:767px) {
	.rental__about-layout{
		width:var(--content-width-sm);
	}

}


/*============//レンタル手続きについて//============*/
.rental__procedures-layout{
	width:var(--base-w);
	margin:0 auto;
}
.rental-procedures-title{margin-bottom:30px;text-align:center;}
.rental__procedures-step{
	padding:40px 80px;
	margin-left:50px;
	border-radius:16px;
	box-shadow:var(--next-card-shadow);
	background:#fff;
	position:relative;
}
.rental__procedures-step-number{
	width:100px;
	height:100px;
	display:flex;
	color:#fff;
	font-size:1.4rem;
	font-family:var(--font-eng);
	line-height:3rem;
	align-items:center;
	flex-direction:column;
	justify-content:center;
	border-radius:50%;
	background:var(--color-accent);
	position:absolute;
	top:30px;
	left:-50px;
}
.rental__procedures-step-number span{ font-size:3.2rem; }
.rental__procedures-step + .rental__procedures-step{ margin-top:60px; }
.rental__procedures-step-title{
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom:1px solid var(--color-border);
	color:var(--color-accent);
	font-size:2rem;
}
.rental__procedures-contact{
	display:flex;
	align-items:stretch;
	justify-content:center;
	padding-top:20px;
	gap:20px;
}
.rental__procedures-contact-item{
	width:calc(100% / 2);
	display:flex;
	justify-content:center;
	flex-direction:column;
	border-radius:16px;
	border:1px solid var(--color-border);
}
.rental__procedures-contact-item:not(.rental__procedures-contact-item--banner){
	padding:40px;
}
.rental__procedures-contact-item--banner a{
	height: 100%;
	display: flex;
	padding:40px;
	align-items: center;
	justify-content: center;
	position: relative;
}
.rental__procedures-contact-figure img{
	max-width: 240px;
}
.rental__procedures-contact-figure img{
    max-width: 240px;
    width: 100%;
}
.rental__procedures-contact-item--banner .button-icon,
.rental__procedures-contact-item--banner .button-arrow{
	bottom:20px;
	right:20px;
	top:auto;
	transform:none;
}
.rental__procedures-contact-item--banner a,
.rental__procedures-mail a{
	transition:opacity .4s;
}

.rental__procedures-contact-figure{ text-align:center; }
.rental__procedures-tel{ font-feature-settings:"palt"; }
.rental__procedures-tel span{ display:inline-block; }
.rental__procedures-telnum{
	margin-right:5px;
	color:var(--color-accent);
	font-family:var(--font-eng);
	font-size:3.2rem;
}
.rental__procedures-time{
	margin-bottom:20px;
	font-weight:var(--font-medium);
}
.rental__procedures-time dt{
	display:inline-block;
	font-size:1.2rem;
	padding:.2rem 1.5rem;
	border-radius:50px;
	color:#fff;
	background:var(--color-accent);
}
.rental__procedures-time dd {
	margin-left:10px;
	display:inline-block;
	font-size:1.4rem;
}
.rental__procedures-mail a{ display:inline-block; color:var(--color-accent); }

.rental__procedures-step--maintenance{
	color:#fff;
	text-align:center;
	font-size: 2rem;
	background:var(--color-accent);
}
.rental__procedures-step:not(.rental__procedures-step--maintenance){ position:relative; }
.rental__procedures-step:not(.rental__procedures-step--maintenance):after{
	content:"\f0d7";
	display: block;
	color:var(--color-accent);
	font: normal 900 4.8rem/1 "Font Awesome 6 Free";
	line-height: 4.8rem;
	position:absolute;
	bottom: -5rem;
	left:50%;
	transform:translateX(-50%);
}
.rental__procedures-step-text{
	line-height:3.2rem;
}
.rental__procedures-step-text strong{
	color:var(--color-accent);
	font-weight:var(--font-semibold);
}


@media (max-width:1240px) {
	.rental__procedures-layout{
		width:var(--content-width-med);
	}
}
@media (max-width:1024px) {
	.rental__procedures-contact{ flex-direction:column; }
	.rental__procedures-contact-item{ width:100%; }
	.rental__procedures-contact-item:not(.rental__procedures-contact-item--banner),
	.rental__procedures-contact-item--banner a{ width:100%; padding:20px;}

	.rental-procedures-title{ margin-bottom:20px; font-size:2rem; }
	.rental__procedures-step {
		padding:40px 40px;
		margin-left:25px;
	}
	.rental__procedures-step-number {
		width:60px;
		height:60px;
		line-height:2rem;
		font-size:1.2rem;
		top:20px;
		left:-30px;
	}
	.rental__procedures-step-number span { font-size:2.4rem; }
	.rental__procedures-tel{ margin-bottom:10px; }
	.rental__procedures-telnum{ font-size:2.4rem; margin-right:0; }
	.rental__procedures-tel span{ font-size:1.4rem; }
}
@media (max-width:767px) {
	.rental__procedures-layout{
		width:var(--content-width-sm);
	}
}
@media (any-hover: hover) {
	.rental__procedures-mail a:hover,
	.rental__procedures-contact-item--banner a:hover{ opacity:.7; }
	.rental__procedures-contact-item--banner a:hover .button-arrow::before {
		animation-name: transformRightLeft;
		animation-delay: 0s;
	}
	.rental__procedures-contact-item--banner a:hover .button-arrow::after {
		animation-name: transformLeftRight;
		animation-delay: 0.1s;
	}
}

/* =================================================
	便利サービス
================================================= */
/*============//共通//============*/
.useful__contact,
.useful__access,
.useful__price-layout,
.useful__about-layout{
	width:var(--base-w);
	margin:0 auto;
}

@media (max-width:1240px) {
	.useful__contact,
	.useful__access,
	.useful__price-layout,
	.useful__about-layout{
		width:var(--content-width-med);
	}
}

@media (max-width:767px) {
	.useful__contact,
	.useful__access,
	.useful__price-layout,
	.useful__about-layout{
		width:var(--content-width-sm);
	}
}

/*============//便利屋サービスについて//============*/
.useful__about-layout{
	padding-bottom:80px;
}

.useful__about-intro{
	margin-top:40px;
	margin-bottom:40px;
	padding:40px;
	border-radius:16px;
	background:var(--color-bg-base);
	position:relative;
}
.useful__about-intro:after{
	content:"\f0d7";
	display:block;
	color:var(--color-accent);
	font:normal 900 4.8rem / 1 "Font Awesome 6 Free";
	line-height:4.8rem;
	position:absolute;
	bottom:-5rem;
	left:50%;
	transform:translateX(-50%);
}
.useful__about-intro .section-title{ margin-right:200px; }
.useful__about-list{
	display:flex;
	margin-top:30px;
	margin-right:200px;
	flex-wrap:wrap;
	gap:10px;
}
.useful__about-item{
	padding:10px 15px;
	border-radius:8px;
	font-size:1.4rem;
	background:#fffbf6;
}
.useful__about-figure{
	position:absolute;
	right:20px;
	top:50%;
	transform:translateY(-50%);
}
.useful__price-catch,
.useful__about-catch{
	margin-bottom:10px;
	text-align:center;
	font-size:2.4rem;
}
.useful__price-catch:after,
.useful__about-catch:after{
	padding-left:0.5rem;
}
.useful__price-catch:before,
.useful__about-catch:before{
	padding-left:0.5rem;
}
.useful__price-catch:after,
.useful__about-catch:after,
.useful__price-catch:before,
.useful__about-catch:before{
	content:"/";
	color:var(--color-accent);
	display:inline-block;
}
.useful__price-catch:before,
.useful__about-catch:before{
	transform:scaleX(-1);
}
.useful__about-accent,
.useful__price-accent{color:var(--color-accent);display:inline-block;}

.useful__price-text,
.useful__about-text{
	padding:15px;
	text-align:center;
	font-size:3.2rem;
	line-height:3.2rem;
	border-radius:16px;
}
.useful__about-text{
	color:#fff;
	background:var(--color-accent);
}
.useful__price-text{
	color:var(--color-accent);
	border:4px solid var(--color-accent);
	background:#fff;
}
@media (max-width:1024px) {
	.useful__about-layout{ padding-bottom:20px; }
}
@media (max-width:767px) {
	.useful__about-intro {padding:20px 15px;margin-top:20px;}
	.useful__about-figure{
		top:auto;
		transform:none;
		bottom:-20px;
	}
	.useful__about-figure img{width:150px;height:auto;}
	.useful__about-list {
		margin-right:auto;
		margin-bottom:150px;
		margin-top:15px;
	}
	.useful__about-item{ width:100%; }
	.useful__price-text, .useful__about-text { text-align:left; font-size:2.2rem; }
}
/*============//料金設定//============*/
.useful__price{
	padding:160px 0;
	background:var(--color-bg-base);
}
.useful__table-scroll{ overflow-x:auto; }
.useful__price-table-wrap,
.useful__fee-example-table-wrap,
.useful__fee-table-wrap{
	width:100%;
	overflow:hidden;
	border:1px solid var(--color-border);
}
.useful__price-table-wrap {
	min-width:1160px;
	margin-top:20px;
	border-radius:16px;
}
.useful__fee-example-table,
.useful__fee-table,
.useful__price-table {
	width:100%;
	border-collapse:collapse;
	font-feature-settings:"palt";
}
.useful__price-table-head,
.useful__fee-example-head,
.useful__fee-table-head{
	color:#fff;
	text-align:left;
	background:var(--color-accent);
}
.useful__price-table-cell--category {
	background-color:#ffe8da;
}
.useful__fee-example-head,
.useful__fee-table-head,
.useful__fee-table-cell,
.useful__fee-example-cell,
.useful__price-table-cell,
.useful__price-table-head{
	padding:15px;
	border:1px solid var(--color-border);
}
.useful__price-table-cell:not(.useful__price-table-cell--category){background:#fff;font-weight:var(--font-medium);}

/* 外周セルのボーダーを消す */
.useful__price-table tr:first-child th,
.useful__price-table tr:first-child td {
	border-top:none;
}
.useful__price-table tr:last-child th,
.useful__price-table tr:last-child td {
	border-bottom:none;
}
.useful__price-table tr th:first-child,
.useful__price-table tr td:first-child {
	border-left:none;
	border-bottom:none;
}
.useful__price-table tr th:last-child,
.useful__price-table tr td:last-child {
	border-right:none;
}
.useful__price-note{
	margin-top:20px;
	font-weight:var(--font-medium);
}
.useful__fee{
	margin-top:40px;
	padding:40px;
	border-radius:16px;
	background:#fff;
}
.useful__fee .section-title--sub{
	margin-bottom:30px;
	text-align:center;
	line-height:3.2rem;
}
.useful__fee-sub{font-size:1.6rem;display:inline-block;}
.useful__fee-table-wrap{ min-width:1080px; }
.useful__fee-table-scroll + .useful__fee-table-scroll{ margin-top:20px; }
.useful__fee-example-table-wrap{min-width:1040px;}
.useful__fee-example-table-wrap,
.useful__fee-table-wrap{
	border-radius:8px;
}
.useful__fee-example-table-scroll + .useful__fee-example-table-scroll{ margin-top:10px; }
.useful__fee-example{
	padding:20px;
	margin-top:40px;
	border-radius:16px;
	background:var(--color-bg-base);
}
.useful__fee-example-title{ text-align:center;font-size:2rem; }
.useful__fee-example-sub{display:inline-block;font-size:1.6rem;}
.useful__fee-note{
	margin-top:20px;
	font-weight:var(--font-medium);
}
.useful__fee-example-head, .useful__fee-table-head { width:240px; }
.useful__fee-example-table .useful__fee-example-cell:first-of-type{
	width:640px;
}
.useful__fee-example-table .useful__fee-example-cell:last-of-type{
	width:180px;
}
.useful__fee-example-title{ margin-bottom:10px; }

.useful__fee-table-cell,
.useful__fee-example-cell{
	line-height:2.4rem;
	font-weight:var(--font-medium);
}
.useful__price-table-note,
.useful__fee-note,
.useful__fee-example-note{
	font-size:1.4rem;
}
.useful__fee-example-table tr td:first-child,
.useful__fee-example-table tr th:first-child,
.useful__fee-table tr td:first-child,
.useful__fee-table tr th:first-child {
	border-left:none;
	border-bottom:none;
}

/* 外周セルのボーダーを消す */
.useful__fee-table tr:first-child th,
.useful__fee-table tr:first-child td,
.useful__fee-example-table tr:first-child th,
.useful__fee-example-table tr:first-child td {
	border-top:none;
}
.useful__fee-table tr:last-child th,
.useful__fee-table tr:last-child td,
.useful__fee-example-table tr:last-child th,
.useful__fee-example-table tr:last-child td {
	border-bottom:none;
}
.useful__fee-table tr th:first-child,
.useful__fee-table tr td:first-child,
.useful__fee-example-table tr th:first-child,
.useful__fee-example-table tr td:first-child {
	border-left:none;
	border-bottom:none;
}
.useful__fee-table tr th:last-child,
.useful__fee-table tr td:last-child,
.useful__fee-example-table tr th:last-child,
.useful__fee-example-table tr td:last-child {
	border-right:none;
}
@media (max-width:1024px) {
	.useful__price{
		padding:100px 0;
	}
	.useful__fee-example-head, .useful__fee-table-head { width:15%; }
	.useful__fee-example-table .useful__fee-example-cell:first-of-type{
		width:70;
	}
	.useful__fee-example-table .useful__fee-example-cell:last-of-type{
		width:15%;
	}
	.useful__fee {
		margin-top:40px;
		padding:20px 15px;
	}
}


/*============//アクセス//============*/
.useful__access{
	margin-bottom:120px;
	display:flex;
	gap:80px;
	justify-content:space-between;
}
.useful__access-contact{ padding-top:80px; }
.useful__access-map{
	width:640px;
	height:320px;
	border-radius:16px;
	border:1px solid var(--color-border);
	overflow:hidden;
}
.useful__access-map iframe{ width:100%; height:100%; }

.useful__fee-example-table{background:#fff; }

.useful__access-button{ margin-top:20px; }
.useful__access .section-title{ margin-bottom:4rem; }
.useful__access-address{
	font-weight:var(--font-medium);
}
@media (max-width:1024px) {
	.useful__access{margin-bottom:60px;gap:40px;flex-direction:column;}
	.useful__access-map,
	.useful__section{ width:100%; }
	.useful__access-contact{ padding-top:20px; }
	.useful__access .section-title{ margin-bottom:2rem; }
}


/*============//お問い合わせ//============*/
.useful__contact{
	display:flex;
	justify-content:space-between;
	padding:40px;
	gap:40px;
	border-radius:24px;
	box-shadow: var(--next-item-shadow);
	background:var(--color-accent);
}
.useful__text{
	width:600px;
	padding:40px;
	border-radius:16px;
	background:#fff;
}
.useful__contact-tel{
	margin-bottom:20px;
	color:var(--color-accent);
	font-size:4.8rem;
	line-height:4.8rem;
	font-family:var(--font-eng);
}
.useful__contact-hours{
	font-weight:var(--font-medium);
}
.useful__contact-hours-label{
	display:inline-block;
	font-size:1.2rem;
	padding:.2rem 1.5rem;
	border-radius:50px;
	background:var(--color-bg-base);
}
.useful__contact-hours-value{
	margin-left:10px;
	display:inline-block;
	font-size:1.4rem;
}
@media (max-width:1024px) {
	.useful__contact{
		padding:20px 15px;
		flex-direction:column;
		gap:20px;
	}
	.useful__text{ width:100%; padding:20px; }
	.useful__contact-hours { margin-top:10px; }
}
@media (max-width:767px) {
	.useful__contact-tel{ font-size:3.8rem; }
}


/* =================================================
	CO・OP共済
================================================= */
/*============// 共通 //============*/
.coop-subtitle{
	color: var(--color-accent);
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	font-weight: var(--font-semibold);
}
/*============// CO・OP共済 //============*/
.coop__about{
	width: var(--base-w);
	margin:0 auto;
}
.coop__about__header h2{
	text-align: center;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
}
.coop__about__header h2 .orange{ color: var(--color-accent); }
.coop__about__header h2 .under-line{ background: linear-gradient(to bottom, transparent 0, transparent calc(100% - 16px), #ffe68f calc(100% - 16px), #ffe68f 100%); }
/* COOP Slider */
.coop-slider {
    width: 100%;
	height: 100%;
    margin-top: 80px;
    flex: 1;
    top: 0;
    border: 1px solid var(--color-border);
    border-radius: 24px;
    overflow: hidden;
    position: relative;
    z-index: 0;
    box-shadow: var(--shadow-base);
}
/* メインスライダー（前景） */
.coop-slider__main {
    width: 100%;
    margin: 0 auto;
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
}
.coop-slider__main-image {
    width: 100%;
    height: auto;
    border: 1px solid var(--color-border);
    border-radius: 8px;
    overflow: hidden;
}
.coop-slider__main-link {
    transition: opacity 0.4s;
}
/* ナビゲーション（矢印） */
.coop-slider__arrow {
    width: 80px;
    height: 80px;
    border: 1px solid var(--color-border);
    border-radius: 100vmax;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--color-accent);
    background: #fff;
    font-size: 2.4rem;
    opacity: 1;
    transition: opacity 0.4s;
}
/* コントロールエリア（ドット・停止ボタン） */
.coop-slider__nav {
    width: fit-content;
    max-width: 800px;
    margin: 40px auto 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px 20px;
}
.coop-slider__pagination {
    width: fit-content;
    max-width: calc(100% - 70px);
    padding: 0;
    justify-content: flex-start;
    position: static;
}
.coop-slider__page {
    width: 24px;
    height: 8px;
    border-radius: 100vmax;
    background: #fff;
    opacity: 1;
    transition: opacity 0.4s;
}
.coop-slider__page[aria-selected="true"] {
    background: var(--color-accent);
    transform: scale(1);
}
.coop-slider__toggle {
    width: 50px;
    height: 50px;
    border-radius: 100vmax;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 1.4rem;
    background: var(--color-accent);
    transition: opacity 0.4s;
}
/* 背景スライダー（ぼかし） */
.coop-slider__back,
.coop-slider__back-wrapper {
    height: 100%;
    position: relative;
    z-index: -1;
}

.coop-slider__back::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    background: rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(15px);
    z-index: 1;
}

.coop-slider__back-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* ホバーアクション */
@media (any-hover: hover) {
    .coop-slider__main-link:hover,
    .coop-slider__page:hover,
    .coop-slider__toggle:hover {
        opacity: 0.7;
    }
}
@media (max-width:1240px) {
	.coop__about{ width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.coop__about__header h2{
		text-align: left;
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.coop-slider { margin: 40px auto 0; }
	.coop-slider__main { top: 40px; }
	.coop-slider__arrow {
	    width: 40px;
	    height: 40px;
	    font-size: 1rem; /* デフォルトサイズへ */
	}
	.coop-slider__nav {
	    width: calc(100% - 90px);
	    margin: 20px auto 0;
	    gap: 5px 10px;
	}
	.coop-slider__pagination { width: calc(100% - 40px); }
	.coop-slider__page {
	    width: 20px;
	    height: 7px;
	}
	.coop-slider__toggle {
	    width: 40px;
	    height: 40px;
	    font-size: 1.3rem;
	}
/* モバイル時は高さを自動または比率で維持するため固定を解除 */
	.coop-slider__back,
	.coop-slider__back-wrapper {
	    height: auto;
	}
}
@media (max-width:767px) {
	.coop__about{ width:var(--content-width-sm); }
}
/*============// 共済の種類 //============*/
.coop__types{
	margin-top: 120px;
	padding-bottom: 80px;
	position:relative;
}
.coop__types-wrapper{
	width: var(--base-w);
	margin:0 auto;
}
.coop__types-wrapper .section-title{ text-align: center; }
.coop__types-list{
	width: 100%;
	margin: 40px auto 0;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.coop__types-item{ width: calc((100% - 40px) / 3); }
.coop__types-card{
	width: 100%;
	min-height: 160px;
	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: 20px 40px;
	font-size: 2.4rem;
	background: #fff;
	transition: color ease-in .4s, background-color ease-in .4s;
	position: relative;
}
.coop__types-card img{
	width: 100%;
	max-width: 200px;
    height: auto;
    overflow: hidden;
}
.coop__types-card .coop__types__icon{
	top: auto;
	bottom: 16px;
	right: 16px;
	transform: none;
}
@media (any-hover:hover) {
	.coop__types-card:hover .button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.coop__types-card:hover .button-arrow::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.coop__types-wrapper{ width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.coop__types{
		margin-top: 80px;
		padding-bottom: 40px;
	}
	.coop__types-list{ gap: 10px; }
	.coop__types-item{ width: calc((100% - 20px) / 3); }
	.coop__types-card{ padding: 20px; }
}
@media (max-width:767px) {
	.coop__types-wrapper{ width:var(--content-width-sm); }
	.coop__types-item{ width: calc((100% - 10px) / 2); }
}
/*============// 加入申し込み //============*/
.coop__apply{
	padding:120px 0 160px;
	background: var(--color-bg-base);
}
.coop__apply-wrapper{
	width: var(--base-w);
	margin:0 auto;
}
.coop__apply-wrapper .section-title{ text-align: center; }
.coop__apply-subtitle{
	padding: 6px;
	color: #fff;
	background-color: var(--color-accent);
	text-align: center;
	font-size: 2.4rem;
	border-radius: 100vmax;
}
.coop__apply__NewJoiner{
	margin-top: 40px;
	padding: 40px;
	background-color: var(--color-accent);
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.coop__apply__NewJoiner h3{ background-color: #f78942; }
.coop__apply__NewJoiner-item{ margin-top: 40px; }
.coop__apply__NewJoiner-card{
	width: 100%;
	min-height: 160px;
	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;
}
.coop__apply__NewJoiner-card img{
	width: 100%;
	max-width: 830px;
    height: auto;
    overflow: hidden;
}
.coop__apply__NewJoiner-card .coop__apply__icon{
	top: auto;
	bottom: 16px;
	right: 16px;
	transform: none;
}
.coop__apply__container{
	margin-top: 40px;
	padding: 40px;
	background-color: #fff;
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.coop__apply__Request-list{
	margin-top: 20px;
	display: flex;
	gap: 20px;
}
.coop__apply__Request-item{ width: calc(100% / 2); }
.coop__apply__Request-card{
	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;
}
.coop__apply__Request-card img{
	width: 100%;
	max-width: 320px;
    height: auto;
    overflow: hidden;
}
.coop__apply__Request-card .coop__apply__icon{
	top: auto;
	bottom: 16px;
	right: 16px;
	transform: none;
}
.coop__apply__guide{
	margin-top: 40px;
	display: flex;
	gap: 20px;
}
.coop__apply__guide > section { width: calc(100% / 2); }
.coop__apply__About-item ,
.coop__apply__NonMember-item { margin-top: 20px; }
.coop__apply__About-card ,
.coop__apply__NonMember-card {
	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;
}
.coop__apply__About-card img,
.coop__apply__NonMember-card img{
	width: 100%;
	max-width: 320px;
    height: auto;
    overflow: hidden;
}
.coop__apply__About-card .coop__apply__icon,
.coop__apply__NonMember-card .coop__apply__icon{
	top: auto;
	bottom: 16px;
	right: 16px;
	transform: none;
}
.coop__apply__ExistingMember{
	margin-top: 40px;
	padding: 40px;
	background-color: #fff;
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.coop__apply__ExistingMember-item{ margin-top: 40px; }
.coop__apply__ExistingMember-card{
	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;
}
.coop__apply__ExistingMember-card img{
	width: 100%;
	max-width: 320px;
    height: auto;
    overflow: hidden;
}
.coop__apply__ExistingMember-card .coop__apply__icon{
	top: auto;
	bottom: 16px;
	right: 16px;
	transform: none;
}
.coop__apply__note{
	margin-top: 40px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
@media (any-hover:hover) {
	.coop__apply__NewJoiner-card:hover .button-arrow::before ,
	.coop__apply__Request-card:hover .button-arrow::before ,
	.coop__apply__About-card:hover .button-arrow::before ,
	.coop__apply__NonMember-card:hover .button-arrow::before ,
	.coop__apply__ExistingMember-card:hover .button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.coop__apply__NewJoiner-card:hover .button-arrow::after ,
	.coop__apply__Request-card:hover .button-arrow::after ,
	.coop__apply__About-card:hover .button-arrow::after ,
	.coop__apply__NonMember-card:hover .button-arrow::after ,
	.coop__apply__ExistingMember-card:hover .button-arrow::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.coop__apply-wrapper{ width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.coop__apply{ padding:80px 0 120px; }
	.coop__apply-subtitle{ font-size: 1.8rem; }
	.coop__apply__NewJoiner{ padding: 20px; }
	.coop__apply__NewJoiner-item{ margin-top: 20px; }
	.coop__apply__NewJoiner-card{ padding: 20px; }
	.coop__apply__container{
		margin-top: 20px;
		padding: 20px;
	}
	.coop__apply__Request-card{ padding: 20px; }
	.coop__apply__About-card ,
	.coop__apply__NonMember-card { padding: 20px; }
	.coop__apply__ExistingMember{
		margin-top: 20px;
		padding: 20px;
	}
	.coop__apply__ExistingMember-item{ margin-top: 20px; }
	.coop__apply__ExistingMember-card{ padding: 20px; }
	.coop__apply__note{ margin-top: 20px; }
}
@media (max-width:767px) {
	.coop__apply-wrapper{ width:var(--content-width-sm); }
	.coop__apply__Request-list{ display: block; }
	.coop__apply__Request-item{ width: 100%; }
	.coop__apply__Request-item:nth-child(n+2){ margin-top: 10px; }
	.coop__apply__guide{ display: block; }
	.coop__apply__guide > section { width: 100%; }
	.coop__apply__guide > section:nth-child(n+2){ margin-top: 40px; }
	.coop__apply__note{
		margin-top: 20px;
		font-size: 1.2rem;
		font-weight: var(--font-medium);
	}
}
/*============// ご相談窓口 //============*/
.coop__counter-wrapper{
	width: var(--base-w);
	margin:0 auto;
	padding-top: 80px;
}
.coop__counter-flex{
	margin-top: 30px;
	padding-top: 30px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	border-top: 1px solid var(--color-border);
}
.coop__counter-flex__top{ width: fit-content; }
.coop__counter-flex__bottom{ min-width: 540px; }
.coop__counter-flex__text{
	margin-top: 20px;
	line-height: 2;
	font-weight: var(--font-medium);
}
.coop__counter-flex__note{
	margin-top: 10px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.coop__counter-flex__list{ margin-top: 20px; }
.coop__counter-flex__list li{
	margin-top: 20px;
    padding-left: 1em;
	line-height: 1.8;
	font-weight: var(--font-medium);
	position: relative;
}
.coop__counter-flex__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 8px;
    height: 8px;
    background-color: var(--color-accent);
    border-radius: 50%;
}
.coop__counter-flex__bottom .table_type-01 {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	overflow: hidden; /* 中の要素を角に合わせて切り抜く */
	border: 1px solid var(--color-border);
	font-size: 14px;
}
.coop__counter-flex__bottom .table_type-01 th,
.coop__counter-flex__bottom .table_type-01 td {
	padding: 12px 16px;
	border-bottom: 1px solid var(--color-border);
	border-right: 1px solid var(--color-border);
	background-color: #fff;
	text-align: left;
}
.coop__counter-flex__bottom .table_type-01 th:last-child ,
.coop__counter-flex__bottom .table_type-01 td:last-child { border-right: none; }
.coop__counter-flex__bottom .table_type-01 tr:last-child th ,
.coop__counter-flex__bottom .table_type-01 tr:last-child td { border-bottom: none; }
.coop__counter-flex__bottom 
.coop__counter-flex__bottom .table_type-01 th {
	background-color: #ffe9dc;
	font-weight: bold;
}
.coop__counter-flex__bottom .table_type-01 th{
	color: #fff;
	background-color: var(--color-accent);
}
.coop__counter-flex__bottom img{
    width: 100%;
    height: auto;
    border-radius: 16px;
    overflow: hidden;
}
@media (max-width:1240px) {
	.coop__counter-wrapper{ width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.coop__counter-wrapper{ padding-top: 40px; }
	.coop__counter-flex{ display: block; }
	.coop__counter-flex__bottom{
		width: 100%;
		min-width: auto;
		margin-top: 40px;
	}
}
@media (max-width:767px) {
	.coop__counter-wrapper{ width:var(--content-width-sm); }
	.coop__counter-flex__note{
		font-size: 1.2rem;
	}
}
/*============// CO･OP共済勧誘方針 //============*/
.coop__policy{
	width: var(--base-w);
	margin:120px auto 0;
}
.coop__policy-list{
	margin-top: 40px;
	padding: 40px;
	background-color: #fff;
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.coop__policy-list > p {
	margin-top: 20px;
	line-height: 2;
	font-weight: var(--font-medium);
}
.coop__policy-list-wrapper{
	margin-top: 40px;
	padding: 40px;
	border-radius: 16px;
	background-color: var(--color-bg-base);
}
.coop__policy-list-wrapper ol{
	padding-left: 2em;
	counter-reset: listnum;
	position: relative;
}
.coop__policy-list-wrapper li{
	line-height: 1.8;
	font-weight: var(--font-medium);
}
.coop__policy-list-wrapper li + li{ margin-top: 15px; }
.coop__policy-list-wrapper li::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #665a52;
	font-size: 1.6rem;
	font-family: var(--font-eng);
	position: absolute;
	left: 0;
}
@media (max-width:1240px) {
	.coop__policy{ width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.coop__policy{ margin:80px auto 0; }
	.coop__policy-list{ padding: 20px; }
	.coop__policy-list > p { margin-top: 10px; }
	.coop__policy-list-wrapper{
		margin-top: 20px;
		padding: 20px;
	}
}
@media (max-width:767px) {
	.coop__policy{ width:var(--content-width-sm); }
}
/*============// お問合せ・ご相談 //============*/
.coop__contact{
	width: var(--base-w);
	margin:120px auto 0;
    display: flex;
    justify-content: space-between;
}
.coop__contact .section-title{ width: 480px; }
.coop__contact-cards{ width: calc(100% - 480px); }
.coop__contact-card{
	padding: 20px 40px 40px;
	background-color: var(--color-accent);
	border-radius: 24px;
	box-shadow: var(--next-card-shadow);
}
.coop__contact-card h3{
	color: #fff;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
	font-weight: var(--font-semibold);
}
.coop__contact-tel__list{
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1;
}
.coop__contact-tel__list:nth-child(n+3){ margin-top: 8px; }
.coop__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);
}
.coop__contact-tel__text{ font-weight: var(--font-medium); }
.coop__contact-orange-card-content{
	margin-top: 20px;
	padding: 20px;
	background-color: #fff;
	border-radius: 16px;
}
.coop__contact-orange-card .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);
}
.coop__contact-red-card{
	margin-top: 20px;
	background-color: #ce0614;
}
.coop__contact-red-card-inner{
	margin-top: 20px;
	display: flex;
	gap: 20px;
}
.coop__contact-red-phone-box {
	width: calc(100% / 2);
	padding: 20px;
	background-color: #fff;
	border-radius: 16px;
}
.coop__contact-red-phone-box .box-label{
    padding-left: 1em;
	position: relative;
}
.coop__contact-red-phone-box .box-label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.6em;
    width: 8px;
    height: 8px;
    background-color: #ce0614;
    border-radius: 50%;
}
.coop__contact-red-phone-box .phone-number{
	width: fit-content;
	margin-top: 10px;
	display: block;
	color: #ce0614;
	line-height: 1;
	font-family: var(--font-eng);
	font-size: 3.2rem;
	font-weight: var(--font-bold);
}
@media (max-width:1240px) {
	.coop__contact{
		width:var(--content-width-med);
		display: block;
	}
	.coop__contact .section-title{ width: 100%; }
	.coop__contact-cards{
		width: 100%;
		margin-top: 40px;
	}
}
@media (max-width: 1024px) {
	.coop__contact-card{ padding: 20px; }
	.coop__contact-card h3{
		font-size: 2rem;
		line-height: 3.2rem;
	}
}
@media (max-width:767px) {
	.coop__contact{ width:var(--content-width-sm); }
	.coop__contact-orange-card .phone-number{ font-size: 4rem; }
	.coop__contact-red-card-inner{ display: block; }
	.coop__contact-red-phone-box { width: 100%; }
	.coop__contact-red-phone-box:nth-child(n+2) { margin-top: 10px; }
}

/* =================================================
	お問い合わせ
================================================= */
.contact-form ,
.contact-tel {
	width: var(--base-w);
	margin:0 auto;
	padding: 40px;
    border-radius: 24px;
    background: #fff;
    box-shadow: var(--shadow-base);
}
.contact-tel{ margin:40px auto 0; }
.contact-form h2 ,
.contact-tel h2 {
	padding-left: 16px;
	font-size: 2.4rem;
	line-height: 3.2rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.contact-form h2::before ,
.contact-tel h2::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%);
}
.contact-form-card{
	margin-top: 40px;
	display: flex;
	gap: 40px;
}
.contact-form-card__item{
	width: 50%;
	padding: 20px;
    display: flex;
    flex-direction: column;
	border: 8px solid #e6d4c1;
    border-radius: 16px;
	background: var(--color-bg-base);
}
.contact-form-card__item h3{
	font-size: 2rem;
	line-height: 2.8rem;
	letter-spacing: var(--next-spacing-text);
}
.contact-form-card__item p{ margin: 20px 0; }
.contact-form-card__item .join__button{
	width: 100%;
	margin-top: auto;
}
.contact-form__note { margin-top: 40px; }
.contact-form__note p{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.contact-form__note p + p{ margin-top: 10px; }
.contact-tel{
	display: flex;
	gap: 80px;
}
.contact-tel__header{ width: 320px; }
.contact-tel__item{
	width: calc(100% - 320px);
	padding: 40px;
    display: flex;
    flex-direction: column;
    border-radius: 16px;
	background: var(--color-bg-base);
}
.contact-tel__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);
}
.contact-tel__list{
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 10px;
	line-height: 1;
}
.contact-tel__list:nth-child(n+3){ margin-top: 8px; }
.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-base2);
}
.contact-tel__text{ font-weight: var(--font-medium); }
.contact-tel__note{
	margin-top: 20px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}


@media (max-width:1240px) {
	.contact-form ,
	.contact-tel{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.contact-form ,
	.contact-tel { padding: 40px 20px; }
	.contact-form h2 ,
	.contact-tel h2 {
		font-size: 2rem;
		line-height: 2.4rem;
	}
	.contact-form-card{
		margin-top: 20px;
		gap: 20px;
	}
	.contact-form-card__item{ padding: 20px 10px; }
	.contact-form-card__item h3{
		font-size: 1.8rem;
		line-height: 2.2rem;
	}
	.contact-form-card__item p{ font-size: 1.4rem; }
	.contact-form__note { margin-top:  20px; }
	.contact-tel{ display: block; }
	.contact-tel__header{ width: 100%; }
	.contact-tel__item{
		width: 100%;
		margin-top: 20px;
		padding: 40px 20px;
	}
}
@media (max-width:767px) {
	.contact-form ,
	.contact-tel{ width:var(--content-width-sm); }
	.contact-form-card{ display: block; }
	.contact-form-card__item{ width: 100%; }
	.contact-form-card__item:nth-child(n+2){ margin-top: 20px; }
	.contact-tel__item{ padding: 20px; }
	.contact-tel__number{ font-size: 4rem; }
}

/* =================================================
	採用情報
================================================= */
/*============// 求人一覧 //============*/
.recruit-list{
	width: var(--base-w);
	margin:0 auto;
}
.recruit-card{
	color: #222;
    position: relative;
}
.recruit-card a{
	width: 100%;
	min-height: 160px;
	display: flex;
	align-items: center;
	gap: 40px;
	box-shadow: var(--next-card-shadow);
	border: 1px solid var(--color-border);
	border-radius: 24px;
	padding: 40px 120px 40px 40px;
	background: #fff;
	transition: color ease-in .4s, background-color ease-in .4s;
}
.recruit-card a img{
	width: 100%;
	height: auto;
	border-radius: 16px;
	overflow: hidden;
}
.recruit-card__box .section-title__en{ transition: color ease-in .4s; }
.recruit-card__box .button-arrow {
	width: 40px;
	height: 40px;
	font-size: 1.8rem;
	top: auto;
	bottom: 20px;
	right: 40px;
}
.recruit-card__box .button-arrow::before,
.recruit-card__box .button-arrow::after{
	width:40px;
	height:40px;
}
.recruit-card__box p{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
.recruit-list li + li{ margin-top: 40px; }

.recruit-initiatives__block{
	width: var(--base-w);
	margin:80px auto 0;
	padding-top: 80px;
	border-top: 1px solid var(--color-border);
}
.recruit-initiatives__block h2{
	text-align: center;
	font-size: 3.2rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
}
.recruit-initiatives__block h2 span{ color: var(--color-accent); }
.recruit-initiatives__block .initiatives-detail{
	margin-top: 40px;
	display: flex;
    gap: 40px;
}
.recruit-initiatives__block .initiatives-detail_box{ width: 50%; }
.recruit-initiatives__block .initiatives-detail_box:nth-of-type(1) a{
	width: 100%;
	min-height: 160px;
	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: 20px;
	background: #fff;
	text-align: center;
	transition: opacity .4s;
}
.recruit-initiatives__block .initiatives-detail_box:nth-of-type(1) a h3{
	color: #3b9664;
	font-size: 2.8rem;
	line-height: 4.4rem;
	letter-spacing: var(--next-spacing-text);
}
.recruit-initiatives__block .initiatives-detail_box:nth-of-type(1) a h3 span{ color: var(--color-accent); }
.recruit-initiatives__block .initiatives-detail_box:nth-of-type(1) a p{
	padding: 4px 16px;
	color: #fff;
	font-size: 1.4rem;
	line-height: inherit;
	letter-spacing: var(--next-spacing-text);
	border-radius: 24px;
	background: #3b9664;
}
.recruit-initiatives__block .initiatives-detail_box:nth-of-type(2) a{
	width: 100%;
	min-height: 160px;
	display: flex;
	align-items: center;
	gap: 16px;
	box-shadow: var(--next-card-shadow);
	border: 1px solid var(--color-border);
	border-radius: 16px;
	padding: 20px;
	background: #fff;
	transition: opacity .4s;
}
.recruit-initiatives__block .initiatives-detail_box a:hover{ opacity: 0.7; }

@media (any-hover:hover) {
	.recruit-list .recruit-card a:hover{
		color:#fff;
		background:var(--color-accent);
	}
	.recruit-list .recruit-card a:hover .section-title__en{ color:#fff; }
	.recruit-list .recruit-card a:hover .button-arrow::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.recruit-list .recruit-card a:hover .button-arrow::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.recruit-list{ width:var(--content-width-med); }
	.recruit-initiatives__block{ width:var(--content-width-med); }
}
@media (min-width: 1025px) {
	.recruit-card a img{ width: 480px; }
	.recruit-card__box{ width: calc(100% - 480px); }
}
@media (max-width:1024px) {
	.recruit-card a{
		align-items: flex-start;
		flex-direction: column;
		gap: 20px;
		padding: 20px;
	}
	.recruit-card__box {
		width: calc(100% - 60px);
	}
	.recruit-card__box .button-arrow {
		bottom: 0;
		right: 20px;
	}
	.recruit-card__box p{ margin-top: 20px; }
	.recruit-initiatives__block{
		margin:60px auto 0;
		padding-top: 60px;
	}
	.recruit-initiatives__block h2{
		font-size: 2.4rem;
		line-height: 3.6rem;
	}
	.recruit-initiatives__block .initiatives-detail{ display: block; }
	.recruit-initiatives__block .initiatives-detail_box{ width: 100%; }
	.recruit-initiatives__block .initiatives-detail_box:not(:nth-of-type(1)){ margin-top: 20px; }
	.recruit-initiatives__block .initiatives-detail_box:nth-of-type(2) a{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
}
@media (max-width:767px) {
	.recruit-list{ width:var(--content-width-sm); }
	.recruit-initiatives__block{ width:var(--content-width-sm); }
}


/* =================================================
今週のチラシ
================================================= */
.new-flyer-titl{ background: var(--color-bg-base); }
.new-flyer-titl::before{ background: #f78942; }
.new-flyer {
	width: var(--base-w);
	max-width: calc(100% - 40px); /* PCの最大幅 */
	margin: 0 auto;
}
.new-flyer + .new-flyer { margin: 80px auto 0; }
.new-flyer__shop-list {
	display: flex;
	margin-top: 20px;
	flex-wrap: wrap;
	gap: 10px;
}
.new-flyer__shop-name {
	padding: 6px 12px;
	border-radius: 8px;
	font-size: 1.4rem;
	background: var(--color-bg-base);
}
.new-flyer__list {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.new-flyer__item {
	width: 260px;
	border-radius: 16px;
	border: 1px solid var(--color-border);
	background: #fff;
	box-shadow: var(--shadow-base);
	position: relative;
}
.new-flyer__title {
	width: auto;
	min-width: calc(100% - 20px);
	padding: 5px 25px;
	border-radius: 100vmax;
	color: #fff;
	text-align: center;
	font-size: 1.6rem;
	background: var(--color-accent);
	position: absolute;
	top: -1em;
	left: 50%;
	transform: translateX(-50%);
}
.new-flyer__link {
	padding-top: 40px;
	display: flex;
	align-items: center;
	flex-direction: column;
}
.new-flyer__image {
	width: 180px;
	height: 200px;
	object-fit: contain;
	transition: opacity .4s;
	display: block;
	margin: 0 auto;
}
.new-flyer__desc {
	width: 100%;
	margin-top: 20px;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	line-height: 1.4;
	border-top: 1px solid var(--color-border);
	font-size: 1.6rem;
	transition: color .4s;
}
.new-flyer__pdf {
	color: var(--color-text-sub);
	font-size: 1.4rem;
	transition: color .4s;
}
.new-flyer__text {
	margin-top: 40px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.new-flyer__meglianet{
	width: var(--base-w);
	margin: 80px auto 0;
	padding: 80px 0;
	border-top: 1px solid var(--color-border);
}
.new-flyer__meglianet-inner{
	padding: 40px;
	display: flex;
	border-radius: 16px;
	background: var(--color-bg-base);
	overflow: hidden;
	gap: 40px;
}
.new-flyer__meglianet-top{ width: calc(100% - 480px); }
.new-flyer__meglianet-top p{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
.new-flyer__meglianet-bottom{ width: 480px; }
.new-flyer__meglianet__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;
}
.new-flyer__meglianet__image{
    width: 100%;
    max-width: 240px;
    height: auto;
    overflow: hidden;
}
.new-flyer__meglianet__icon {
    top: auto;
    bottom: 16px;
    right: 16px;
    transform: none;
}
@media (any-hover:hover) {
	.new-flyer__link:hover,
	.new-flyer__link:hover .new-flyer__pdf{ color: var(--color-accent); }
	.new-flyer__link:hover .new-flyer__image{ opacity: .7;  }
	.new-flyer__meglianet__link:hover .new-flyer__meglianet__icon::before{
		animation-name:transformRightLeft;
		animation-delay:0s;
	}
	.new-flyer__meglianet__link:hover .new-flyer__meglianet__icon::after{
		animation-name:transformLeftRight;
		animation-delay:0.1s;
	}
}
@media (max-width:1240px) {
	.new-flyer ,
	.new-flyer__meglianet { width:var(--content-width-med); }
}
@media (max-width: 1024px) {
	.new-flyer { max-width: none; }
	.new-flyer__list {
		margin-top: 30px;
		gap: 30px 10px;
	}
	.new-flyer__item { width: calc(50% - 5px); }
	.new-flyer__title {
		width: calc(100% - 20px);
		padding: 5px 10px;
		font-size: 1.2rem;
	}
	.new-flyer__image { width: calc(100% - 30px); }
	.new-flyer__desc { font-size: 1.4rem; }
	.new-flyer__pdf { font-size: 1.2rem; }
	.new-flyer__text { margin-top: 30px; }
	.new-flyer__meglianet{
		margin: 40px auto 0;
		padding: 40px 0;
	}
	.new-flyer__meglianet-inner{
		padding: 20px;
		display: block;
	}
	.new-flyer__meglianet-top{ width: 100% }
	.new-flyer__meglianet-top p{ margin-top: 20px; }
	.new-flyer__meglianet-bottom{ width: 100% }
	.new-flyer__meglianet__link{
		margin-top: 20px;
		padding: 20px 40px;
	}
}
@media (max-width:767px) {
	.new-flyer ,
	.new-flyer__meglianet { width:var(--content-width-sm); }
	.new-flyer-titl{ margin-bottom: 20px; }
	.new-flyer__shop-name {
		padding: 4px 6px;
		font-size: 1rem;
	}
}


/* =================================================
	lineページ
================================================= */
.line-list{
	width: var(--base-w);
	margin:0 auto;
}
.line-list__header{
	padding: 40px;
	background: var(--color-bg-base);
	border-radius: 16px;
}
.line-list__header h2{
	font-size: 3.2rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
}
.line-list__header div{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	font-weight: var(--font-medium);
	border-radius: 8px;
}
.line-list__header div p{
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: inherit;
	letter-spacing: var(--next-spacing-text);
}
.line-card{
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.line-card__item{
	width: calc((100% - 20px) / 2);
	border-radius: 16px;
	border: 1px solid var(--color-border);
	overflow: hidden;
	box-shadow: var(--shadow-base);
}
.line-card__item a{
	min-height: 120px;
	padding: 20px;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
	background: #fff;
	position: relative;
	transition: all .4s ease-out;
}
.line-card__item a::after {
	content: "\f061";
	width: 65px;
	height: 100%;
	border-left: 1px solid var(--color-border);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	color: var(--color-text-sub);
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: color .4s;
}
.line-card__item a .fa-line{
	color: #06C755;
	font-size: 4rem;
	transition: color .4s;
}
.line-card__box h3{
	font-size: 2rem;
	line-height: 2.8rem;
	letter-spacing: var(--next-spacing-text);
	transition: color .4s;
}
.line-card__box dl{
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 10px;
}
.line-card__box dl dt{
	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.2rem;
	background: var(--color-bg-base);
}
.line-card__box dl dd{
	line-height: 1.6;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
	transition: color .4s;
}

@media (any-hover:hover) {
	.line-card__item a:hover{ background: #06C755; }
	.line-card__item a:hover .fa-line{ color: #fff; }
	.line-card__item a:hover h3{ color: #fff; }
	.line-card__item a:hover dl dd{ color: #fff; }
	.line-card__item a:hover::after{ color: #fff; }
}
@media (max-width:1240px) {
	.line-list{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.line-list__header{ padding: 20px; }
	.line-list__header h2{
		font-size: 2.4rem;
		line-height: 3.6rem;
	}
	.line-card__item{ width: 100%; }
}
@media (max-width:767px) {
	.line-list{ width:var(--content-width-sm); }
	.line-card__item a::after{ content: none; }
}


/* =================================================
	instagramページ
================================================= */
.instagram-list{
	width: var(--base-w);
	margin:0 auto;
}
.instagram-list__header{
	padding: 40px;
	background: var(--color-bg-base);
	border-radius: 16px;
}
.instagram-list__header h2{
	font-size: 3.2rem;
	line-height: 4rem;
	letter-spacing: var(--next-spacing-text);
}
.instagram-list__header div{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	font-weight: var(--font-medium);
	border-radius: 8px;
}
.instagram-list__header div p{
	margin-top: 10px;
	font-size: 1.4rem;
	line-height: inherit;
	letter-spacing: var(--next-spacing-text);
}
.instagram-card{
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.instagram-card__item{
	width: calc((100% - 20px) / 2);
	border-radius: 16px;
	border: 1px solid var(--color-border);
	overflow: hidden;
	box-shadow: var(--shadow-base);
}
.instagram-card__item a{
	min-height: 120px;
	padding: 20px;
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 20px;
	background: #fff;
	position: relative;
	transition: all .4s ease-out;
}
.instagram-card__item a::after {
	content: "\f061";
	width: 65px;
	height: 100%;
	border-left: 1px solid var(--color-border);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	color: var(--color-text-sub);
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: color .4s;
}
.instagram-card__item a .fa-instagram{
	color: var(--color-accent);
	font-size: 4rem;
	transition: color .4s;
}
.instagram-card__box h3{
	font-size: 2rem;
	line-height: 2.8rem;
	letter-spacing: var(--next-spacing-text);
	transition: color .4s;
}
.instagram-card__box dl{
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 10px;
}
.instagram-card__box dl dt{
	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.2rem;
	background: var(--color-bg-base);
}
.instagram-card__box dl dd{
	line-height: 1.6;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
	transition: color .4s;
}

@media (any-hover:hover) {
	.instagram-card__item a:hover{ background: var(--color-accent); }
	.instagram-card__item a:hover .fa-instagram{ color: #fff; }
	.instagram-card__item a:hover h3{ color: #fff; }
	.instagram-card__item a:hover dl dd{ color: #fff; }
	.instagram-card__item a:hover::after{ color: #fff; }
}
@media (max-width:1240px) {
	.instagram-list{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.instagram-list__header{ padding: 20px; }
	.instagram-list__header h2{
		font-size: 2.4rem;
		line-height: 3.6rem;
	}
	.instagram-card__item{ width: 100%; }
}
@media (max-width:767px) {
	.instagram-list{ width:var(--content-width-sm); }
	.instagram-card__item a::after{ content: none; }
}

/* =================================================
	フッターリンクページ
================================================= */
/*============// 共通見出し //============*/
.policy__title-h2{
	margin-bottom: 40px;
	display: flex;
	font-size: 2.4rem;
	letter-spacing: var(--next-spacing-text);
}
.policy__title-h2 span{
	min-width: 40px;
	color: var(--color-accent);
	font-family: var(--font-eng);
	font-size: 2.4rem;
}
.policy__title-h3{
	padding-left: 16px;
	font-size: 2rem;
	letter-spacing: var(--next-spacing-text);
	position: relative;
}
.policy__title-h3::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%);
}
@media screen and (max-width: 1024px) {
	.policy__title-h2{
		margin-bottom: 2.5rem;
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.policy__title-h2 span{ font-size: 2rem; }
	.policy__title-h3{
		font-size: 1.8rem;
		line-height: 2.8rem;
	}
}
/*============// サイトのご利用案内 //============*/
.use__content{
	padding-bottom: 40px;
	position:relative;
}
.use__block{
	width: var(--base-w);
	margin:0 auto;
	font-weight: var(--font-medium);
}
.use__section{ margin-top: 80px; }
.use__section-inner{ padding-left: 40px; }
.use__section:nth-of-type(1) .use__section-inner{ font-weight: var(--font-medium); }
.use__section:nth-of-type(1) .use__section-inner dl dt{
	margin-top: 20px;
	font-weight: var(--font-bold);
}
.use__section:nth-of-type(1) .use__section-inner dl dd ul li{
	position: relative;
	padding-left: 1em;
}
.use__section:nth-of-type(1) .use__section-inner dl dd ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.use__section:nth-of-type(1) .use__section-inner section{ margin-top: 40px; }
.use__section:nth-of-type(1) .use__section-inner section h3{ margin-bottom: 20px; }
.use__section:nth-of-type(2) .use__section-inner .Adobe_Reader-link{ margin-top: 20px; }
.use__section:nth-of-type(2) .use__section-inner .Adobe_Reader-link a:hover{ opacity: 0.7; }
.use__section:nth-of-type(3) .use__section-inner p + p{ margin-top: 20px; }
.use__section:nth-of-type(3) .use__section-inner .red{ color: var(--color-accent); }
.use__section:nth-of-type(4) .use__section-inner ul { margin-top: 20px; }
.use__section:nth-of-type(4) .use__section-inner ul li{
	position: relative;
	padding-left: 1em;
}
.use__section:nth-of-type(4) .use__section-inner ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
@media (max-width:1240px) {
	.use__block{ width:var(--content-width-med); }
}
@media screen and (max-width: 1024px) {
	.use__section{ margin-top: 40px; }
	.use__section:nth-of-type(1) .use__section-inner dl dt{ margin-top: 1.5rem; }
	.use__section:nth-of-type(1) .use__section-inner section{ margin-top: 2.5rem; }
	.use__section:nth-of-type(1) .use__section-inner section h3{ margin-bottom: 1.5rem; }
	.use__section:nth-of-type(2) .use__section-inner .Adobe_Reader-link{ margin-top: 1.5rem; }
	.use__section:nth-of-type(3) .use__section-inner p + p{ margin-top: 1.5rem; }
	.use__section:nth-of-type(4) .use__section-inner ul { margin-top: 1.5rem; }
}
@media (max-width:767px) {
	.use__block{ width:var(--content-width-sm); }
}
/*============// カスタマーハラスメントに対する基本方針 //============*/
.harassment__content{
	padding-bottom: 40px;
	position:relative;
}
.harassment__block{
	width: var(--base-w);
	margin:0 auto;
	font-weight: var(--font-medium);
}
.harassment__section + .harassment__section{ margin-top: 80px; }
.harassment__section-inner{ padding-left: 40px; }
.harassment__section:nth-of-type(3) .harassment__section-inner section + section{ margin-top: 40px; }
.harassment__section:nth-of-type(3) .harassment__section-inner section p{ margin-top: 20px; }
.harassment__section:nth-of-type(3) .harassment__section-inner section ol{
	margin-top: 20px;
	padding-left: 2em;
	counter-reset: listnum;
	position: relative;
}
.harassment__section:nth-of-type(3) .harassment__section-inner section ol > li + li{ margin-top: 16px; }
.harassment__section:nth-of-type(3) .harassment__section-inner section ol > li::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #665a52;
	font-size: 1.6rem;
	font-family: var(--font-eng);
	position: absolute;
	left: 0;
}
.harassment__section:nth-of-type(3) .harassment__section-inner section ol li ul li{
	position: relative;
	padding-left: 1em;
}
.harassment__section:nth-of-type(3) .harassment__section-inner section ol li ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.harassment__section:nth-of-type(4) .harassment__section-inner section{ margin-top: 40px; }
.harassment__section:nth-of-type(4) .harassment__section-inner section ul li{
	position: relative;
	padding-left: 1em;
}
.harassment__section:nth-of-type(4) .harassment__section-inner section ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.harassment__block .signature {
	margin-top: 80px;
	text-align: right;
}
.harassment__pdf-box{
	width: var(--base-w);
	margin:80px auto 0;
    min-height: 160px;
	padding: 20px;
	background: var(--color-bg-base);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
}
@media (max-width:1240px) {
	.harassment__block{ width:var(--content-width-med); }
	.harassment__pdf-box{ width:var(--content-width-med); }
}
@media screen and (max-width: 1024px) {
	.harassment__section + .harassment__section{ margin-top: 40px; }
	.harassment__section:nth-of-type(3) .harassment__section-inner section + section{ margin-top: 2.5rem; }
	.harassment__block .signature { margin-top: 40px; }
	.harassment__pdf-box { margin:40px auto 0; }
}
@media (max-width:767px) {
	.harassment__block{ width:var(--content-width-sm); }
	.harassment__pdf-box{ width:var(--content-width-sm); }
}
/*============// 個人情報保護方針 //============*/
.privacy__content{
	padding-bottom:
	40px; position:relative;
}
.privacy__block{
	width: var(--base-w);
	margin:0 auto;
	font-weight: var(--font-medium);
}
.privacy__section{ margin-top: 80px; }
.privacy__section-inner{ padding-left: 40px; }
.privacy__section:nth-of-type(2) .privacy__section-inner ul{ margin-top: 20px; }
.privacy__section:nth-of-type(2) .privacy__section-inner ul li{
	position: relative;
	padding-left: 1em;
}
.privacy__section:nth-of-type(2) .privacy__section-inner ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.privacy__section:nth-of-type(4) .privacy__section-inner ul{ margin-top: 20px; }
.privacy__section:nth-of-type(4) .privacy__section-inner ul li{
	position: relative;
	padding-left: 1em;
}
.privacy__section:nth-of-type(4) .privacy__section-inner ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.privacy__section:nth-of-type(5) .privacy__section-inner dl{ margin-top: 40px; }
.privacy__section:nth-of-type(5) .privacy__section-inner dl dt{
	margin-top: 20px;
	font-weight: var(--font-bold);
}
.privacy__section:nth-of-type(8) .privacy__section-inner dl{ margin-top: 40px; }
.privacy__section:nth-of-type(8) .privacy__section-inner dl dt{
	margin-top: 20px;
	font-weight: var(--font-bold);
}
.privacy__block .signature {
	margin-top: 80px;
	text-align: right;
}
@media (max-width:1240px) {
	.privacy__block{ width:var(--content-width-med); }
}
@media screen and (max-width: 1024px) {
	.privacy__section{ margin-top: 40px; }
	.multi-stakeholder__block .signature { margin-top: 40px; }
	.privacy__section:nth-of-type(2) .privacy__section-inner ul{ margin-top: 1.5rem; }
	.privacy__section:nth-of-type(4) .privacy__section-inner ul{ margin-top: 1.5rem; }
	.privacy__section:nth-of-type(5) .privacy__section-inner dl{ margin-top: 2.5rem; }
	.privacy__section:nth-of-type(5) .privacy__section-inner dl dt{ margin-top: 1.5rem; }
	.privacy__section:nth-of-type(8) .privacy__section-inner dl{ margin-top: 2.5rem; }
	.privacy__section:nth-of-type(8) .privacy__section-inner dl dt{ margin-top: 1.5rem; }
	.privacy__block .signature { margin-top: 40px; }
}
@media (max-width:767px) {
	.privacy__block{ width:var(--content-width-sm); }
}
/*============// マルチステークホルダー方針 //============*/
.multi-stakeholder__content{
	padding-bottom: 40px;
	position:relative;
}
.multi-stakeholder__block{
	width: var(--base-w);
	margin:0 auto;
	font-weight: var(--font-medium);
}
.multi-stakeholder__section{ margin-top: 80px; }
.multi-stakeholder__section-inner{ padding-left: 40px; }
.multi-stakeholder__section:nth-of-type(2) .multi-stakeholder__section-inner p + p{ margin-top: 20px; }
.multi-stakeholder__section:nth-of-type(2) .multi-stakeholder__section-inner .pdf-link a{
	padding-bottom: 6px;
	border-bottom: 1px solid var(--color-border);
	transition: color .4s;
}
.multi-stakeholder__section:nth-of-type(2) .multi-stakeholder__section-inner .pdf-link a::after {
	content: "\f35d";
	color: var(--color-accent);
	padding-left: 16px;
	font: var(--fa-font-solid);
}
.multi-stakeholder__section:nth-of-type(2) .multi-stakeholder__section-inner .pdf-link a:hover{ color: var(--color-accent); }
.multi-stakeholder__block .signature {
	margin-top: 80px;
	text-align: right;
}
@media (max-width:1240px) {
	.multi-stakeholder__block{ width:var(--content-width-med); }
}
@media screen and (max-width: 1024px) {
	.multi-stakeholder__section{ margin-top: 40px; }
	.multi-stakeholder__block .signature { margin-top: 40px; }
}
@media (max-width:767px) {
	.multi-stakeholder__block{ width:var(--content-width-sm); }
}
/*============// メグリア健康宣言 //============*/
.health-declaration__content{
	padding-bottom: 40px;
	position:relative;
}
.health-declaration__block{
	width: var(--base-w);
	margin:0 auto;
	font-weight: var(--font-medium);
}
.health-declaration__section{ margin-top: 80px; }
.health-declaration__section h2{
	margin-bottom: 40px;
	text-align: center;
	font-size: 2.4rem;
	letter-spacing: var(--next-spacing-text);
}
.health-declaration__section:nth-of-type(1){
	padding: 40px;
	background: var(--color-bg-base);
	border-radius: 16px;
}
.health-declaration__section:nth-of-type(1) dl{ margin: 40px 0; }
.health-declaration__section:nth-of-type(1) dl dt{ font-weight: var(--font-bold); }
.health-declaration__section:nth-of-type(1) dl dd ul > li{
	position: relative;
	padding-left: 1em;
}
.health-declaration__section:nth-of-type(1) dl dd ul > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.8em;
	width: 4px;
	height: 4px;
	background-color: #665a52;
	border-radius: 50%;
}
.health-declaration__section:nth-of-type(1) dl dd ul > li + li{ margin-top: 20px; }
.health-declaration__section:nth-of-type(1) dl dd ul li ol{
	padding-left: 2em;
	counter-reset: listnum;
	position: relative;
}
.health-declaration__section:nth-of-type(1) dl dd ul li ol > li::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #665a52;
	font-size: 1.6rem;
	font-family: var(--font-eng);
	position: absolute;
	left: 0;
}
.health-declaration__section:nth-of-type(1) .signature{
	margin-top: 40px;
	text-align: right;
}
.health-declaration__section:nth-of-type(n+2):nth-of-type(-n+6) {
	padding: 40px;
	background: var(--color-bg-base2);
	border-radius: 16px;
	border-width: 10px;
	border-style: solid;
	border-color: var(--color-bg-base);
}
.health-declaration__section:nth-of-type(4) .image{
	max-width: 640px;
	margin: auto;
	text-align: center;
}
.health-declaration__section:nth-of-type(4) .image img{ border-radius: 16px; }
.health-declaration__section:nth-of-type(4) p + p{
	margin-top: 20px;
	text-align: center;
}
.health-declaration__section:nth-of-type(5) .image{
	max-width: 640px;
	margin: auto;
	text-align: center;
}
.health-declaration__section:nth-of-type(5) .image img{ border-radius: 16px; }
.health-declaration__section:nth-of-type(5) p + p{
	margin-top: 20px;
	text-align: center;
}
.health-declaration__section:nth-of-type(6) section + section{ margin-top: 40px; }
.health-declaration__section:nth-of-type(6) section p{ margin-top: 20px; }
.health-declaration__section:nth-of-type(6) section dl div{ margin-top: 40px; }
.health-declaration__section:nth-of-type(6) section dl div dt{ font-weight: var(--font-bold); }
.health-declaration__section:nth-of-type(6) section dl div > dd{ margin-top: 10px; }
.health-declaration__section:nth-of-type(6) section dl div .table-scroll {
	width: 100%;
	overflow-x: auto;
}
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	overflow: hidden; /* 中の要素を角に合わせて切り抜く */
	border: 1px solid var(--color-border);
	font-size: 14px;
}
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 th,
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 td {
	padding: 12px 16px;
	border-bottom: 1px solid var(--color-border);
	border-right: 1px solid var(--color-border);
	text-align: center;
}
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 th:last-child ,
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 td:last-child { border-right: none; }
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 tr:last-child th ,
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 tr:last-child td { border-bottom: none; }

.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 th {
	background-color: #ffe9dc;
	font-weight: bold;
}
.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 th:first-child {
	color: #fff;
	background-color: var(--color-accent);
	width: 240px;
}
.health-declaration__section:nth-of-type(6) section dl div:nth-of-type(4) dd img{ width: 40px; }
.health-declaration__section:nth-of-type(6) section dl div:nth-of-type(4) dd .table_type-01 th{
	color: #fff;
	background-color: var(--color-accent);
}

.health-declaration__section:nth-of-type(6) section:nth-of-type(3) ol{
	padding-left: 2em;
	counter-reset: listnum;
	position: relative;
}
.health-declaration__section:nth-of-type(6) section:nth-of-type(3) ol li{margin-top: 16px; }
.health-declaration__section:nth-of-type(6) section:nth-of-type(3) ol > li::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #665a52;
	font-size: 1.6rem;
	font-family: var(--font-eng);
	position: absolute;
	left: 0;
}
.health-declaration__section:nth-of-type(6) section:nth-of-type(4) dl dt{
	margin-top: 16px;
	font-weight: var(--font-bold);
} 
.health-declaration__block .KK_Yuryo{
	margin-top: 80px;
	border-radius: 16px;
    border: 1px solid var(--color-border);
    background: #fff;
    overflow: hidden;
    box-shadow: var(--shadow-base);
    position: relative;
}
.health-declaration__block .KK_Yuryo a{
	padding: 20px 40px;
    display: flex;
	align-items: center;
	justify-content: center;
    gap: 20px 30px;
	font-weight: var(--font-bold);
	font-size: 2.4rem;
    position: relative;
	transition: opacity .4s;
}
.health-declaration__block .KK_Yuryo a img{ width: 120px; }
.health-declaration__block .KK_Yuryo a:hover{ opacity: 0.7; }
@media (max-width:1240px) {
	.health-declaration__block{ width:var(--content-width-med); }
}
@media screen and (max-width: 1024px) {
	.health-declaration__section h2{
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.health-declaration__section{ margin-top: 40px; }
	.health-declaration__section:nth-of-type(1){ padding: 20px; }
	.health-declaration__section:nth-of-type(n+2):nth-of-type(-n+6) { padding: 20px; }
	.health-declaration__section:nth-of-type(6) section dl div > dd .table_type-01 { min-width: 800px; }
	.health-declaration__block .KK_Yuryo{ margin-top: 40px; }
	.health-declaration__block .KK_Yuryo a{
		padding: 20px;
		font-size: 2rem;
		line-height: 3.2rem;
	}
	.health-declaration__block .KK_Yuryo a img{ width: 80px; }
}
@media (max-width:767px) {
	.health-declaration__block{ width:var(--content-width-sm); }
}
/*============// おすすめリンク //============*/
.link__block{
	width: var(--base-w);
	margin:0 auto;
}
.link__list{
	margin-bottom: 120px;
	display:flex;
	justify-content: space-between;
}
.link__list .section-title{width:320px;min-width: 20%;}
.link__list ul{width:calc(100% - 320px);min-width: 75%;}
.link__list ul li{
	padding: 15px 0;
	border-top: 1px solid var(--color-border);
	position: relative;
}
.link__list ul li:last-child { border-bottom: 1px solid var(--color-border); }
.link__list ul li a{
    width: 100%;
    padding-right: 20px;
    display: block;
	transition: color .4s;
}
.link__list ul li a::after {
    content: "\f35d";
    color: var(--color-text-sub);
    font: var(--fa-font-solid);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: color .4s;
}
.link__list ul li a:hover{ color: var(--color-accent); }
.link__list ul li a:hover::after{ color: var(--color-accent); }
.link__notice{
	width: var(--base-w);
	margin:0 auto;
}
.link__notice p{
	font-size: 1.4rem;
}
@media (max-width:1240px) {
	.link__block{ width:var(--content-width-med); }
}
@media (max-width:1024px) {
	.link__list{
		flex-direction: column;
		margin-bottom: 6rem;
	}
	.link__list .section-title{width:100%;}
	.link__list ul{
		width:100%;
		margin-top: 2.5rem;
	}
}
@media (max-width:767px) {
	.link__block{ width:var(--content-width-sm); }
}
/* =================================================
	LPページ共通
================================================= */
.lp__area{
	width: 640px;
	margin:0 auto;
}
.lp__area img{
	width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 16px;
    box-shadow: var(--next-card-shadow);
}
@media (max-width:767px) {
	.lp__area{ width:var(--content-width-sm); }
	.lp__area img{ border-radius: 8px; }
}

