@charset "UTF-8";

/* ====================================
	カルスポトップ culspo
==================================== */

.culspo{
	background: var(--color-bg-base2);
}
.culspo .breadcrumb{
	margin-top: 20px;
}
.culspo .page-title__en,
.culspo .breadcrumb__link:hover,
.culspo .breadcrumb__item:last-of-type,
.culspo .page-nav__link:before,
.culspo .page-nav__link:hover,
.culspo .section-title__en:not(.culspo-instructor__en){
	color: #f25e5a;
}
.culspo-flex{
	display: flex;
	flex-direction: column;
	gap: 20px 0;
}
@media (min-width: 1025px) {
	.culspo-subtitle{
		font-size: 2.4rem;
	}
	.culspo-flex{
		flex-direction: row;
		justify-content: space-between;
	}
	.culspo-flex__top{
		width: 440px;
	}
	.culspo-flex__bottom{
		flex: 1;
	}
}

/* fv */

.culspo-title{
	padding: 60px 0 20px;
	display: flex;
	flex-direction: column;
	gap: 0 80px;
	background: var(--color-bg-base2);
}
.culspo-title__top{
	width: var(--base-w);
	margin: 0 auto;
}
.culspo-logo__image{
	width: 100%;
	height: auto;
}
.culspo-title__catch{
	margin-top: 40px;
	font-size: 2rem;
	font-weight: var(--font-bold);
}
.culspo-title__color{
	color: #f25e5a;
	font-size: 2.8rem;
}
.culspo-title__text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
.culspo-title__link{
	width: fit-content;
	margin-top: 30px;
	padding: 15px 80px 15px 25px;
	border-radius: 10px;
	display: flex;
	color: #fff;
	background: #f25e5a;
	position: relative;
}
.culspo-title__arrow{
	color: #f25e5a;
	background: #fff;
	right: 20px;
}
.culspo-title__bottom{
	width: var(--base-w);
	margin: 40px auto 0;
}
.culspo-title__image{
	width: 100%;
	height: auto;
	border-radius: 15px;
	overflow: hidden;
}
@media (min-width: 1025px) {
	.culspo-title{
		width: var(--base-w);
		max-width:calc(100% - 40px);
		margin: 0 auto;
		padding-top: 0;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.culspo-title .breadcrumb{
		width: 100%;
		padding: 0 0 20px;
	}
	.culspo-title__top{
		max-width: 600px;
		margin-top: 150px;
		flex: 1;
	}
	.culspo-logo__image{
		max-width: 561px;
		margin: 0;
	}
	.culspo-title__bottom{
		width: 480px;
	}
	.culspo-title__catch{
		margin-top: 70px;
		font-size: 3.2rem;
	}
	.culspo-title__color{
		font-size: 4rem;
	}
	.culspo-title__link{
		margin-top: 60px;
		transition: color .4s , background .4s;
	}
}
@media (any-hover: hover) {
	.culspo-title__link:hover{
		color: #f25e5a;
		background: #fff;
	}
	.culspo-title__link:hover .culspo-title__arrow::before {
		animation-name: transformTopBottom;
		animation-delay: 0s;
	}
	.culspo-title__link:hover .culspo-title__arrow::after {
		animation-name: transformBottomTop;
		animation-delay: 0.1s;
	}
	@keyframes transformTopBottom {
		0% {
		 transform: translateY(-100%);
		}
		100% {
		transform: translateY(0);
		}
	}
	@keyframes transformBottomTop {
		0% {
		 transform: translateY(0);
		}
		100% {
		transform: translateY(100%);
		}
	}
}


/* 今週のチラシ・講座カレンダー */
.culspo-card{
	display: flex;
	flex-direction: column;
	gap: 15px 40px;
}
.culspo-card__item{
	width: var(--base-w);
	margin: 0 auto;
	min-height: 160px;
	border-radius: 15px;
	border-width: 10px;
	border-style: solid;
	display: flex;
	justify-content: space-between;
	gap: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
	transition: background .4s;
}
.culspo-flyer{
	border-color: #e6443e;
	background: #f25e5a;
}
.culspo-calendar{
	border-color: #f25e5a;
}
.culspo-card__en{
	width: 100%;
	display: flex;
	align-items: center;
	gap: 10px;
	color: #fff;
	font-family: var(--font-eng);
	font-size: 1.2rem;
	transition: color .4s;
}
.culspo-calendar__icon{
	color: #f25e5a;
}
.culspo-card__en::before{
	font: var(--fa-font-solid);
}
.culspo-flyer__icon::before{
	content: "\f1ea";
}
.culspo-calendar__icon::before{
	content: "\f133";
}
.culspo-card__link{
	width: 100%;
	padding: 15px;
	color: #fff;
	position: relative;
	transition: color .4s;
}
.culspo-calendar__link{
	color: #f25e5a;
}
.culspo-card__title{
	padding: 20px 0 15px 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	line-height: 1.4;
	font-size: 2.6rem;
	font-weight: var(--font-semibold);
}
.culspo-card__text{
	font-size: 1.8rem;
}
.culspo-card__arrow{
	width: 50px;
	height: 50px;
	right: 20px;
}
.culspo-card__arrow::before,
.culspo-card__arrow::after{
	width: 50px;
	height: 50px;
	font-size: 1.8rem;
}
.culspo-flyer__arrow{
	color: #f25e5a;
	background: #fff;
}
.culspo-flyer__arrow::before{
	color: #f25e5a;
}
.culspo-calendar__arrow{
	color: #fff;
	background: #f25e5a;
}
.culspo-calendar__arrow::before{
	color: #fff;
}
@media (min-width: 1025px) {
	.culspo-card{
		width: var(--base-w);
		max-width:calc(100% - 40px);
		margin: 0 auto;
		flex-direction: row;
	}
	.culspo-card__en{
		font-size: 1.6rem;
	}
	.culspo-card__title{
		font-size: 4rem;
	}
	.culspo-card__text{
		font-size: 2rem;
	}
	.culspo-card__arrow{
		width: 65px;
		height: 65px;
		right: 40px;
	}
	.culspo-card__arrow::before,
	.culspo-card__arrow::after{
		width: 65px;
		height: 65px;
		font-size: 2rem;
	}
}
@media (any-hover: hover) {
	.culspo-flyer:hover{
		background: #fff;
	}
	.culspo-flyer:hover .culspo-card__link,
	.culspo-flyer:hover .culspo-card__en{
		color: #f25e5a;
	}
	.culspo-calendar:hover{
		background: #f25e5a;
	}
	.culspo-calendar:hover .culspo-card__link,
	.culspo-calendar:hover .culspo-card__en{
		color: #fff;
	}
	.culspo-card__item:hover .culspo-card__arrow::before {
		animation-name: transformRightLeft;
		animation-delay: 0s;
	}
	.culspo-card__item:hover .culspo-card__arrow::after {
		animation-name: transformLeftRight;
		animation-delay: 0.1s;
	}
}

/* 施設一覧 */

.culspo-facilities{
	width: var(--base-w);
	margin: 60px auto 0;
}
.culspo-facilities__list{
	margin-top: 30px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.culspo-facilities__item{
	padding: 20px 0;
	border-radius: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.culspo-facilities__image{
	width: calc(100% - 40px);
	height: auto;
	margin: 0 auto 20px;
	border-radius: 10px;
	display: block;
	overflow: hidden;
}
.culspo-facilities__name{
	padding: 0 20px 20px;
	line-height: 1.4;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
	border-bottom: 1px solid var(--color-border);
}
.culspo-facilities__detail{
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.culspo-facilities__detail:last-of-type{
	margin-bottom: 30px;
}
.culspo-facilities__title {
	color: #f25e5a;
}
.culspo-facilities__icon {
	margin-right: 10px;
}
.culspo-facilities__desc {
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.culspo__maplink a {
	width: fit-content;
	margin-top: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--color-text);
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 1.4rem;
	position: relative;
	transition: color .4s, border .4s;
}
.culspo__maplink a::after {
	content: "\f35d";
	color: #f25e5a;
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: -25px;
	transform: translateY(-50%);
}
.culspo-facilities__link{
	width: calc(100% - 40px);
	margin: 30px 20px;
	padding: 10px;
	border-radius: 10px;
	border: 1px solid #f25e5a;
	display: flex;
	justify-content: center;
	color: #fff;
	background: #f25e5a;
}
.culspo-facilities__map{
	margin: 0 20px;
	aspect-ratio: 3 / 2;
	border-radius: 10px;
	border: 1px solid var(--color-border);
	overflow: hidden;
}
.culspo-facilities__map p,
.culspo-facilities__map iframe{
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 680px) {
	.culspo-facilities__list{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.culspo-facilities__item {
		width: calc(50% - 10px);
	}
}
@media (min-width: 1025px) {
	.culspo-facilities{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
	.culspo-facilities__list{
		margin-top: 40px;
	}
	.culspo-facilities__item{
		padding: 40px 0;
	}
	.culspo-facilities__image{
		width: calc(100% - 80px);
		margin: 0 auto 30px;
	}
	.culspo-facilities__name{
		padding: 0 40px 30px;
		font-size: 2rem;
	}
	.culspo-facilities__detail{
		margin: 0 40px;
		flex-direction: row;
	}
	.culspo-facilities__detail:last-of-type{
		margin-bottom: 30px;
	}
	.culspo-facilities__title{
		width: 150px;
	}
	.culspo-facilities__desc {
		flex: 1;
		font-size: 1.6rem;
	}
	.culspo-facilities__link{
		width: calc(100% - 80px);
		margin: 40px auto;
		transition: color .4s, background .4s;
	}
	.culspo__maplink a {
		font-size: 1.6rem;
	}
	.culspo-facilities__map{
		margin: 0 40px;
	}
}
@media (any-hover: hover) {
	.culspo__maplink a:hover{
		color: #f25e5a;
		border-color: #f25e5a;
	}
	.culspo-facilities__link:hover{
		color: #f25e5a;
		background: #fff;
	}
}

/* お申し込み手続き */
.culspo-application{
	width: var(--base-w);
	margin: 60px auto 0;
}
.culspo-faq{
	display: flex;
	flex-direction: column;
	gap: 20px 0;
}
.culspo-faq__item{
	padding: 20px;
	border-radius: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.culspo-faq__title{
	padding: 0 0 15px 60px;
	color: #f25e5a;
	border-bottom: 1px solid var(--color-border);
	font-size: 1.8rem;
	position: relative;
}
.culspo-faq__title::before{
	content: "Q";
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	color: #fff;
	font-size: 2.4rem;
	font-family: "Plus Jakarta Sans";
	font-weight: var(--font-bold);
	background: #f25e5a;
	position: absolute;
	top: -2px;
	left: 0;
}
.culspo-faq__desc{
	margin-top: 20px;
	padding-left: 60px;
	font-weight: var(--font-medium);
	font-size: 1.4rem;
	position: relative;
}
.culspo-faq__desc::before{
	content: "A";
	color: #f25e5a;
	line-height: 1;
	font-family: "Plus Jakarta Sans";
	font-size: 2.4rem;
	font-weight: var(--font-bold);
	position: absolute;
	top: 0;
	left: 10px;
}
.culspo-apply{
	margin-top: 20px;
	padding: 20px;
	border-radius: 10px;
	background: #f25e5a;
	box-shadow: var(--shadow-base);
}
.culspo-apply__subttitle{
	color: #fff;
	text-align: center;
	font-size: 2rem;
	font-weight: var(--font-semibold);
}
.culspo-apply__list{
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.culspo-apply__item{
	padding: 8px 10px 10px;
	border-radius: 10px;
	background: #fff;
}
.culspo-apply__title{
	width: 100%;
	margin: 0 auto;
	padding: 2px 20px;
	border-radius: 100vmax;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: var(--font-semibold);
	background: #f25e5a;
}
.culspo-apply__desc{
	margin-top: 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.culspo-apply__tel{
	color: #f25e5a;
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--font-eng);
	font-size: 2.4rem;
}
.culspo-apply__tel::before{
	content: "\f095";
	color: #f25e5a;
	font: var(--fa-font-solid);
	font-size: 1.4rem;
}
.culspo-apply__reception{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.culspo-apply__note{
	margin-top: 10px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
@media (min-width: 1025px) {
	.culspo-application{
		max-width:calc(100% - 40px);
		margin-top: 120px;
	}
	.culspo-faq__item{
		padding: 20px 20px 30px;
	}
	.culspo-faq__title{
		padding-bottom: 20px;
		font-size: 2.4rem;
	}
	.culspo-faq__desc{
		font-size: 1.6rem;
	}
	.culspo-apply__subttitle{
		font-size: 2.4rem;
	}
	.culspo-apply__list{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.culspo-apply__item{
		width: calc(50% - 10px);
	}
}

/* 受講の決まり */
.culspo-guidelines__flex{
	width: var(--base-w);
	margin: 60px auto 0;
}
.culspo-guidelines__list{
	display: flex;
	flex-direction: column;
	gap: 30px;
}
.culspo-guidelines__item{
	padding-left: 40px;
	font-weight: var(--font-medium);
	position: relative;
}
.culspo-guidelines__item::before{
	content: "\f00c";
	width: 24px;
	height: 24px;
	border-radius: 5px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font: var(--fa-font-solid);
	font-size: 1.4rem;
	background: #f25e5a;
	position: absolute;
	top: 2px;
	left: 0;
}
@media (min-width: 1025px) {
	.culspo-guidelines{
		margin-top: 120px;
		padding-bottom: 80px;
	}
	.culspo-guidelines__flex{
		max-width:calc(100% - 40px);
	}
	.culspo-guidelines__list{
		padding-left: 20px;
	}
}

/*講師募集*/
.culspo-instructor{
	padding: 120px 0;
	background: #f25e5a;
}
.culspo-instructor.u-rounded-top::before{
	top: auto;
	bottom: 0;
}
.culspo-instructor__inner{
	width: var(--base-w);
	margin: 0 auto;
}
.culspo-instructor__flex{
	color: #fff;
	gap: 70px;
}
.culspo-instructor__title,
.culspo-instructor__en{
	color: #fff;
}
.culspo-instructor__en{
	font-size: 4.4rem;
	line-height: 1.2;
}
.culspo-instructor__text{
	margin-top: 40px;
	font-weight: var(--font-medium);
}
.culspo-instructor__image{
	width: 100%;
	height: auto;
}
.culspo-recruiting{
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #fff;
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.culspo-recruiting__top,
.culspo-recruiting__bottom{
	padding: 30px 20px;
	border-radius: 10px;
	outline: 10px solid #f25e5a;
	background: #fff;
	box-shadow: 0px 0px 40px 10px rgba(102, 90, 82, .2);
}
.culspo-recruiting__list{
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.culspo-recruiting__item{
	padding: 15px;
	border-radius: 10px;
	color: #fff;
	display: flex;
	align-items: center;
	gap: 15px;
	font-weight: var(--font-medium);
	background: #f25e5a;
}
.culspo-recruiting__item::before{
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 100vmax;
	background: #fff;
}
.culspo-contact{
	margin-top: 50px;
	padding-top: 40px;
	border-top: 1px solid #fff;
}
.culspo-contact__title{
	color: #fff;
	font-size: 2.4rem;
	font-weight: var(--font-semibold);
}
.culspo-contact__text{
	color: #fff;
	font-weight: var(--font-medium);
}
.culspo-contact__wrapper{
	margin-top: 40px;
	padding: 30px 20px;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 15px  40px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.culspo-contact__tel{
	color: #f25e5a;
	display: flex;
	align-items: flex-end;
	gap: 10px;
	line-height: 1;
	font-family: var(--font-eng);
	font-size: 2rem;
}
.culspo-contact__tellink{
	color: #f25e5a;
	font-size: 3.2rem;
}
.culspo-contact__desc{
	padding-top: 15px;
	border-top: 1px solid var(--color-border);
	line-height: 1.5;
	font-size: 1.4rem;
}
.culspo-contact__small{
	display: block;
	font-weight: var(--font-medium);
	font-size: 1.2rem;
}
@media (min-width: 1025px) {
	.culspo-instructor{
		padding: 160px 0;
	}
	.culspo-instructor__inner{
		max-width:calc(100% - 40px);
	}
	.culspo-instructor__top{
		max-width: 490px;
		flex: 1;
	}
	.culspo-instructor__en{
		font-size: 6.4rem;
	}
	.culspo-instructor__text{
		margin-top: 70px;
	}
	.culspo-recruiting{
		flex-direction: row;
	}
	.culspo-recruiting__top,
	.culspo-recruiting__bottom{
		width: calc(50% - 20px);
		padding: 40px;
	}
	.culspo-recruiting__list{
		margin-top: 40px;
	}
	.culspo-contact{
		padding-top: 70px;
	}
	.culspo-contact__title{
		text-align: center;
		font-size: 3.2rem;
	}
	.culspo-contact__text{
		margin-top: 40px;
		text-align: center;
	}
	.culspo-contact__wrapper{
		width: fit-content;
		margin: 40px auto 0;
		padding: 30px 80px;
		border-radius: 100vmax;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}
	.culspo-contact__tel{
		font-size: 2.4rem;
	}
	.culspo-contact__tellink{
		font-size: 4rem;
	}
	.culspo-contact__desc{
		padding: 0 0 0 40px;
		border-top: none;
		border-left: 1px solid var(--color-border);
		font-size: 1.6rem;
	}
	.culspo-contact__small{
		font-size: 1.4rem;
	}
}


/* ====================================
	カルスポ講座一覧 course
==================================== */
.course-inner{
	width: var(--base-w);
	margin: 0 auto;
	padding-bottom: 80px;
}
.course-header{
	padding-bottom: 20px;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 0 20px;
}
.course-header__title{
	font-size: 2.4rem;
	font-weight: var(--font-semibold);
}
.course-header__en{
	color: var(--color-text-sub);
	font-size: 1.4rem;
	font-family: var(--font-eng);
}
.course-nav{
	margin-top: 40px;
	padding: 20px;
	border-radius: 20px;
	background: var(--color-bg-base);
}
.course-nav .page-nav{
	margin: 0;
}
.course-list__title{
	margin-top: 60px;
	padding: 20px;
	border-radius: 15px;
	color: #fff;
	font-size: 2rem;
	font-weight: var(--font-semibold);
	background: #f25e5a;
}
.course-list__list{
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	gap: 40px 20px;
}
.course-list__item{
	padding: 20px 0;
	border-radius: 15px;
	box-shadow: var(--shadow-base);
	background: #fff;
}
.course-list__label{
	width: fit-content;
	margin: 0 20px 15px 20px;
	padding: 2px 20px;
	border-radius: 100vmax;
	color: #fff;
	font-size: 1.2rem;
	background: #f25e5a;
}
.course-list__name{
	padding: 0 20px 20px;
	line-height: 1.4;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
	border-bottom: 1px solid var(--color-border);
}
.course-list__comment {
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	line-height: 1.6;
	font-weight: var(--font-medium);
	font-size: 1.4rem;
}
.course-list__detail{
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.course-list__icon{
	color: #f25e5a;
}
.course-list__desc {
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
@media screen and (min-width: 680px) and (max-width: 1024px) {
	.course-list__list{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.course-list__item {
		width: calc(50% - 10px);
	}
}
@media (min-width: 1025px) {
	.course-header{
		line-height: 1;
		align-items: flex-end;
		flex-direction: row;
	}
	.course-header__title{
		font-size: 3.2rem;
		font-weight: var(--font-semibold);
	}
	.course-header__en{
		font-size: 1.6rem;
	}
	.course-nav{
		margin-top: 60px;
		padding: 30px 40px;
	}
	.course-list__title{
		margin-top: 80px;
		font-size: 2.4rem;
	}
	.course-list__list{
		flex-direction: row;
		flex-wrap: wrap;
		gap: 40px;
	}
	.course-list__item{
		width: calc(100% / 3 - 27px);
	}
	.course-list__name{
		font-size: 2rem;
	}
	.course-list__comment {
		font-size: 1.6rem;
	}
	.course-list__detail{
		flex-direction: row;
	}
	.course-list__icon{
		width: 110px;
	}
	.course-list__desc {
		flex: 1;
		font-size: 1.6rem;
	}
}

/* ====================================
	調剤薬局 phamacy
==================================== */

.section-title{
	font-weight: var(--font-semibold);
}
.pharmacy-subtitle{
	color: var(--color-accent);
	line-height: 1.7;
	font-size: 2rem;
	font-weight: var(--font-semibold);
}
.pharmacy-subtitle--center{
	padding: 30px 0;
	text-align: center;
}
.pharmacy-flex{
	margin-top: 30px;
	padding-top: 30px;
	display: flex;
	flex-direction: column;
	gap: 40px 0;
	border-top: 1px solid var(--color-border);
}
.pharmacy-flex__text{
	margin-top: 20px;
	line-height: 2;
	font-weight: var(--font-medium);
}
.pharmacy-flex__image{
	margin-left: auto;
	display: block;
}
.pharmacy-wrapper{
	border-radius: 15px;
	box-shadow: var(--shadow-base);
	background: #fff;
}
@media (min-width: 1025px) {
	.pharmacy-subtitle{
		font-size: 2.4rem;
	}
	.pharmacy-flex{
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}
	.pharmacy-flex__top{
		width: 600px;
	}
	.pharmacy-flex__bottom{
		width: fit-content;
	}
}
/* メグリア調剤薬局について */

.pharmacy-about{
	width: var(--base-w);
	margin: 0 auto;
}
.pharmacy-about__image{
	width: 100%;
	height: auto;
	margin-top: 30px;
	border-radius: 15px;
	overflow: hidden;
}
.pharmacy-about__flex{
	padding-top: 0;
	border-top: none;
}
@media (min-width: 1025px) {
	.pharmacy-about{
		max-width:calc(100% - 40px);
	}
	.pharmacy-about__flex{
		margin-top: 40px;
		padding-top: 0;
	}
	.pharmacy-about__title{
		width: 400px;
	}
	.pharmacy-about__text{
		flex: 1;
	}
}

/* 店舗一覧 */

.pharmacy-store{
	width: var(--base-w);
	margin: 80px auto 0;
}
.pharmacy-store__list{
	margin-top: 30px;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 20px;
}
.pharmacy-store__item{
	padding: 20px 0;
	border-radius: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.pharmacy-store__image{
	width: calc(100% - 40px);
	height: auto;
	margin: 0 auto 20px;
	border-radius: 10px;
	display: block;
	overflow: hidden;
}
.pharmacy-store__comment{
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	font-weight: var(--font-meium);
	font-size: 1.4rem;
}
.pharmacy-store__name{
	padding: 0 20px 20px;
	line-height: 1.4;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
	border-bottom: 1px solid var(--color-border);
}
.pharmacy-store__detail{
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.pharmacy-store__detail:last-of-type{
	margin-bottom: 30px;
}
.pharmacy-store__title {
	color: var(--color-accent);
}
.pharmacy-store__icon {
	margin-right: 10px;
}
.pharmacy-store__desc {
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.pharmacy__maplink a {
	width: fit-content;
	margin-top: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--color-text);
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 1.4rem;
	position: relative;
	transition: color .4s, border .4s;
}
.pharmacy__maplink a::after {
	content: "\f35d";
	color: var(--color-accent);
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: -25px;
	transform: translateY(-50%);
}
.pharmacy-store__map{
	margin: 0 20px;
	aspect-ratio: 3 / 2;
	border-radius: 10px;
	border: 1px solid var(--color-border);
	overflow: hidden;
}
.pharmacy-store__map p,
.pharmacy-store__map iframe{
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 680px) {
	.pharmacy-store__list{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.pharmacy-store__item {
		width: calc(50% - 10px);
	}
}
@media (min-width: 1025px) {
	.pharmacy-store{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
	.pharmacy-store__list{
		margin-top: 40px;
	}
	.pharmacy-store__item{
		padding: 40px 0;
	}
	.pharmacy-store__image{
		width: calc(100% - 80px);
		margin: 0 auto 30px;
	}
	.pharmacy-store__name{
		padding: 0 40px 30px;
		font-size: 2rem;
	}
	.pharmacy-store__comment{
		margin: 0 40px;
		font-size: 1.6rem;
	}
	.pharmacy-store__detail{
		margin: 0 40px;
		flex-direction: row;
	}
	.pharmacy-store__detail:last-of-type{
		margin-bottom: 30px;
	}
	.pharmacy-store__title{
		width: 150px;
	}
	.pharmacy-store__desc {
		flex: 1;
		font-size: 1.6rem;
	}
	.pharmacy__maplink a {
		font-size: 1.6rem;
	}
	.pharmacy-store__map{
		margin: 0 40px;
	}
}
@media (any-hover: hover) {
	.pharmacy__maplink a:hover{
		color: var(--color-accent);
		border-color: var(--color-accent);
	}
}

/* かかりつけ薬局 */
.pharmacy-family{
	width: var(--base-w);
	margin: 80px auto 0;
}

@media (min-width: 1025px) {
	.pharmacy-family{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
}

/* お薬手帳 */

.pharmacy-book{
	width: var(--base-w);
	margin: 80px auto 0;
}
.pharmacy-book__wrapper{
	margin-top: 40px;
}
.pharmacy-book__list{
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pharmacy-book__item{
	padding: 20px;
	border-radius: 10px;
	background: var(--color-bg-base);
}
.pharmacy-book__label{
	width: fit-content;
	margin: 0 auto;
	padding: 2px 20px;
	border-radius: 100vmax;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: var(--font-semibold);
	background: var(--color-accent);
}
.pharmacy-book__desc{
	margin-top: 20px;
	font-weight: var(--font-medium);
}
.pharmacy-usage{
	margin-top: 40px;
	padding-bottom: 30px;
	border-top: 1px solid var(--color-border);
}
.pharmacy-usage__list{
	margin: 0 auto;
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}
.pharmacy-usage__item{
	width: 100%;
	padding: 15px 20px 15px 80px;
	border-radius: 10px;
	background: var(--color-bg-base);
	position: relative;
}
.pharmacy-usage__item:not(:first-child)::before{
	content: "\f0d7";
	color: var(--color-accent);
	font: var(--fa-font-solid);
	position: absolute;
	top: -25px;
	left: 18px;
}
.pharmacy-usage__label{
	width: 64px;
	height: 64px;
	border-radius: 100vmax;
	color: #fff;
	display: flex;
	justify-content: center;
	flex-direction: column;
	line-height: 1.4;
	text-align: center;
	font-size: 1.2rem;
	font-family: var(--font-eng);
	background: var(--color-accent);
	position: absolute;
	top: 50%;
	left: -10px;
	transform: translateY(-50%);
}
.pharmacy-usage__num{
	display: block;
	font-size: 1.8rem;
}
.pharmacy-usage__desc{
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
@media (min-width: 1025px) {
	.pharmacy-book{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
	.pharmacy-book__list{
		padding: 0 40px;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.pharmacy-book__item{
		width: calc(50% - 10px);
		padding: 20px 30px;
	}
	.pharmacy-usage{
		padding-bottom: 40px;
	}
	.pharmacy-usage__list{
		width: 800px;
	}
	.pharmacy-usage__label{
		font-size: 1.4rem;
	}
	.pharmacy-usage__num{
		font-size: 2rem;
	}
	.pharmacy-usage__desc{
		font-size: 1.6rem;
	}
}

/* マイナ保険証 */

.pharmacy-mynumber{
	width: var(--base-w);
	margin: 80px auto 0;
}
.pharmacy-mynumber__list{
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.pharmacy-mynumber__item{
	padding: 20px 20px 30px;
	border-radius: 15px;
	text-align: center;
	box-shadow: var(--shadow-base);
	background: #fff;
}
.pharmacy-mynumber__label{
	width: fit-content;
	padding: 5px 20px;
	border-radius: 10px;
	display: flex;
	color: #fff;
	font-family: var(--font-eng);
	font-weight: var(--font-semibold);
	background: var(--color-accent);
}
.pharmacy-mynumber__desc{
	margin-top: 10px;
	line-height: 1.6;
	font-weight: var(--font-medium);
}
.pharmacy-mynumber__underbar{
	font-size: 2rem;
	font-weight: var(--font-medium);
	background: linear-gradient(to bottom, transparent 0, transparent calc(100% - 10px), #ffe68f calc(100% - 10px), #ffe68f 100%);
}
.pharmacy-mynumber__subdesc{
	margin-top: 10px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.pharmacy-mynumber__color{
	color: var(--color-accent);
}

@media (min-width: 1025px) {
	.pharmacy-mynumber{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
	.pharmacy-mynumber__top{
		width: 420px;
	}
	.pharmacy-mynumber__list{
		width: 720px;
	}
	.pharmacy-mynumber__desc{
		margin-top: 5px;
		font-size: 2rem;
	}
	.pharmacy-mynumber__underbar{
		font-size: 2.6rem;
		background: linear-gradient(to bottom, transparent 0, transparent calc(100% - 16px), #ffe68f calc(100% - 16px), #ffe68f 100%);
	}
	.pharmacy-mynumber__subdesc{
		font-size: 1.6rem;
	}
}

/* マイナ受付 */

.pharmacy-reception{
	width: var(--base-w);
	margin: 80px auto 0;
}
.pharmacy-subtitle__reception{
	color: var(--color-text);
}
.pharmacy-reception__list{
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 60px;
}
.pharmacy-reception__item{
	width: 100%;
	padding: 15px 20px 30px;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	gap: 20px 40px;
	background: #fff;
	box-shadow: var(--shadow-base);
	position: relative;
}
.pharmacy-reception__item:not(:first-child)::before{
	content: "\f0d7";
	color: var(--color-accent);
	font: var(--fa-font-solid);
	font-size: 4.8rem;
	position: absolute;
	top: -55px;
	left: 50%;
	transform: translateX(-50%);
}
.pharmacy-reception__image{
	height: auto;
	margin: 0 auto;
	display: block;
}
.pharmacy-reception__label{
	width: 64px;
	height: 64px;
	border-radius: 100vmax;
	color: #fff;
	display: flex;
	justify-content: center;
	flex-direction: column;
	line-height: 1.4;
	text-align: center;
	font-size: 1.2rem;
	font-family: var(--font-eng);
	background: var(--color-accent);
	position: absolute;
	top: -25px;
	left: -10px;
}
.pharmacy-reception__num{
	display: block;
	font-size: 1.8rem;
}
.pharmacy-reception__heading{
	padding-bottom: 10px;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-accent);
	font-weight: var(--font-semibold);
}
.pharmacy-reception__desc{
	margin-top: 10px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}

@media (min-width: 1025px) {
	.pharmacy-reception{
		max-width:calc(100% - 40px);
		margin-top: 110px;
	}
	.pharmacy-reception__item{
		padding: 40px 40px 40px 90px;
		flex-direction: row;
	}
	.pharmacy-reception__label{
		width: 100px;
		height: 100px;
		font-size: 1.4rem;
		top: 50%;
		transform: translateY(-50%);
		left: -20px;
	}
	.pharmacy-reception__num{
		font-size: 3.2rem;
	}
	.pharmacy-reception__detail{
		width: 800px;
	}
	.pharmacy-reception__heading{
		font-size: 2rem;
	}
	.pharmacy-reception__desc{
		font-size: 1.6rem;
	}
}
@media (min-width: 1200px) {
	.pharmacy-reception__label{
		left: -50px;
	}
}

/* 電子処方せん */

.pharmacy-electronic{
	width: var(--base-w);
	margin: 80px auto 0;
	padding-bottom: 100px;
}
.pharmacy-electronic__wrapper{
	margin-top: 40px;
}
.pharmacy-electronic__text{
	padding: 0 20px 40px;
}
@media (min-width: 1025px) {
	.pharmacy-electronic{
		max-width:calc(100% - 40px);
		margin-top: 110px;
		padding-bottom: 20px;
	}
	.pharmacy-electronic__text{
		padding: 0 40px 40px;
	}
}

/* ====================================
	介護サービス care
==================================== */

/* ファーストビュー */

.care-first{
	width: var(--base-w);
	margin: 0 auto;
	padding: 40px 20px;
	border-radius: 15px;
	color: #fff;
	text-align: center;
	background: var(--color-accent);
}
.care-first__title{
	margin-bottom: 25px;
	line-height: 1.5;
	font-size: 2rem;
	font-weight: var(--font-semibold);
}
.care-first__underbar{
	width: fit-content;
	padding: 0 5px;
	background: linear-gradient(to bottom, transparent 0, transparent calc(100% - 10px), #ff9149 calc(100% - 10px), #ff9149 100%);
}
.care-first__large{
	font-size: 2.8rem;
	font-weight: var(--font-semibold);
}
@media (min-width: 1025px) {
	.care-first{
		max-width:calc(100% - 40px);
		font-size: 2rem;
	}
	.care-first__title{
		font-size: 3.2rem;
	}
	.care-first__underbar{
		background: linear-gradient(to bottom, transparent 0, transparent calc(100% - 16px), #ff9149 calc(100% - 16px), #ff9149 100%);
	}
	.care-first__large{
		font-size: 4rem;
	}
}

.care-wrapper{
	width: var(--base-w);
	margin: 60px auto 0;
	border-radius: 15px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.section-title__care{
	margin-bottom: 0;
	padding: 30px 20px;
	text-align: center;
}
.care__subtitle{
	line-height: 1.4;
	text-align: center;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
}
@media (min-width: 1025px) {
	.care-wrapper{
		max-width:calc(100% - 40px);
		margin: 120px auto 0;
	}
	.care__subtitle{
		font-size: 2.4rem;
	}
}

/* キャッチ+画像 */

.care-fv{
	padding: 35px 20px;
	display: flex;
	flex-direction: column;
	gap: 30px 80px;
	border-top: 1px solid var(--color-border);
}
.care-fv__title{
	color: var(--color-accent);
	font-size: 2rem;
	font-weight: var(--font-semibold);
}
.care-fv__text{
	margin-top: 20px;
	font-weight: var(--font-medium);
}
.care-fv__image{
	width: 100%;
	height: auto;
	border-radius: 15px;
	overflow: hidden;
}
@media (min-width: 1025px) {
	.care-fv{
		max-width:calc(100% - 40px);
		padding: 40px;
		flex-direction: row;
	}
	.care-fv__top{
		flex: 1;
	}
	.care-fv__title{
		font-size: 2.4rem;
	}
	.care-fv__text{
		margin-top: 30px;
	}
	.care-fv__bottom{
		width: 480px;
	}
}

/* 一日のスケジュール */

.care-schedule{
	padding: 35px 20px;
	border-top: 1px solid var(--color-border);
}
.care-schedule__list{
	margin-top: 35px;
	padding-left: 70px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: relative;
}
.care-schedule__list::before{
	content: "";
	width: 1px;
	height: calc(100% - 90px);
	background: #ffb584;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}
.care-schedule__item{
	width: 100%;
	margin: 0 auto;
	text-align: center;
	display: flex;
	flex-direction: column;
	position: relative;
}
.care-schedule__item::before{
	content: "";
	width: 24px;
	height: 24px;
	border-radius: 100vmax;
	background: #ffb584;
	position: absolute;
	top: 50%;
	left: -61px;
	transform: translateY(-50%);
}
.care-schedule__item::after{
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 100vmax;
	background: var(--color-accent);
	position: absolute;
	top: 50%;
	left: -53px;
	transform: translateY(-50%);
}
.care-schedule__detail{
	border-radius: 10px 10px 0 0;
	display: flex;
	flex-grow: 1;
	flex-direction: column;
	overflow: hidden;
}
.care-schedule__time{
	padding: 10px;
	color: #fff;
	font-family: var(--font-eng);
	background: var(--color-accent);
}
.care-schedule__desc{
	padding: 15px 0;
	border-bottom: 2px solid var(--color-accent);
	line-height: 1.4;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-grow: 1;
	font-size: 1.4rem;
}
@media (min-width: 1025px) {
	.care-schedule{
		padding: 40px 40px 60px;
	}
	.care-schedule__list{
		padding-left: 0;
		flex-direction: row;
	}
	.care-schedule__list::before{
		content: "";
		width: calc(100% - 120px);
		height: 1px;
		top: 13px;
		left: 50%;
		transform: translate(-50%,0);
	}
	.care-schedule__item{
		width: calc(100% / 8 - 10px);
		padding: 45px 0 0;
	}
	.care-schedule__item::before{
		top: 0;
		left: 50%;
		transform: translate(-50%,0);
	}
	.care-schedule__item::after{
		top: 8px;
		left: 50%;
		transform: translate(-50%,0);
	}
}

/* 施設一覧 */
.care-office{
	padding: 35px 20px;
	border-top: 1px solid var(--color-border);
}
.care-office__list{
	margin-top: 30px;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	gap: 20px;
}
.care-office__item{
	padding: 20px 0;
	border-radius: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.care-office__image{
	width: calc(100% - 40px);
	height: auto;
	margin: 0 auto 20px;
	border-radius: 10px;
	display: block;
	overflow: hidden;
}
.care-office__name{
	padding: 0 20px 20px;
	line-height: 1.4;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
	border-bottom: 1px solid var(--color-border);
}
.care-office__detail{
	margin: 0 20px;
	padding: 20px 0;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 10px 0;
}
.care-office__detail:last-of-type{
	margin-bottom: 30px;
}
.care-office__title {
	color: var(--color-accent);
}
.care-office__icon {
	margin-right: 10px;
}
.care-office__desc {
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.care__maplink a {
	width: fit-content;
	margin-top: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid var(--color-text);
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 1.4rem;
	position: relative;
	transition: color .4s, border .4s;
}
.care__maplink a::after {
	content: "\f35d";
	color: var(--color-accent);
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: -25px;
	transform: translateY(-50%);
}
.care-office__map{
	margin: 0 20px;
	aspect-ratio: 3 / 2;
	border-radius: 10px;
	border: 1px solid var(--color-border);
	overflow: hidden;
}
.care-office__map p,
.care-office__map iframe{
	width: 100%;
	height: 100%;
}
@media (min-width: 1025px) {
	.care-office{
		padding: 40px;
	}
	.care-office__list{
		margin-top: 40px;
		flex-direction: row;
	}
	.care-office__item{
		width: calc(50% - 10px);
		padding: 40px 0;
	}
	.care-office__image{
		width: calc(100% - 80px);
		margin: 0 auto 30px;
	}
	.care-office__name{
		padding: 0 40px 30px;
		font-size: 2rem;
	}
	.care-office__detail{
		margin: 0 40px;
		flex-direction: row;
	}
	.care-office__detail:last-of-type{
		margin-bottom: 30px;
	}
	.care-office__title{
		width: 150px;
	}
	.care-office__desc {
		flex: 1;
		font-size: 1.6rem;
	}
	.care__maplink a {
		font-size: 1.6rem;
	}
	.care-office__map{
		margin: 0 40px;
	}
}
@media (any-hover: hover) {
	.care__maplink a:hover{
		color: var(--color-accent);
		border-color: var(--color-accent);
	}
}

/* ====================================
	ガソリンスタンド gasstation
==================================== */

.gasstation-inner{
	width: var(--base-w);
	margin: 0 auto;
}
.gasstation-header{
	padding-bottom: 20px;
	border-bottom: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 0 20px;
}
.gasstation-header__title{
	font-size: 2.4rem;
	font-weight: var(--font-semibold);
}
.gasstation-header__en{
	color: var(--color-text-sub);
	font-size: 1.4rem;
	font-family: var(--font-eng);
}
@media (min-width: 1025px) {
	.gasstation-inner{
		max-width:calc(100% - 40px);
	}
	.gasstation-header{
		line-height: 1;
		align-items: flex-end;
		flex-direction: row;
	}
	.gasstation-header__title{
		font-size: 3.2rem;
		font-weight: var(--font-semibold);
	}
	.gasstation-header__en{
		font-size: 1.6rem;
	}
}

/* ステーション一覧 */

.gasstation-card__name{
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
}
.gasstation-card{
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.gasstation-card__item{
	padding: 20px 20px 80px 20px;
	border-radius: 15px;
	border: 1px solid var(--color-border);
	display: flex;
	flex-direction: column;
	gap: 20px 30px;
	position: relative;
	background: #fff;
	overflow: hidden;
	box-shadow: var(--shadow-base);
	position: relative;
}
.gasstation-card__image{
	width: 100%;
	height: auto;
	border-radius: 15px;
	overflow: hidden;
}
.gasstation-card__title{
	display: flex;
	flex-wrap: wrap;
	gap: 5px 15px;
	align-items: center;
	font-size: 1.8rem;
	font-weight: var(--font-semibold);
}
.gasstation-card__label{
	padding: 0 20px;
	border-radius: 5px;
	color: #fff;
	font-size: 1.4rem;
	background: var(--color-accent);
}
.gasstation-card__list{
	margin-top: 15px;
	display: flex;
	gap: 10px 15px;
	line-height: 1.2;
}
.gasstation-card__list:first-of-type{
	margin-top: 20px;
}
.gasstation-card__icon{
	width: 1.6rem;
	margin-top: 0.1em;
	color: var(--color-accent);
	text-align: center;
}
.gasstation-card__text{
	line-height: 1.6;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.gasstation-card__map{
	width: calc(100% - 40px);
	display: flex;
	flex-direction: column;
	gap: 10px;
	position: absolute;
	bottom: 20px;
	z-index: 1;
}
.gasstation__maplink{
	padding: 5px 20px;
	border: 1px solid var(--color-border);
	border-radius: 100vmax;
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 1.2rem;
	background: #fff;
	position: relative;
	transition: color .4s, background .4s;
}
.gasstation__maplink::after{
	content: "\f35d";
	color: var(--color-accent);
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	transition: color .4s;
}
@media screen and (min-width:680px) and (max-width:1024px){
	.gasstation-card{
		flex-direction: row;
		flex-wrap: wrap;
	}
	.gasstation-card__item{
		width: calc(50% - 10px);
	}
}
@media (min-width: 1025px) {
	.gasstation-card{
		margin-top: 40px;
	}
	.gasstation-card__item{
		padding: 20px;
		flex-direction: row;
		align-items: center;
		position: relative;
	}
	.gasstation-card__image{
		width: 240px;
		height: 160px;
	}
	.gasstation-card__title{
		font-size: 2rem;
	}
	.gasstation-card__map{
		width: 222px;
		padding: 0;
		top: 20px;
		bottom: auto;
		right: 20px;
	}
}
@media (any-hover: hover) {
	.gasstation__maplink:hover{
		color: #fff;
		background: var(--color-accent);
	}
	.gasstation__maplink:hover::after{
		color: #fff;
	}
}

/* 直営ガスステーション */
@media (min-width: 1025px) {
	.gasstation-direct{
		padding-bottom: 80px;
	}
}

/* 給油特典 */

.gasstation-benefits{
	padding: 120px 0;
	background: var(--color-bg-base);
}
.gasstation-benefits__wrapper{
	margin-top: 30px;
	padding: 30px 20px;
	border-radius: 15px;
	background: var(--color-bg-base2);
	box-shadow: var(--shadow-base);
}
.gasstation-benefits__image{
	width: 100%;
	height: auto;
}
.gasstation-benefits__text{
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.6;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
}
.gasstation-benefits__text:first-of-type{
	margin-top: 20px;
}
.gasstation-benefits__card{
	margin-top: 30px;
	padding: 20px;
	border-radius: 15px;
	background: var(--color-bg-base);
}
.gasstation-benefits__subtitle{
	padding-bottom: 10px;
	border-bottom: 1px solid var(--color-border);
	font-size: 2rem;
	font-weight: var(--font-semibold);
}
.gasstation-benefits__list{
	margin-top: 15px;
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.gasstation-benefits__item{
	padding-left: 20px;
	font-size: 1.4rem;
	font-weight: var(--font-medium);
	position: relative;
}
.gasstation-benefits__item::before{
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 100vmax;
	background: var(--color-accent);
	position: absolute;
	top: .6em;
	left: 0;
}
@media (min-width: 1025px) {
	.gasstation-benefits{
		padding: 160px 0;
		background: var(--color-bg-base);
	}
	.gasstation-benefits__wrapper{
		padding: 40px 0;
	}
	.gasstation-benefits__image{
		width: 972px;
		margin: 0 auto;
		display: block;
	}
	.gasstation-benefits__inner{
		padding: 0 120px;
	}
	.gasstation-benefits__text{
		font-size: 1.6rem;
	}
	.gasstation-benefits__card{
		padding: 30px 40px;
	}
	.gasstation-benefits__subtitle{
		font-size: 2.4rem;
	}
	.gasstation-benefits__item{
		font-size: 1.6rem;
	}
}

/* メグリア指定サービスステーション */

.gasstation-authorized__text{
	margin-top: 30px;
	font-weight: var(--font-medium);
}
.gasstation-authorized__small{
	display: block;
	font-size: 1.4rem;
}
.gasstation-authorized__wrapper{
	margin-top: 40px;
	border-radius: 15px;
	border: 1px solid var(--color-border);
	background: #fff;
	box-shadow: var(--shadow-base);
}
.gasstation-authorized__list{
	height: 0;
	visibility: hidden;
	overflow: hidden;
	transition: .4s;
}
.gasstation-authorized__button{
	width: 100%;
	padding: 20px 60px 20px 20px ;
	display: flex;
	align-items: center;
	text-align: left;
	font-size: 2rem;
	position: relative;
	transition: color .4s;
}
.gasstation-authorized__button::after{
	content: "\2b";
	font: var(--fa-font-solid);
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}
.gasstation-authorized__button[aria-expanded="true"]::after{
	content: "\f068";
}
.gasstation-authorized__button[aria-expanded="true"] + .gasstation-authorized__list{
	visibility: visible;
}
.gasstation-list__category{
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid var(--color-border);
}
.gasstation-authorized__inner{
	padding: 0 20px 40px;
}
.gasstation-authorized__nav{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.gasstation-authorized__link{
	width: 100%;
}
.gasstation-list__title{
	padding: 15px 20px;
	border-radius: 15px;
	color: #fff;
	font-size: 2rem;
	font-weight: var(--font-semibold);
	background: var(--color-accent);
}

@media (min-width: 1025px) {
	.gasstation-authorized{
		padding-top: 80px;
	}
	.gasstation-authorized__button{
		padding: 30px 40px;
		font-size: 2.4rem;
	}
	.gasstation-authorized__button::after{
		right: 40px;
	}
	.gasstation-authorized__inner{
		padding: 0 40px 40px;
	}
	.gasstation-authorized__nav{
		flex-direction: row;
		flex-wrap: wrap;
		gap: 20px;
	}
	.gasstation-authorized__navitem{
		width: calc(100% / 3 - 14px);
	}
	.gasstation-list__title{
		font-size: 2.4rem;
	}
	.gasstation-card__item--authorized{
		padding: 20px 30px;
	}
}
@media (any-hover: hover) {
	.gasstation-authorized__button:hover{
		color: var(--color-accent);
	}
	.gasstation-authorized__link:hover .gasstation-authorized__arrow::before {
		animation-name: transformTopBottom;
		animation-delay: 0s;
	}
	.gasstation-authorized__link:hover .gasstation-authorized__arrow::after {
		animation-name: transformBottomTop;
		animation-delay: 0.1s;
	}
}


/* お問い合わせ */

.gasstation-contact{
	padding: 60px 0;
}
.gasstation-flex{
	width: var(--base-w);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 40px 0;
}
.gasstation-contact__text{
	font-weight: var(--font-medium);
}
.gasstation-flex__bottom{
	padding: 20px;
	border-radius: 15px;
	text-align: center;
	background: var(--color-bg-base);
}
.gasstation-contact__title{
	line-height: 1.6;
	font-size: 1.6rem;
	font-weight: var(--font-semibold);
}
.gasstation-contact__wrapper{
	margin-top: 20px;
	padding: 20px;
	border-radius: 10px;
	background: #fff;
	box-shadow: var(--shadow-base);
}
.gasstation-contact__tel{
	color: var(--color-accent);
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 10px;
	line-height: 1;
	font-family: var(--font-eng);
	font-size: 2rem;
}
.gasstation-contact__tellink{
	color: var(--color-accent);
	font-size: 3.2rem;
}
.gasstation-contact__desc{
	margin-top: 10px;
	line-height: 1.5;
	font-size: 1.4rem;
}
@media (min-width: 1025px) {
	.gasstation-contact{
		padding: 120px 0 40px;
	}
	.gasstation-flex{
		flex-direction: row;
	}
	.gasstation-flex__top{
		max-width: 520px;
		flex: 1;
	}
	.gasstation-flex__bottom{
		max-width: 640px;
		flex: 1;
	}
	.gasstation-contact__text{
		margin-top: 40px;
	}
	.gasstation-contact__tel{
		font-size: 2.4rem;
	}
	.gasstation-contact__tellink{
		font-size: 4rem;
	}
	.gasstation-contact__desc{
		font-size: 1.4rem;
	}
}