
@charset "utf-8";

/*
	* 顧客オリジナルスタイルシート
	* サイト全体に関するスタイル
	* ver1
	* Copyright (C) ●●など
	* 更新履歴
		└ 
*/
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	初期設定（不要なものは削除）
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	root設定（適宜修正）（フォントはベースフォント外を削除してください。）
****************************************************************************************** */
:root{
	--black: #333;
	--mainColor: #40ac9c;
	--fontMainColor: #007371;
	--mainColorGradient: linear-gradient(90deg,rgba(64, 172, 156, 1) 0%, rgba(133, 212, 144, 1) 100%);
	--accentColor: #004ea2;
	--lightGray: #f8f8f8;
	--darkGreen: #008689;
	--gray: #e8e8e8;
	--pink: #f88e88;

	/* ベースフォントが21pxの場合 */
	--fontSize10: 0.476rem;
	--fontSize11: 0.524rem;
	--fontSize12: 0.571rem;
	--fontSize13: 0.619rem;
	--fontSize14: 0.667rem;
	--fontSize15: 0.714rem;
	--fontSize16: 0.762rem;
	--fontSize17: 0.810rem;
	--fontSize18: 0.857rem;
	--fontSize19: 0.905rem;
	--fontSize20: 0.952rem;
	--fontSize21: 1rem;
	--fontSize22: 1.048rem;
	--fontSize23: 1.095rem;
	--fontSize24: 1.143rem;
	--fontSize25: 1.190rem;
	--fontSize26: 1.238rem;
	--fontSize27: 1.286rem;
	--fontSize28: 1.333rem;
	--fontSize29: 1.381rem;
	--fontSize30: 1.429rem;
	--fontSize31: 1.476rem;
	--fontSize32: 1.524rem;
	--fontSize33: 1.571rem;
	--fontSize34: 1.619rem;
	--fontSize35: 1.667rem;
	--fontSize36: 1.714rem;
	--fontSize37: 1.762rem;
	--fontSize38: 1.810rem;
	--fontSize39: 1.857rem;
	--fontSize40: 1.905rem;
	--fontSize41: 1.952rem;
	--fontSize42: 2rem;
	--fontSize43: 2.048rem;
	--fontSize44: 2.095rem;
	--fontSize45: 2.143rem;
	--fontSize46: 2.190rem;
	--fontSize47: 2.238rem;
	--fontSize48: 2.286rem;
	--fontSize49: 2.333rem;
	--fontSize50: 2.381rem;
	--fontSize60: 2.86rem;
	--fontSize60: 2.86rem;
	--fontSize61: 2.90rem;
	--fontSize62: 2.95rem;
	--fontSize63: 3.00rem;
	--fontSize64: 3.05rem;
	--fontSize65: 3.10rem;

	/* 基準幅設定 */
	--vw-base: 1920;

	/* 角丸指定 */
	--radius-max-92: 92px; /* 最大値をここで指定 */



	/* サービスページ画像はみ出し計算用 */
	--service-overSpacing: 38px;
}
@media screen and (max-width:576px){
	:root{
		/* ベースフォントが16pxの場合 */
		--fontSize10: .625rem;
		--fontSize11: .687rem;
		--fontSize12: .75rem;
		--fontSize13: .812rem;
		--fontSize14: .875rem;
		--fontSize15: .937rem;
		--fontSize16: 1rem;
		--fontSize17: 1.062rem;
		--fontSize18: 1.125rem;
		--fontSize19: 1.187rem;
		--fontSize20: 1.25rem;
		--fontSize21: 1.312rem;
		--fontSize22: 1.375rem;
		--fontSize23: 1.437rem;
		--fontSize24: 1.5rem;
		--fontSize25: 1.562rem;
		--fontSize26: 1.625rem;
		--fontSize27: 1.687rem;
		--fontSize28: 1.75rem;
		--fontSize29: 1.812rem;
		--fontSize30: 1.875rem;
		--fontSize31: 1.937rem;
		--fontSize32: 2rem;
		--fontSize33: 2.062rem;
		--fontSize34: 2.125rem;
		--fontSize35: 2.187rem;
		--fontSize36: 2.25rem;
		--fontSize37: 2.312rem;
		--fontSize38: 2.375rem;
		--fontSize39: 2.437rem;
		--fontSize40: 2.5rem;
		--fontSize41: 2.562rem;
		--fontSize42: 2.625rem;
		--fontSize43: 2.687rem;
		--fontSize44: 2.75rem;
		--fontSize45: 2.812rem;
		--fontSize46: 2.875rem;
		--fontSize47: 2.937rem;
		--fontSize48: 3rem;
		--fontSize49: 3.062rem;
		--fontSize50: 3.125rem;
	}
}
/* ******************************************************************************************
	ベースフォント設定
****************************************************************************************** */
html{
	font-size: 21px;/* ベースフォント */
	scroll-behavior: auto;
}
@media screen and (max-width:576px){
	html{
		font-size: 16px;/* ベースフォント */
	}
}
/* ******************************************************************************************
	body設定
****************************************************************************************** */
body{
	display: grid;/* フッター浮き上がり対策 */
	grid-template-rows: auto 1fr auto;/* フッター浮き上がり対策 */
	grid-template-columns: 100%;/* フッター浮き上がり対策 */
	min-height: 100vh;/* フッター浮き上がり対策 */
	background-color: #fff;
	color: var(--black);
	line-height: 1.5;
	letter-spacing: 1px;
	/* font-family: "Noto Sans JP", sans-serif; */
	font-family: "BIZ UDGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	   -moz-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
	        text-size-adjust: 100%;
	position: relative;/* 追従サイドボタンの基準設定 */
	overflow-x: hidden;
}
/* ******************************************************************************************
	テキスト設定
****************************************************************************************** */
/* pの中にrubyがあれば余白をあける */
p:has(>ruby){
	line-height: 2;
}
/* ******************************************************************************************
	画像設定
****************************************************************************************** */
img{
	vertical-align: bottom;/* 余白防止 */
	max-width: 100%;/* 画像のデフォルトサイズ */
	height: auto;
	object-fit: cover;
}
/* ******************************************************************************************
	フォーム設定（適宜設定）
****************************************************************************************** */
select{
	-webkit-appearance: auto;
	appearance: auto; /* デフォルトの矢印を表示 */
}
select:hover{
	cursor: pointer;
}
input{
	border: 1px solid rgb(0 0 0 / 20%);
}
[type="button"], [type="reset"], [type="submit"]{
	padding: 0 .5em;
	border: none;
	background-color: var(--mainColor);
	color: var(--black);
	cursor: pointer;
}
/* ******************************************************************************************
	リンク設定
****************************************************************************************** */
a{
	display: inline-block;
	color: var(--black);
	transition: all .2s ease;
}
a:is(:hover,:focus){
	opacity: .8;
}
/* ******************************************************************************************
	フォーカス設定
****************************************************************************************** */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
  outline: 3px solid #000;
  outline-offset: 2px;
}
/* ******************************************************************************************
	リスト設定
****************************************************************************************** */
ol{
	list-style: decimal;/* リセットCSS打ち消し */
}
/* ******************************************************************************************
	電話番号設定（576px以下タップ有効化）
****************************************************************************************** */
/* タップ電話 */
a[href^="tel:"]{
	display: inline-block;
	text-decoration: none;
	pointer-events: none;
}
@media screen and (max-width:576px){
	a[href^="tel:"]{
		cursor: pointer;
		pointer-events: auto;
	}
}
/* ******************************************************************************************
	サイト幅設定（適宜設定）
****************************************************************************************** */
.ly_inner{
	width: 100%;
	max-width: calc(1200px + 40px);/* 基準幅 + 両padding余白分 */
	margin-right: auto;
	margin-left: auto;
	padding-right: 20px;
	padding-left: 20px;
}
.ly_inner_paddingNone{
	width: 100%;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
}
.ly_wideInner{
	width: 100%;
	max-width: calc(1600px + 20px);/* 基準幅 + 両padding余白分 */
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}
@media screen and (max-width:992px){
	.ly_inner{
		max-width: calc(800px + 40px);/* 基準幅 + 両padding余白分 */
	}
}
/* ******************************************************************************************
	サイト区切り設定（必要に応じて設定）
****************************************************************************************** */
.ly_section{
	padding-top: clamp(50px, calc(100 / var(--vw-base) * 100vw), 100px);
	padding-bottom: clamp(50px, calc(100 / var(--vw-base) * 100vw), 100px);
}
.ly_sectionTop110Bottom110{
	padding-top: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);
	padding-bottom: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);
}
.ly_sectionTop110Bottom150{
	padding-top: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);
	padding-bottom: clamp(70px, calc(150 / var(--vw-base) * 100vw), 150px);
}
.ly_sectionTop110Bottom0{
	padding-top: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);
	padding-bottom: 0;
}
/* ******************************************************************************************
	見出し設定
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し > アクセント英語と行頭に丸
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_mainTitle{
	display: inline-block;
	margin-bottom: clamp(20px, calc(35 / var(--vw-base) * 100vw), 35px);
}
.el_mainTitle span:first-of-type{
	padding-left: calc(14px + 13px);/* アイコン領域 + 余白 */
	position: relative;
	font-size: var(--fontSize24);
	font-size: clamp(18px, calc(24 / var(--vw-base) * 100vw), 24px);/* 最小18px, 最大24px */
	display: block;
	font-family: "Inter", sans-serif;
	font-weight: 800;
	letter-spacing: 1px;
}
.el_mainTitle span:first-of-type::before{
	content: '';
	display: block;
	width: 14px;
	aspect-ratio: 1/1;
	background-color: #ffdb00;
	border-radius: 20px;
	position: absolute;
	top: 7px;
	left: 0;
}
.el_mainTitle span:last-of-type{
	font-size: var(--fontSize60);
	font-size: clamp(32px, calc(60 / var(--vw-base) * 100vw), 60px);/* 最小32px, 最大60px */
	font-weight: 700;
	display: block;
}
@media screen and (max-width:992px){
	.el_mainTitle span:first-of-type{
		padding-left: calc(10px + 10px);/* アイコン領域 + 余白 */
	}
	.el_mainTitle span:first-of-type::before{
		width: 10px;
		top: 9px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し > 下線
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_title_greenUnderline{
	text-align: center;
	color: var(--darkGreen);
	font-weight: 700;
	position: relative;
	font-size: clamp(28px, calc(48 / var(--vw-base) * 100vw), 48px);
	padding-bottom: clamp(15px, calc(30 / var(--vw-base) * 100vw), 30px);
	margin-bottom: clamp(50px, calc(90 / var(--vw-base) * 100vw), 90px);
}
.el_title_greenUnderline::before{
	content: '';
	display: block;
	width: 102px;
	height: 5px;
	border-radius: 10px;
	background-color: var(--darkGreen);
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し > ベタ塗り
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_title_greenFill{
	background-color: var(--mainColor);
	border-radius: 100px;
	color: #fff;
	font-size: clamp(20px, calc(34 / var(--vw-base) * 100vw), 34px);
	font-weight: 700;
	padding: 1em 1.3em;
	position: relative;
	border: 3px solid #fff;
	margin-bottom: 3em;
}
.el_title_greenFill::before{
	content: none;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--mainColor);
	border-radius: 50px;
	width: 50px;
	height: 50px;
	font-size: var(--fontSize33);
	font-family: "Inter", sans-serif;
	font-weight: 700;
	background-color: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: min(55px,5vw);
	margin: auto 0;
}
/* el_title_greenFill__addNumberで数字付与 */
.el_title_greenFill[class*="el_title_greenFill__addNumber"]{
	padding-left: min(132px,16vw);
}
/* 1 */
.el_title_greenFill.el_title_greenFill__addNumber1::before{
	content: '1';
}
/* 2 */
.el_title_greenFill.el_title_greenFill__addNumber2::before{
	content: '2';
}
/* 3 */
.el_title_greenFill.el_title_greenFill__addNumber3::before{
	content: '3';
}
/* 4 */
.el_title_greenFill.el_title_greenFill__addNumber4::before{
	content: '4';
}
/* 5 */
.el_title_greenFill.el_title_greenFill__addNumber5::before{
	content: '5';
}
@media screen and (max-width:768px){
	.el_title_greenFill[class*="el_title_greenFill__addNumber"]{
		padding: calc(22.5px + 5px) 0.8em 0.8em;/* calc(アイコン高さ半分 + 余白） */
		text-align: center;
	}
	.el_title_greenFill::before{
		position: absolute;
		top: -22.5px;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 45px;
		height: 45px;
		font-size: var(--fontSize25);
		border: 3px solid var(--mainColor);
		padding-left: 2px;
	}
}
/* ******************************************************************************************
	パーツ設定
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	グラデーションボタン
====================================================================== */
.el_btn_base{
	display: block;
	padding: 20px calc(23px + 33px + 23px) 20px 37px;/* calc(アイコン移動距離 + アイコン幅 + 余白) */
	background-image: var(--mainColorGradient);
	position: relative;
	border-radius: 50px;
	font-size: var(--fontSize22);
	color: #fff;
	font-weight: 700;
	max-width: 287px;
	width: 100%;
	text-align: left;
}
.el_btn_base::after{
	content: '';
	display: block;
	width: 33px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-arrow-white.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 23px;
	transform: translateY(-50%);
}
.el_btn_base+.el_btn_base{
	margin-top: 10px;
}
/* ======================================================================
	ボタンサイズ > 小
====================================================================== */
.el_btn_base.el_btn_base__small{
	min-width: 228px;
	max-width: initial;
	padding: 12px calc(23px + 26px + 10px) 12px 28px;/* calc(アイコン移動距離 + アイコン幅 + 余白) */	
}
.el_btn_base.el_btn_base__small::after{
	width: 26px;
}
/* ======================================================================
	グラデーションボタン > 新しいタブで開くアイコン
====================================================================== */
.el_btn_base.el_btn_base__iconNewTabWhite::after{
	background-image: url(../img/common/icon-newtab-white.png);
}
/* ======================================================================
	グラデーションボタン > 新しいタブで開くアイコン
====================================================================== */
.el_btn_base.el_btn_base__white.el_btn_base__iconNewTabGreen::after{
	background-image: url(../img/common/icon-newtab-green.png);

}
/* ======================================================================
	白ボタン
====================================================================== */
.el_btn_base.el_btn_base__white{
	background-image: initial;
	background-color: #fff;
	color: var(--mainColor);
}
.el_btn_base.el_btn_base__white::after{
	background-image: url(../img/common/icon-arrow-green.png);
}
/* ======================================================================
	緑ボタン
====================================================================== */
.el_btn_base.el_btn_base__green{
	background-image: initial;
	background-color: var(--mainColor);
	color: #fff;
}
.el_btn_base.el_btn_base__green::after{
	background-image: url(../img/common/icon-arrow-white.png);
}
.el_btn_base.el_btn_base__green:is(:hover,:focus){
	opacity: 1;
}
/* ======================================================================
	店舗検索ボタン
====================================================================== */
.feas-submit-button{
	display: block;
	padding: 20px calc(23px + 33px + 23px) 20px 37px;/* calc(アイコン移動距離 + アイコン幅 + 余白) */
	background-color: #fff;
	background-image: url(../img/common/icon-arrow-green.png);
	background-position: left 90% center;
	background-repeat: no-repeat;
	background-size: 33px;
	position: relative;
	border-radius: 50px;
	font-size: var(--fontSize22);
	/* color: var(--fontMainColor); */
	font-weight: 700;
	max-width: 310px;
	width: 100%;
	text-align: left;
	margin: 50px auto 0;
}
/* ======================================================================
	アイコン付きボタン > 店舗一覧
====================================================================== */
.el_btn_icon{
	display: block;
	padding: 20px 20px 20px calc(145px + 78px + 30px);/* calc(アイコン移動距離 + アイコン幅 + 余白) */
	background-color: #fff;
	position: relative;
	border-radius: 100px;
	font-size: var(--fontSize36);
	font-weight: 700;
	max-width: 688px;
	width: 100%;
	text-align: left;
	border: 3px solid var(--mainColor);
	box-shadow: 3px 3px 3px rgb(0 0 0 / 15%);
	margin-left: auto;
	margin-right: auto;
	color: var(--darkGreen);
}
.el_btn_icon::before{
	content: '';
	display: block;
	/* width: clamp(41px, calc(78 / var(--vw-base) * 100vw), 78px); */
	width: 78px;
	aspect-ratio: 78/56;
	background-image: url(../img/common/icon-store-search.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	top: 0;
	bottom: 0;
	/* left: min(145px, 8vw); */
	left: 145px;
	margin: auto 0;
}
/* ------------------------------------------------------------
	アイコン付きボタン > 店舗一覧（位置調整）
------------------------------------------------------------ */
.ly_btn_inner{
	width: 100%;
    max-width: calc(1200px + 40px);
    margin-right: auto;
    margin-left: auto;
	padding-top: 100px;
	padding-bottom: 100px;
    padding-right: 20px;
    padding-left: 20px;
}
@media screen and (max-width:768px){
	.ly_btn_inner{
		padding-top: 50px;
		padding-bottom: 50px;
	}
}
/* ======================================================================
	ボタン > 店舗一覧の処方せんネット受付と友だち追加と詳細マップ
====================================================================== */
.el_btn_normal{
	display: inline-block;
	padding: 3px 24px;
	border-radius: 100px;
	background-color: var(--mainColor);
	color: #fff;
	font-size: var(--fontSize16);
	font-weight: 700;
}
.el_btn_normal.el_btn_normal__orange{
	background-color: #f7a539;
}
.el_btn_normal.el_btn_normal__green{
	background-color: #39b54a;
}
.el_btn_normal__mainColor{
	background-color: var(--mainColor);
}

@media screen and (max-width:1200px){
	.el_btn_base{
		padding: 15px calc(23px + 33px + 23px) 15px 30px;/* calc(アイコン移動距離 + アイコン幅 + 余白) */
		font-size: var(--fontSize20);
	}
}
@media screen and (max-width:768px){
	.el_btn_icon{
		padding: 20px 20px 20px calc(40px + 40px + 20px);/* calc(アイコン移動距離 + アイコン幅 + 余白) */
		font-size: var(--fontSize22);
	}
	.el_btn_icon::before{
		width: 40px;
		left: 40px;
	}
}
/* ******************************************************************************************
	ヘルパー
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	背景
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* 薬のイメージ背景 */
.el_bg_kusuri{
	background-image: linear-gradient(
	180deg, /* 角度を指定 */
	rgb(241 250 246 / 70%) 0%,/* 上 */
	rgb(241 250 246 / 70%) 100%/* 下 */
	),
	url(../img/page/bg-kusuri.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position-x: center;
	background-position-y: clamp(20%, 50%, 100%);/* 最小 , 通常 , 最大 */
	background-color: #f1faf6;
}
/* ライトグリーン背景と半円 */
.el_bg_green_addHalfCircle{
	background-color: #f1faf6;
	position: relative;
	overflow: hidden;
	z-index: 0;
}
.el_bg_green_addHalfCircle::before{
	content: '';
	display: block;
	width: 2989px;
	aspect-ratio: 2989/1578;
	/* clip-path: circle(56.4% at 50% 100%); */
	background-image: linear-gradient(90deg,rgb(64 172 156 / 22%) 0%, rgb(133 212 144 / 22%) 100%);
	background-repeat: no-repeat;
	background-size: contain;
	/* background-position: center; */
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
	z-index: -1;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	フレーム
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_frameRadiusBorder_grey{
	border: 1px solid #b3b3b3;
	border-radius: 12px;
	padding: 20px 37px;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	フローカード > 画像と文章
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	レイアウト
====================================================================== */
.set_card_imgText{
	padding: clamp(20px, calc(65 / var(--vw-base) * 100vw), 65px);/* 最小50px, 最大65px */
	background-color: #fff;
	border-radius: min(110px,7vw);
	display: flex;
	gap: 40px 50px;
	align-items: flex-start;
	position: relative;
}
.set_card_imgText + .set_card_imgText{
	margin-top: 35px;
}
@media screen and (max-width:992px){
	.set_card_imgText{
		flex-direction: column;
	}
}
/* ======================================================================
	画像エリア
====================================================================== */
.set_card_imgText_imgArea{
	width: calc(100% - 560px - 50px);/* 100% - テキストエリア幅 - gap分 */
	border-radius: 27px;
	overflow: hidden;
}
.set_card_imgText_imgArea img{
	width: 100%;
}
@media screen and (max-width:992px){
	.set_card_imgText_imgArea{
		max-width: 250px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}
/* ======================================================================
	テキストエリア
====================================================================== */
.set_card_imgText_textArea{
	width: 560px;
}
.set_card_imgText_textArea h4{
	font-size: var(--fontSize28);
	color: var(--fontMainColor);
	margin-bottom: 1.2em;
	font-weight: 700;
}
@media screen and (max-width:992px){
	.set_card_imgText_textArea{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}
/* ======================================================================
	フロー図の場合
====================================================================== */
.set_card_imgText.set_card_imgText__flow+.set_card_imgText.set_card_imgText__flow{
	margin-top: 86px;
}
.set_card_imgText.set_card_imgText__flow+.set_card_imgText.set_card_imgText__flow::before{
	content: '';
	display: block;
	width: 48px;
	height: 31px;
	background-image: url(../img/page/icon-triangle-flow.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(0px - 31px - 26px);/* 基準 - 矢印高さ - 領域の中央 */
	left: 50%;
	transform: translateX(-50%);
	clip-path: polygon(50% 100%, 0 0, 100% 0);
}
/* ======================================================================
	画像とテキスト交互
====================================================================== */
.set_card_imgText.set_card_imgText__reverse{
	padding: clamp(50px, calc(100 / var(--vw-base) * 100vw), 100px) clamp(20px, calc(100 / var(--vw-base) * 100vw), 100px);
	justify-content: space-between;
}
.set_card_imgText.set_card_imgText__reverse:nth-of-type(even){
	flex-direction: row-reverse;
}
.set_card_imgText.set_card_imgText__reverse .set_card_imgText_imgArea{
	width: initial;
}
.set_card_imgText.set_card_imgText__reverse .set_card_imgText_textArea{
	margin-top: 2em;
}
.set_card_imgText.set_card_imgText__reverse .set_card_imgText_textArea h4{
	margin-bottom: 0.5em;
}
@media screen and (max-width:992px){
	.set_card_imgText.set_card_imgText__reverse:nth-of-type(even){
		flex-direction: column;
	}
	.set_card_imgText.set_card_imgText__reverse .set_card_imgText_textArea{
		margin-top: 0;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	3カラムカード > 画像と文章（シャドウあり）
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.set_card3col{
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3カラム、各カラムは同じ幅 */
	gap: 30px; /* カラム間の間隔 */
}
.set_card_item{
	box-shadow: 0 0 8px rgb(0 153 0 / 25%);
	border-radius: 30px;
	overflow: hidden;
	background-color: #fff;
}.set_card_item img{
	width: 100%;
	aspect-ratio: 3/2;
}
.set_card_textArea{
	padding: 40px 20px 40px 20px;
}
.set_card_textArea > h3{
	text-align: center;
	color: var(--fontMainColor);
	text-decoration: underline;
	text-decoration-thickness: 8px;
	text-underline-offset: -5px;
	text-decoration-skip-ink: none;
	text-decoration-color: #ffdb00;
	font-size: clamp(26px, calc(30 / var(--vw-base) * 100vw), 30px);/* 最小50px, 最大30px */
	font-weight: 700;
}
.set_card_textArea > h3 + p{
	margin-top: 20px;
}
.set_card_textArea > p:only-child{
	text-align: center;
	font-size: clamp(20px, calc(25 / var(--vw-base) * 100vw), 25px);/* 最小50px, 最大25px */
	font-weight: 700;
}
@media screen and (max-width:992px){
	.set_card3col{
		grid-template-columns: 1fr;/* 3カラム、各カラムは同じ幅 */
		justify-content: center;
		gap: 30px; /* カラム間の間隔 */
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.set_card_textArea{
		padding: 30px 20px 35px 20px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	3カラムカード（上書き） > 画像と文章（シャドウなし、間隔調整、フォント調整）
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.set_card3col.set_card3col__gapLarge{
	gap: 50px; /* カラム間の間隔 */
}
.set_card_item.set_card_item__effectNone{
	box-shadow: none;
	border-radius: initial;
	overflow: initial;
	background-color: initial;
}
.set_card_item.set_card_item__effectNone img{
	border-radius: 17px;
}
.set_card_textArea.set_card_textArea__effectChange{
	padding: 0;
	margin-top: 30px;
}
.set_card_textArea.set_card_textArea__effectChange > p{
	font-size: 20px;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	1カラムカード > イラストと見出し、テキスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.set_illustrationCard{
	display: flex;
	flex-direction: column;
	gap: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);
}
.set_illustrationCard_wrap{
	display: flex;
	gap: 43px;
	background-color: #fff;
	border-radius: 41px;
	padding: 40px;
	/* margin-bottom: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px); */
}
.set_illustrationCard_wrap+.set_illustrationCard_wrap{
	margin-top: 14px;
}
.set_illustrationCard_img{
	width: calc(100% - 509px - 43px);/* 100% - テキスト領域 - gap分 */
	display: flex;
	justify-content: center;
	align-items: center;
}
/* .set_illustrationCard_img img{
	width: 100%;
} */
.set_illustrationCard_text{
	width: 509px;
	display: flex;
	flex-direction: column;
	gap: 35px;
}
.set_illustrationCard_title{
	background-color: var(--darkGreen);
	border-radius: 18px;
	padding: 10px 40px;
	color: #fff;
	font-size: var(--fontSize33);
	font-weight: 700;
}
.set_illustrationCard_text p{
	font-size: var(--fontSize24);
	color: var(--darkGreen);
	font-weight: 700;
	padding: 0 35px;
}
@media screen and (max-width:992px){
	.set_illustrationCard_wrap{
		display: block;
		padding: 30px 20px;
	}
	.set_illustrationCard_img{
		width: 100%;
	}
	.set_illustrationCard_text{
		width: 100%;
	}
}
@media screen and (max-width:768px){
	.set_illustrationCard_wrap{
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:576px){
	.set_illustrationCard_text{
		gap: 20px;
	}
	.set_illustrationCard_title{
		border-radius: 10px;
		padding: 10px 15px;
		font-size: var(--fontSize21);
	}
	.set_illustrationCard_text p{
		font-size: var(--fontSize21);
		padding: 0;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ナンバーアイコンとイメージアイコン付きカード
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	共通
====================================================================== */
.set_iconTextList{
	display: flex;
	flex-direction: column;
	gap: 60px 30px;
}
.set_iconText_item{
	position: relative;
	border: 3px solid var(--mainColor);
	display: flex;
	border-radius: 32px;
	background-color: #fff;
	min-height: 290px;
}
.set_iconText_item__merit::before,
.set_iconText_item__step::before{
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
}
.set_iconText_item__merit::before{
	width: 100px;
	aspect-ratio: 1/1;
	top: -48px;
	left: -5px;
}
.set_iconText_item__step::before{
	width: 189px;
	aspect-ratio: 191/74;
	top: -30px;
	left: 50px;
}
.set_iconText_imgArea{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25%;
}
.set_iconText_textArea{
	width: 75%;
	padding: 50px clamp(20px, calc(120 / var(--vw-base) * 100vw), 120px) 50px 0;
}
.set_iconText_textArea h3{
	font-size: clamp(24px, calc(30 / var(--vw-base) * 100vw), 30px);
	color: var(--fontMainColor);
	font-weight: 700;
	margin-bottom: 15px;
}
.set_iconText_textArea h4{
	font-size: clamp(21px, calc(26 / var(--vw-base) * 100vw), 26px);
	font-weight: 700;
	margin-bottom: 15px;
	position: relative;
	display: inline-block;
	z-index: 0;
}
.set_iconText_textArea h4::after{
	content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5px;
	width: 100%;
    height: 8px;
    background-color: #ffdb00;
    z-index: -1;
}
@media screen and (max-width:768px){
	.set_iconTextList{
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
	.set_iconText_item{
		flex-direction: column;
	}
	.set_iconText_imgArea{
		align-items: center;
		max-width: initial;
		padding: 65px 20px 0;
	}
	.set_iconText_imgArea{
		width: 100%;
	}
	.set_iconText_textArea{
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 20px;
		padding-bottom: 30px;
	}
	.set_iconText_textArea h3{
		text-align: center;
	}
}
/* ======================================================================
	ナンバーアイコン > メリット
====================================================================== */
.set_iconText_item.set_iconText_item__merit:nth-of-type(1)::before{
	background-image: url(../img/page/icon-merit-01.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(2)::before{
	background-image: url(../img/page/icon-merit-02.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(3)::before{
	background-image: url(../img/page/icon-merit-03.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(4)::before{
	background-image: url(../img/page/icon-merit-04.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(5)::before{
	background-image: url(../img/page/icon-merit-05.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(6)::before{
	background-image: url(../img/page/icon-merit-06.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(7)::before{
	background-image: url(../img/page/icon-merit-07.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(8)::before{
	background-image: url(../img/page/icon-merit-08.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(9)::before{
	background-image: url(../img/page/icon-merit-09.png);
}
.set_iconText_item.set_iconText_item__merit:nth-of-type(10)::before{
	background-image: url(../img/page/icon-merit-10.png);
}
/* ======================================================================
	ナンバーアイコン > ステップ
====================================================================== */
.set_iconText_item.set_iconText_item__step:nth-of-type(1)::before{
	background-image: url(../img/page/icon-step-01.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(2)::before{
	background-image: url(../img/page/icon-step-02.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(3)::before{
	background-image: url(../img/page/icon-step-03.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(4)::before{
	background-image: url(../img/page/icon-step-04.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(5)::before{
	background-image: url(../img/page/icon-step-05.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(6)::before{
	background-image: url(../img/page/icon-step-06.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(7)::before{
	background-image: url(../img/page/icon-step-07.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(8)::before{
	background-image: url(../img/page/icon-step-08.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(9)::before{
	background-image: url(../img/page/icon-step-09.png);
}
.set_iconText_item.set_iconText_item__step:nth-of-type(10)::before{
	background-image: url(../img/page/icon-step-10.png);
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	カード > ベタ塗りメリットナンバーとアイコン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	レイアウト
====================================================================== */
.set_titleFillColorIconTextCard_item{
	display: grid;
	grid-template-columns: 192px 197px 1fr;
	background-color: #fff;
	border-radius: 25px;
	overflow: hidden;
	border: 2px solid #ccc;
}
.set_titleFillColorIconTextCard_item+.set_titleFillColorIconTextCard_item{
	margin-top: 50px;
}
@media screen and (max-width:768px){
	.set_titleFillColorIconTextCard_item{
		grid-template-columns: 1fr;
		max-width: 500px;
		grid-template-rows: auto auto 1fr;
		margin-left: auto;
		margin-right: auto;
		gap: 20px;
	}
}
/* ======================================================================
	ベタ塗り
====================================================================== */
.set_titleFillColorIconTextCard_number{
	color: #fff;
	font-weight: 700;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px 15px 15px;
}
.set_titleFillColorIconTextCard_number span{
	display: inline-block;
}
.set_titleFillColorIconTextCard_number span:nth-of-type(1){
	font-size: var(--fontSize20);
	line-height: 1;
}
.set_titleFillColorIconTextCard_number span:nth-of-type(2){
	font-size: var(--fontSize60);
	font-family: "Inter", sans-serif;
	font-weight: 700;
	line-height: 1;
}
.set_titleFillColorIconTextCard_text_important{
	font-weight: 700;
}
.set_titleFillColorIconTextCard_item:nth-of-type(1) .set_titleFillColorIconTextCard_number{
	background-color: var(--mainColor);
}
.set_titleFillColorIconTextCard_item:nth-of-type(1) .set_titleFillColorIconTextCard_text_important{
	color: var(--mainColor);
}
.set_titleFillColorIconTextCard_item:nth-of-type(2) .set_titleFillColorIconTextCard_number{
	background-color: #f7a539;
}
.set_titleFillColorIconTextCard_item:nth-of-type(2) .set_titleFillColorIconTextCard_text_important{
	color: #f7a539;
}
.set_titleFillColorIconTextCard_item:nth-of-type(3) .set_titleFillColorIconTextCard_number{
	background-color: #f88e88;
}
.set_titleFillColorIconTextCard_item:nth-of-type(3) .set_titleFillColorIconTextCard_text_important{
	color: #f88e88;
}
.set_titleFillColorIconTextCard_item:nth-of-type(4) .set_titleFillColorIconTextCard_number{
	background-color: #7a82b4;
}
.set_titleFillColorIconTextCard_item:nth-of-type(4) .set_titleFillColorIconTextCard_text_important{
	color: #7a82b4;
}
/* ======================================================================
	アイコン
====================================================================== */
.set_titleFillColorIconTextCard_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	/* padding: 20px 15px 20px; */
}
/* ======================================================================
	テキスト
====================================================================== */
.set_titleFillColorIconTextCard_text{
	font-size: var(--fontSize27);
	padding: 53px 20px 53px 0;
	font-weight: 700;
}
.set_titleFillColorIconTextCard_text_note{
	display: block;
	font-size: var(--fontSize20);
}
@media screen and (max-width:768px){
	.set_titleFillColorIconTextCard_text{
		padding: 0 15px 20px;
		text-align: center;
		font-size: var(--fontSize23);
	}
	.set_titleFillColorIconTextCard_text_important{
		display: block;
		font-size: var(--fontSize28);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	イメージアイコンとタイトル、サブタイトル付き3カラムカード
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	レイアウト
====================================================================== */
.set_3colStepCard{
	display: flex;
    flex-direction: column;
    gap: 60px 30px;
}
.set_3colStepCard_item{
	display: grid;
	grid-template-columns: 200px 260px 1fr;
	position: relative;
    border: 3px solid var(--mainColor);
    border-radius: 32px;
    background-color: #fff;
	padding: 40px 30px 40px 40px;
	gap: 30px 30px;
}
@media screen and (max-width:992px){
	.set_3colStepCard_item{
		grid-template-columns: 1fr;
		grid-template-rows: 1fr auto auto;
		padding: 0 10px 30px 20px;
	}
}
/* ======================================================================
	画像エリア
====================================================================== */
.set_3colStepCard_img{
	display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width:992px){
	.set_3colStepCard_img{
		order: 2;
	}
}
/* ======================================================================
	メインタイトルエリア
====================================================================== */
.set_3colStepCard_titleArea{
	display: flex;
    align-items: center;
    justify-content: center;
}
.set_3colStepCard_title{
	font-size: var(--fontSize30);
    color: var(--fontMainColor);
    font-weight: 700;
	position: relative;
	padding-top: calc(58px + 10px);/* アイコン高さ + 余白 */
}
.set_3colStepCard_title::before{
	content: '';
	width: 150px;
    aspect-ratio: 191 / 74;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
    background-repeat: no-repeat;
    background-size: contain;
}
.set_3colStepCard_item:nth-of-type(1) .set_3colStepCard_title::before{
	background-image: url(../img/page/icon-step-01.png);
}
.set_3colStepCard_item:nth-of-type(2) .set_3colStepCard_title::before{
	background-image: url(../img/page/icon-step-02.png);
}
.set_3colStepCard_item:nth-of-type(3) .set_3colStepCard_title::before{
	background-image: url(../img/page/icon-step-03.png);
}
.set_3colStepCard_item:nth-of-type(4) .set_3colStepCard_title::before{
	background-image: url(../img/page/icon-step-04.png);
}
.set_3colStepCard_item:nth-of-type(5) .set_3colStepCard_title::before{
	background-image: url(../img/page/icon-step-05.png);
}
@media screen and (max-width:992px){
	.set_3colStepCard_titleArea{
		order: 1;
		margin-top: -25px;
	}
}
/* ======================================================================
	説明エリア
====================================================================== */
.set_3colStepCard_subTitle{
	font-size: var(--fontSize26);
    font-weight: 700;
    margin-bottom: 15px;
    display: flex;
	/* justify-self: left; */
	/* justify-content: left; */
	text-decoration: underline;
	text-decoration-thickness: 8px;
	text-underline-offset: -5px;
	text-decoration-skip-ink: none;
	text-decoration-color: #ffdb00;
}
.set_3colStepCard_listArea li{
	position: relative;
    padding-left: 27px;
}
.set_3colStepCard_listArea li+li{
	margin-top: 15px;
}
.set_3colStepCard_listArea li::before{
	content: '';
    display: block;
    width: 15px;
    aspect-ratio: 1 / 1;
    background-color: var(--mainColor);
    position: absolute;
    top: 9px;
    left: 0;
    border-radius: 20px;
}
.set_3colStepCard_list_note{
	margin-top: 15px;
	font-size: var(--fontSize18);
}
@media screen and (max-width:992px){
	.set_3colStepCard_listArea{
		order: 3;
	}
	.set_3colStepCard_subTitle{
		/* justify-self: center; */
		justify-content: center;
		font-size: var(--fontSize24);
		text-align: center;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	ヘッダー
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	レイアウト
****************************************************************************************** */
/* トップページ以外 */
.ly_header{
	padding: 15px 10px 40px;
	border-radius: 0 0 45px 45px;
	background-color: #fff;
	z-index: 1;
	position: relative;
}
.ly_header.js_shrink{
	box-shadow: 0 0 5px rgb(0 0 0 / 20%);
}
/* トップページの場合 */
.home .ly_header{
	padding: 15px 10px 10px;
	border-radius: 0;
}

.ly_headerInner{
	width: 100%;
	max-width: calc(1750px);/* 基準幅 + 両padding余白分 */
	margin-right: auto;
	margin-left: auto;
}
.bl_headerTitleBtnWrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}
/* ******************************************************************************************
	ヘッダー追従に関するcss抜き出し
****************************************************************************************** */
@media screen and (min-width:993px){
	/* ヘッダー共通 */
	.ly_header{
		transition: transform 0.4s ease, opacity 0.4s ease;
	}

	/* 追従時 */
	.ly_header.js_shrink {
		padding-top: 10px;
		padding-bottom: 10px;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 999;

		/* 初期状態で上に隠す */
		transform: translateY(-100%);
		opacity: 0;
		animation: headerDrop 0.4s ease forwards;
	}
	.ly_header.js_shrink{
		border-radius: 0;
	}

	/* 上から降りるアニメーション */
	@keyframes headerDrop {
		0% {
			transform: translateY(-100%);
			opacity: 0;
		}
		100% {
			transform: translateY(0);
			opacity: 1;
		}
	}

	/* 中身を非表示にする既存設定をそのまま維持 */
	.ly_header.js_shrink .bl_headerTitleBtnWrap {
		height: 0;
		opacity: 0;
		overflow: hidden;
		margin: 0;
		pointer-events: none;
		transition: height 0.3s ease, opacity 0.3s ease, margin 0.3s ease;
	}
}

@media screen and (max-width:992px){
	/* トップページの場合 */
	.home .ly_header{
		padding: 10px 10px 10px;
	}
	.ly_header{
		padding: 15px;
		border-radius: 0 0 20px 20px;
		position: sticky;
		top: 0;
		left: 0;
	}
	.bl_headerTitleBtnWrap{
		margin-bottom: 0;
		padding-right: calc(50px + 10px + 10px);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	会社名
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_companyTitle_link{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 340px;
}
.bl_companyName{
	font-weight: 700;
}
.bl_companyName.bl_companyName__sub{
	font-size: var(--fontSize26);
	letter-spacing: 1px;
}
.bl_companyName.bl_companyName__main{
	font-size: var(--fontSize38);
	letter-spacing: 2px;
}
@media screen and (max-width:992px){
	.bl_companyTitle_link{
		white-space: nowrap;
	}
	.bl_companyName.bl_companyName__sub{
		font-size: var(--fontSize21);
		letter-spacing: 1px;
	}
	.bl_companyName.bl_companyName__main{
		font-size: var(--fontSize30);
		letter-spacing: 2px;
	}
}
@media screen and (max-width:576px){
	.bl_companyTitle_link{
        max-width: 300px;
		width: 100%;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ヘッダーボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_headerBtnArea{
	display: flex;
	gap: 20px;
	font-weight: 700;
}
.bl_headerBtn{
	/* padding: 17px 90px 17px 60px; */
	padding: 10px 80px 10px 50px;
	color: #fff;
	border-radius: 50px;
	position: relative;
	/* font-size: var(--fontSize24); */
	font-size: var(--fontSize21);
}
.bl_headerBtn.bl_headerBtn__recruit{
	background-color: var(--pink);
}
.bl_headerBtn.bl_headerBtn__search{
	background-color: var(--mainColor);
}
.bl_headerBtn::after{
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.bl_headerBtn.bl_headerBtn__recruit::after{
	background-image: url(../img/common/icon-man.png);
	width: 18px;
	aspect-ratio: 100/122;
	right: 48px;
}
.bl_headerBtn.bl_headerBtn__search::after{
	background-image: url(../img/common/icon-search.png);
	width: 23px;
	aspect-ratio: 1/1;
	right: 43px;
}
@media screen and (max-width:992px){
	.bl_headerBtnArea{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		gap: 0;
		z-index: 3;
	}
	.bl_headerBtn{
		width: 50%;
		border-radius: 0;
		text-align: center;
		padding: 17px 30px 17px 20px;
		height: 70px;
	}
	.bl_headerBtn::after{
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
	}
	.bl_headerBtn.bl_headerBtn__recruit::after{
		left: calc(50% + 67px);
	}
	.bl_headerBtn.bl_headerBtn__search::after{
		left: calc(50% + 72px);
	}
}
@media screen and (max-width:576px){
	.bl_headerBtn{
		font-size: var(--fontSize20);
		padding: 10px 30px 10px 20px;
		height: 50px;
	}
	.bl_headerBtn.bl_headerBtn__recruit::after{
		left: calc(50% + 54px);
		width: 16px;
	}
	.bl_headerBtn.bl_headerBtn__search::after{
		left: calc(50% + 56px);
		width: 20px;
	}
}
/* ******************************************************************************************
	グローバルメニュー
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	全体
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_gNavUnit{
	display: flex;
	/* justify-content: space-between; */
	justify-content: center;
	position: relative;
}
@media screen and (max-width:992px){
	.bl_gNav_area{
		position: fixed;
		top: 0;
		right: -100%;
		overflow: auto;
		transition: .4s;
		width: 100%;
		height: 100vh;
		visibility: hidden;
		z-index: 3;
		padding: calc(60px + 20px) 20px 100px;/* calc(ハンバーガーメニュー高さ分 + 余白) */
		background-image: 
		linear-gradient(135deg, rgba(64, 172, 156, 1) 0%, rgba(133, 212, 144, 1) 100%);
	}
	.is_active .bl_gNav_area{
		right: 0;
		visibility: visible;
	}
	.bl_gNav.is_open{
		left: 0;
		transition: all .6s;
	}
	.bl_gNav{
		overflow-x: hidden;
		overflow-y: auto;
		transition: all .6s;
		width: 100%;
	}
	.bl_gNavUnit{
		display: block;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	個別
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	グローバルメニューのリスト
====================================================================== */
@media screen and (min-width:991px){
	.bl_gNav_item{
		border-left: 1px solid #ccc;
		width: 16.66666666666667%;
	}
	.bl_gNav_item:first-of-type{
		border-left: none;
	}
	.bl_gNav_link{
		display: flex;
		justify-content: center;
		align-items: center;
		transition: all .3s;
		/* padding: 10px 0; */
		padding: 5px 10px;
		/* font-size: var(--fontSize24); */
		font-size: var(--fontSize21);
		color: var(--black);
		font-weight: bold;
		letter-spacing: 2px;
	}
	.bl_gNav_link:is(:hover,:focus){
		opacity: 1;
		background-color: rgb(64 172 156 / 20%);
	}
	.bl_gNav_link.bl_gNav_item_child_link:is(:hover,:focus){
		opacity: 0.8;
		background-color: #fff;
	}
}
/* ------------------------------------------------------------
	子リスト
------------------------------------------------------------ */
/* -----
	pc
----- */
@media screen and (min-width:991px){
	.bl_gNav_item_childWrap{
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.3s ease, visibility 0.3s ease;
		position: absolute;
		top: 50px;/* Gメニュー高さ */
		left: 0;
		padding-top: 10px;
		width: 100%;
		z-index: 1;
	}
	.st_gNav_itemParent:hover > .bl_gNav_item_childWrap,
	.st_gNav_itemParent:focus-within > .bl_gNav_item_childWrap {
		opacity: 1;
		visibility: visible;
	}
	.bl_gNav_item_child {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
		max-width: 100%;
		width: 100%;
		background-image: 
		linear-gradient(135deg, rgba(64, 172, 156, 1) 0%, rgba(133, 212, 144, 0.9) 100%),
		url("../img/common/bg-texture-gradient.jpg");
		background-size: cover;
		border-radius: 30px;
		padding: 30px;
	}
	.bl_gNav_item_child_link{
		text-align: center;
		padding: 140px 10px 25px;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		background-color: #fff;
		border-radius: 20px;
		font-size: var(--fontSize21);
		font-weight: 700;
		letter-spacing: 2px;
	}
	.bl_gNav_item_child_link::before{
		content: '';
		display: block;
		background-repeat: no-repeat;
		background-size: contain;
		position: absolute;
		top: 30px;
		left: 50%;
		transform: translateX(-50%);
		width: 90px;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__pcMedicine::before{
		background-image: url(../img/common/icon-pc-medicine.png);
		aspect-ratio: 100/70;
		width: 120px;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__smartphoneLine::before{
		background-image: url(../img/common/icon-smartphone-line.png);
		aspect-ratio: 100/101;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__tvDoctor::before{
		background-image: url(../img/common/icon-tv-doctor.png);
		aspect-ratio: 100/98;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__training::before{
		background-image: url(../img/common/icon-training.png);
		aspect-ratio: 100/99;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__houseMedicine::before{
		background-image: url(../img/common/icon-house-medicine.png);
		aspect-ratio: 100/102;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__note::before{
		background-image: url(../img/common/icon-note.png);
		aspect-ratio: 100/127;
		width: 72px;
	}
	.bl_gNav_item_child_link.bl_gNav_item_child_link__bee::before{
		background-image: url(../img/common/icon-bee.png);
		aspect-ratio: 100/101;
	}
}
/* -----
	sp
----- */
@media screen and (max-width:992px){
	.bl_gNav_item_childWrap{
		padding: 20px 0 30px 30px;
	}
	.bl_gNav_item{
		width: 100%;
	}
	.bl_gNav_item + .bl_gNav_item::before{
		content: none;
	}
	.bl_gNav_link{
		position: relative;
		display: block;
		padding: 1rem;
		border-bottom: 1px solid #fff;
		font-size: var(--fontSize20);
		font-weight: 700;
		color: #fff;
	}
	.bl_gNav_link::after{
		content: "";
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
		border: 5px solid transparent;
		border-left: 8px solid #fff;
		transition: .2s;
	}
	.bl_gNav_link:hover::after,.bl_gNav_link:focus::after{
		right: 7px;
		transition: .2s;
	}
	.bl_gNav_item_child_link{
		font-size: var(--fontSize18);
		padding: 10px;
	}
}
/* ============================================================
	ハンバーガーメニュー
============================================================ */
/* フォーカストラップ非表示 */
#js_focusTrapFirst,#js_focusTrapEnd{
	display: none;
}
.el_trigger{
	display: none;
}
@media screen and (max-width:992px){
	/* ハンバーガーメニューオープン時のみフォーカストラップ有効化 */
	.is_active #js_focusTrapFirst,.is_active #js_focusTrapEnd{
		display: block;
	}
	.el_trigger{
		display: block;
		/* position: absolute;
		top: 5px;
		right: 10px; */
		transition: .2s;
		width: 50px;
		height: 50px;
		margin: 0;
		/* border: 2px solid #fff; */
		background-color: var(--mainColor);
		cursor: pointer;
		z-index: 1000;
		border-radius: 10px;

		position: absolute;
		top: 50%;
		right: 10px;
		transform: translateY(-50%);
	}
	.is_active .el_trigger{
		background-color: initial;
	}
	.is_active .el_trigger .el_trigger_line{
		background-color: transparent;
	}
	.is_active .el_trigger .el_trigger_line::before{
		top: 0;
		transform: rotate(45deg);
	}
	.is_active .el_trigger .el_trigger_line::after{
		top: 0;
		transform: rotate(-45deg);
	}
	/* .is_active .el_trigger .el_trigger_text::before{
		content: "閉じる";
	} */
	.el_trigger_line{
		display: block;
		position: absolute;
		top: 23px;
		left: 50%;
		transform: translateX(-50%);
		transition: .4s;
		width: 35px;
		height: 4px;
		border-radius: 10px;
		background-color: #fff;
	}
	.el_trigger_line::before, .el_trigger_line:after{
		content: "";
		display: block;
		position: absolute;
		transition: inherit;
		width: 100%;
		height: 100%;
		background-color: #fff;
		border-radius: 10px;
	}
	.el_trigger_line::before{
		top: -10px;
	}
	.el_trigger_line:after{
		top: 10px;
	}
	.el_trigger_text{
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		text-align: center;
	}
	/* .el_trigger_text::before{
		content: "メニュー";
		color: #fff;
		font-weight: bold;
		font-size: 13px;
	} */
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	メインビジュアル
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	キャッチフレーズ
****************************************************************************************** */
.bl_carouselContainer{
	position: relative;
	/* margin-top: 15px; */
}
.bl_catchphraseArea{
	position: absolute;
	bottom: -6vw;
	left: 0;
	max-width: 750px;
	width: 40vw;
}
/* ******************************************************************************************
	スライダー > 全体
****************************************************************************************** */
.splide{
	width: 100%;
    max-width: calc(1750px + 20px);
    margin-right: auto;
    margin-left: auto;
	padding-left: 10px;
	padding-right: 10px;
}
.splide__track{
	padding: 5px 0;/* フォーカス枠見切れ対策 */
}
.splide__slide{
	border-radius: min(92px, 7vw);
	overflow: hidden;
	position: relative;
	/* aspect-ratio: 16/9; */
	/* height: calc(100vh - 204px); */
}
.splide__slide::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgb(19 53 28 / 25%);
	pointer-events: none;
  }
/* ******************************************************************************************
	スライダー > 画像比率設定
****************************************************************************************** */
.st_splideMain img{
	aspect-ratio: 21/9;
	/* aspect-ratio: 3/2; */
	/* object-position: center; */
	/* object-position: bottom; */
	width: 100%;
	/* height: 100%; */
	object-fit: contain;
}
/* ******************************************************************************************
	スライダー > 規定枚数より少ない場合は、矢印、再生・停止ボタン非表示
****************************************************************************************** */
.splide:not(.is-overflow) .splide__arrow,.splide:not(.is-overflow) .splide__controls{
	display: none;
}
/* ******************************************************************************************
	スライダー > 停止・再生ボタン、ページャー包括
****************************************************************************************** */
.splide__controls{
	display: flex;
	justify-content: center;
	gap: 10px;
	align-items: center;
	height: 30px;
	margin: 1rem 0;
	padding: 0 20px;
	position: absolute;
    bottom: 34px;
    right: 68px;
}
@media screen and (max-width:992px){
	.splide__controls{
		margin: 0;
		position: absolute;
		bottom: 10px;
		right: 10px;
	}
}
@media screen and (max-width:576px){
	.splide__controls{
		bottom: 5px;
	}
}
/* ******************************************************************************************
	スライダー > 矢印
****************************************************************************************** */
.splide__arrow{
	display: none;
}
/* ******************************************************************************************
	スライダー > ページャー
****************************************************************************************** */
.splide__pagination__page{
	width: 63px;
	height: 7px;
	/* border-radius: 15px; */
	background-color: #fff;
	padding: initial;
}
.splide__pagination__page{
	margin: 10px 5px;
}
.splide__pagination__page.is-active{
	background-color: var(--mainColor);
}
@media screen and (max-width:992px){
	.splide__pagination__page{
		width: 35px;
		height: 5px;
	}
}
@media screen and (max-width:576px){
	.splide__pagination__page{
		width: 20px;
		height: 3px;
		margin: 10px 2px;
	}
}
/* ******************************************************************************************
	スライダー > 停止・再生ボタン
****************************************************************************************** */
.splide__toggle{
	position: relative;
	border: 1px solid #ccc;
	background-color: transparent;
	font-size: var(--fontSize14);
	line-height: 1;
	padding: 4px 5px;
	background-color: #fff;
}
.splide__toggle::before{
	content: "\f04b";
	color: var(--mainColor);
	font-weight: bold;
	font-size: 14px;
	line-height: 1;
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	margin-right: 5px;
}
.splide__toggle.is-active::before{
	content: "\f04c";
	/* color: var(--darkGray); */
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	新着情報
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	全体
****************************************************************************************** */
.ly_news{
	padding-top: clamp(80px, calc(126 / var(--vw-base) * 100vw), 126px);
	padding-bottom: clamp(80px, calc(126 / var(--vw-base) * 100vw), 126px);
	margin-left: auto;
	margin-right: auto;
}
.bl_informationUnit{
	display: grid;
	grid-template-columns: 1fr minmax(0, 800px);
	gap: 30px 50px;
}
@media screen and (max-width:1200px){
	.bl_informationUnit{
		grid-template-columns: 1fr; /* 1列に変更 */
	}
	.bl_informationTitleArea .el_mainTitle{
		margin-bottom: 0;
	}
}
@media screen and (max-width:992px){
	.ly_news{
		max-width: 800px;
	}
	.bl_informationUnit{
		margin-bottom: 30px;
	}
	.js_newsBtn_move{
		margin-left: auto;
		margin-right: auto;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	中身 > お知らせタイトルエリア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
@media screen and (max-width:1200px){
	.bl_informationTitleArea{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	中身 > お知らせコンテンツエリア
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_informationContentsArea{
}
/* ======================================================================
	日付、カテゴリ、タイトルリンク
====================================================================== */
/* ------------------------------------------------------------
	グリッド・エリア定義
------------------------------------------------------------ */
.grid_informationUnit_item{
	display: grid;
	grid-template-rows: 1fr auto;
	grid-template-columns: auto 1fr;
	grid-template-areas:
	"area_informationUnit_item_date area_informationUnit_item_cat"
	"area_informationUnit_item_cont area_informationUnit_item_cont";
	gap: 10px 30px;
	align-items: center;
}
@media screen and (max-width:768px){
	.grid_informationUnit_item{
		grid-template-rows: 1fr auto;
		grid-template-columns: auto 1fr;
		gap: 8px 10px;
	}
}
.area_informationUnit_item_date{
	grid-area: area_informationUnit_item_date;
}
.area_informationUnit_item_cat{
	grid-area: area_informationUnit_item_cat;
}
.area_informationUnit_item_cont{
	grid-area: area_informationUnit_item_cont;
}
/* ------------------------------------------------------------
	全体
------------------------------------------------------------ */
.bl_informationUnit_item{
	padding: 32px 0px 32px 30px;
	border-top: 1px solid #ccc;
	position: relative;
}
.bl_informationUnit_item::after{
	/* content: '';
	display: block;
	width: 35px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-arrow-white.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	border: 1px solid var(--mainColor);
	box-shadow: 0 0 1px var(--mainColor);
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	border-radius: 20px; */
}
.bl_informationUnit_item:nth-last-of-type(1){
	border-bottom: 1px solid #ccc;
}
@media screen and (max-width:576px){
	.bl_informationUnit_item{
		padding: 20px 0 20px 10px;
	}
}
/* ------------------------------------------------------------
	日付
------------------------------------------------------------ */
.bl_informationUnit_item_date{
	font-size: var(--fontSize23);
	font-weight: 700;
}
@media screen and (max-width:576px){
	.bl_informationUnit_item_date{
		font-size: var(--fontSize18);
	}
}
/* ------------------------------------------------------------
	カテゴリ
------------------------------------------------------------ */
.bl_informationUnit_item_cat{
	display: inline-block;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.el_cat{
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 23px;
	border: 1px solid var(--mainColor);
    font-weight: 700;
    font-size: var(--fontSize18);
	border-radius: 20px;
	color: var(--mainColor);
}
@media screen and (max-width:576px){
	.el_cat{
		font-size: var(--fontSize14);
		padding: 1px 23px;
	}
}
/* ------------------------------------------------------------
	タイトルリンク
------------------------------------------------------------ */
.bl_informationUnit_item_cont a{
	font-weight: 700;
	position: relative;
	padding-right: 55px;
	display: block;
}
.bl_informationUnit_item_cont a::after{
	content: '';
	display: block;
	width: 35px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-arrow-white.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	border: 1px solid var(--mainColor);
	box-shadow: 0 0 1px var(--mainColor);
	top: -2px;
	right: 10px;
	border-radius: 20px;
}
@media screen and (max-width:768px){
	.bl_informationUnit_item_cont > a{
		padding-right: 40px;
	}
	.bl_informationUnit_item_cont a::after{
		width: 25px;
		top: 0px;
	}
}
/* ******************************************************************************************
	詳細ページ
****************************************************************************************** */
.bl_info_metaWrap{
	display: flex;
	gap: 20px;
	justify-content: end;
	margin-bottom: clamp(50px, calc(90 / var(--vw-base) * 100vw), 90px);
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	サービスページ
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_service{
	width: 100%;
    max-width: 1600px;
    margin-right: auto;
    margin-left: auto;
	background-image: linear-gradient(
		135deg, /* 角度を指定 */
		rgb(64 172 156) 0%,/* 上 */
		rgb(133 212 144 / 90%) 100%/* 下 */
		),
		url(../img/common/bg-texture-gradient.jpg);
	border-radius: min(87px, 7vw);
	padding-top: clamp(50px, calc(135 / var(--vw-base) * 100vw), 135px);
	padding-bottom: clamp(50px, calc(175 / var(--vw-base) * 100vw), 175px);
}
.bl_serviceWrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.bl_serviceCardArea {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 25px;
	max-width: 100%;
	width: 100%;
	background-size: cover;
}
.bl_serviceCard_link{
	text-align: center;
	padding: 170px 10px 40px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: #fff;
	border-radius: min(30px,4vw);
	font-size: var(--fontSize24);
	font-weight: 700;
	letter-spacing: 2px;
	aspect-ratio: 1/1;
}
.bl_serviceCard_link::before{
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 40px;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
}
.bl_serviceCard_link.bl_serviceCard_link__pcMedicine::before{
	background-image: url(../img/common/icon-pc-medicine.png);
	aspect-ratio: 100/70;
	width: 133px;
}
.bl_serviceCard_link.bl_serviceCard_link__smartphoneLine::before{
	background-image: url(../img/common/icon-smartphone-line.png);
	aspect-ratio: 100/101;
}
.bl_serviceCard_link.bl_serviceCard_link__tvDoctor::before{
	background-image: url(../img/common/icon-tv-doctor.png);
	aspect-ratio: 100/98;
}
.bl_serviceCard_link.bl_serviceCard_link__training::before{
	background-image: url(../img/common/icon-training.png);
	aspect-ratio: 100/99;
}
.bl_serviceCard_link.bl_serviceCard_link__houseMedicine::before{
	background-image: url(../img/common/icon-house-medicine.png);
	aspect-ratio: 100/102;
}
.bl_serviceCard_link.bl_serviceCard_link__note::before{
	background-image: url(../img/common/icon-note.png);
	aspect-ratio: 100/127;
	width: 80px;
}
.bl_serviceCard_link.bl_serviceCard_link__bee::before{
	background-image: url(../img/common/icon-bee.png);
	aspect-ratio: 100/101;
}
@media screen and (max-width:992px){
	.bl_serviceCardArea {
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
		margin-bottom: 30px;
	}
	.bl_serviceCard_link{
		aspect-ratio: initial;
		padding: 130px 5px 25px;
		font-size: var(--fontSize16);
	}
	.bl_serviceCard_link::before{
		width: 80px;
	}
	.bl_serviceCard_link::before{
		top: 30px;
	}
	.bl_serviceCard_link.bl_serviceCard_link__note::before{
		width: 64px;
		top: 21px;
	}
	.bl_serviceCard_link.bl_serviceCard_link__pcMedicine::before{
		width: 100px;
	}
	.js_ServiceBtn_move{
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:576px){
	.bl_serviceCard_link{
		padding: 110px 5px 20px;
	}
	.bl_serviceCard_link::before{
		width: 65px;
	}
	.bl_serviceCard_link.bl_serviceCard_link__pcMedicine::before{
		width: 75px;
		top: 36px;
	}
	.bl_serviceCard_link.bl_serviceCard_link__note::before{
		width: 55px;
		top: 24px;
	}
	.bl_serviceCard_link.bl_serviceCard_link__training::before{
		width: 60px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	催事カレンダー
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_calendar{
	padding-top: clamp(80px, calc(140 / var(--vw-base) * 100vw), 140px);
	padding-bottom: clamp(80px, calc(127 / var(--vw-base) * 100vw), 127px);
	position: relative;
}
.ly_calendar::after{
	content: '';
	display: block;
	max-width: 1217px;
	width: 100%;
	aspect-ratio: 1217/673;
	background-image: url(../img/top/bg-circle-orange.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -140px;
	right: -337px;
	z-index: -1;
}
.bl_calendarArea{
	background-color: #fff;
	padding: 40px;
	border-radius: min(67px, 6vw);
}
.bl_calendarArea__Mobile{
	display: none;
}
.un_eventCalendarNote{
	font-size: var(--fontSize14);
	padding: 10px 20px;
}
.un_eventCalendarNote a{
	text-decoration: underline;
	font-weight: 700;
	/* font-size: var(--fontSize15); */
}
@media screen and (max-width:992px){
	.ly_calendar{
		max-width: 800px;
		margin-left: auto;
		margin-right: auto;
	}
	.ly_calendar::after{
		max-width: 300px;
		top: 0px;
		right: 0px;
	}
	.bl_calendarArea{
		padding: 0 15px;
	}
	.bl_calendarArea__Desktop{
		display: none;
	}
	.bl_calendarArea__Mobile{
		display: block;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	活動報告
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_activity{
	padding-top: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	padding-bottom: clamp(80px, calc(154 / var(--vw-base) * 100vw), 154px);
	background-image: linear-gradient(rgba(255,255,255,0.7), rgba(255,255,255,0.7)),
	url(../img/top/bg-kirakira.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.bl_activityArea{
	padding-top: clamp(50px, calc(117 / var(--vw-base) * 100vw), 117px);
	padding-bottom: clamp(50px, calc(117 / var(--vw-base) * 100vw), 117px);
	box-shadow: 0 0 10px rgb(64 172 156 / 25%);
	border-radius: min(67px, 6vw);
	background-color: #fff;
}
.grid_cardTextArea{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
    gap: 35px;
	margin-bottom: 75px;
}
.bl_cardImg{
	border-radius: 15px;
	overflow: hidden;
	margin-bottom: 10px;
	aspect-ratio: 3 / 2;
}
.bl_cardImg img{
	max-width: initial;
	width: 100%;
	height: 100%;
	object-position: center center;
}
.bl_cardTime{
	font-size: var(--fontSize25);
	font-weight: 700;
	color: var(--mainColor);
}
@media screen and (max-width:992px){
	.grid_cardTextArea{
		grid-template-columns: repeat(2, 1fr);
		gap: 40px 20px;
		margin-bottom: 50px;
	}
	.bl_cardImg{
		margin-bottom: 10px;
	}
	.bl_activityArea .el_btn_base{
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:576px){
	.bl_cardTime{
		font-size: var(--fontSize20);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	私たちについて
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_about{
	padding-top: clamp(80px, calc(220 / var(--vw-base) * 100vw), 220px);
	padding-bottom: clamp(80px, calc(150 / var(--vw-base) * 100vw), 150px);
	position: relative;
}
/* .ly_about::after{
	content: '';
    display: block;
    max-width: 814px;
    width: 100%;
    aspect-ratio: 814 / 494;
    background-image: url(../img/top/bg-circle-green.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -80px;
    left: -254px;
    z-index: 0;
} */
.bl_about_mvArea{
	margin-bottom: -7vw;
	text-align: center;/* ブラウザ拡大時中央寄せ */
	position: relative;
	z-index: -1;/* 最背面に移動 */
}
.bl_about_container{
	padding-top: clamp(50px, calc(175 / var(--vw-base) * 100vw), 175px);
	padding-bottom: clamp(50px, calc(175 / var(--vw-base) * 100vw), 175px);
	position: relative;
	/* overflow: hidden; */
	z-index: 0;
}
.bl_about_container::before{/* はみ出すコンテンツがあるため背景は疑似要素で指定 */
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: -1px;/* 親の高さに合わせる */
	background-image: 
	linear-gradient(
		135deg, /* 角度を指定 */
		rgb(64 172 156 / 100%) 0%,   /* 上 */
		/* rgb(64 172 156 / 100%) 90%, */
		rgb(133 212 144 / 90%) 100%  /* 下 */
	),
	url(../img/common/bg-texture-gradient.jpg);
  
	background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
    border-radius: min(122px, 6vw);
	/* 背景幅指定↓ */
    max-width: calc(1600px + 20px);
	width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    z-index: -1; /* コンテンツの背面に表示 */
}
.bl_about_container::after{
	content: '';
    display: block;
    max-width: 814px;
    width: 100%;
    aspect-ratio: 814 / 494;
    background-image: url(../img/top/bg-circle-green.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -210px;
    left: -254px;
    z-index: 0;
}
.bl_about_titleTextWrap{
	display: grid;
	grid-template-columns: repeat(2, auto); /* 2カラム、各カラムは同じ幅 */
	justify-content: flex-start;
	gap: 0 110px;
	position: relative;
	border-bottom: 1px solid rgb(255 255 255 / 30%);
	margin-bottom: clamp(50px, calc(130 / var(--vw-base) * 100vw), 130px);
}
.bl_about_text{
	color: #fff;
	padding-bottom: calc(204px + 5px);/* イメージ画像領域確保 + 余白 */
	position: relative;
	line-height: 1.7;
}
.bl_about_text::before{
	content: '';
	display: block;
	width: 256px;
	aspect-ratio: 256/204;
	background-image: url(../img/top/bg-doctor-patient.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: bottom right;
	mix-blend-mode: multiply;
	position: absolute;
	bottom: 0;
	right: -8vw;
	z-index: -1;
}
.js_aboutBtn_move .fileInfo{
	/* PDFのファイルサイズを消す */
	display: none;
}
@media screen and (max-width:992px){
	.bl_about_titleTextWrap{
		grid-template-columns: auto;
		flex-direction: column;
		justify-content: center;
		position: relative;
		align-items: flex-start;
		padding-bottom: 50px;
	}
	.bl_about_titleTextWrap .el_btn_base{
		margin-left: auto;
		margin-right: auto;
	}
	.bl_about_text{
		padding-bottom: calc(159px + 5px);
		margin-bottom: 30px;
	}
	.bl_about_text::before{
		width: 200px;
		bottom: 0;
		right: 0;
	}
	.js_aboutBtn_move{
		/* margin-top: calc(180px + 20px); */
		
	}
	.js_aboutBtn_move::before{
		/* 疑似要素をボタンに付与する */
		/* content: '';
		display: block;
		width: 180px;
		aspect-ratio: 256/204;
		background-image: url(../img/top/bg-doctor-patient.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: bottom right;
		mix-blend-mode: multiply;
		position: absolute;
        bottom: 72px;
        right: 5px;
		z-index: -1; */
	}
}
@media screen and (max-width:768px){
	.bl_about_container::before{/* はみ出すコンテンツがあるため背景は疑似要素で指定 */
		background-image: 
		linear-gradient(
			135deg, /* 角度を指定 */
			rgb(64 172 156 / 100%) 0%,   /* 上 */
			rgb(64 172 156 / 100%) 70%,
			rgb(133 212 144 / 90%) 100%  /* 下 */
		),
		url(../img/common/bg-texture-gradient.jpg);
	}
}
@media screen and (max-width:576px){
	.bl_about_text{
		text-align: justify;
	}
}
/* ******************************************************************************************
	画像+テキスト
****************************************************************************************** */
.bl_overImgTextArea{
	display: flex;
	gap: 30px 100px;
	align-items: center;
	position: relative;
	z-index: 1;/* 親の装飾（透過の丸緑）背景の重なり防止 */
}
.bl_overImgTextArea+.bl_overImgTextArea{
	margin-top: 45px;
}
.bl_overImageWrap{
	max-width: calc(100% - 560px);
	width: 100%;
}
.bl_overImageWrap img{
	box-shadow: 0 0 11px rgb(0 0 0 / 25%);
	overflow: hidden;
	min-height: 450px;
}
.bl_innerTextWrap{
	color: #fff;
}
.bl_innerTextWrap p{
	line-height: 1.7;
	width: 560px;
}
.bl_innerTextWrap h3{
	position: relative;
	display: inline-block;
	font-size: var(--fontSize28);
	white-space: nowrap;
	margin-bottom: 20px;
}
.bl_innerTextWrap h3::before{
	content: '';
	display: block;
	width: 90%;
	height: 13px;
	background-color: rgb(255 219 0 / 47%);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
/* コンテンツ奇数の場合 */
.bl_overImgTextArea:nth-child(odd){
	flex-direction: row-reverse;
	margin-left: max(calc((100vw - 1220px) / 2), 20px);/* calcでインナー外側の余白計算と0の場合20px適用 */
	margin-right: 0;
}
.bl_overImgTextArea:nth-child(odd) .bl_overImageWrap img{
	border-radius: min(49px, 5vw) 0 0 min(49px, 5vw);
}

/* コンテンツ偶数の場合、 */
.bl_overImgTextArea:nth-child(even){
	flex-direction: row;
	margin-right: max(calc((100vw - 1220px) / 2), 20px);/* calcでインナー外側の余白計算と0の場合20px適用 */
	margin-left: 0;
}
.bl_overImgTextArea:nth-child(even) .bl_overImageWrap img{
	border-radius: 0 min(49px, 5vw) min(49px, 5vw) 0;
}
@media screen and (max-width:992px){
	.bl_overImgTextArea+.bl_overImgTextArea{
		margin-top: 80px;
	}
	.bl_overImgTextArea .bl_overImageWrap img{
		min-height: initial;
	}
	.bl_overImgTextArea:nth-child(odd),.bl_overImgTextArea:nth-child(even){
		flex-direction: column;
	}
	.bl_overImgTextArea:nth-child(odd){
		align-items: end;
		margin-left: 0;
	}
	.bl_overImgTextArea:nth-child(even){
		align-items: flex-start;
		margin-right: 0;
	}
	.bl_innerTextWrap{
		align-self: center;
		max-width: 640px;
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}
	.bl_innerTextWrap p{
		width: initial;
	}
	.bl_overImageWrap{
		max-width: 880px;
	}
	.bl_overImgTextArea:nth-child(odd) .bl_overImageWrap{
		padding-left: 20px;
	}
.bl_overImgTextArea:nth-child(even) .bl_overImageWrap{
		padding-right: 20px;
	}
	.bl_innerTextWrap h3{
		white-space: initial;
		margin-bottom: 30px;
	}
}
@media screen and (max-width:576px){
	.bl_innerTextWrap h3{
		font-size: var(--fontSize20);
	}
	.bl_innerTextWrap h3{
		letter-spacing: 0;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	採用情報
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	レイアウト
****************************************************************************************** */
.ly_recruit{
	/* padding-top: clamp(100px, calc(140 / var(--vw-base) * 100vw), 140px); */
	padding-bottom: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	background-image: linear-gradient(
		rgba(255,255,255,1) 0%,        /* 上 */
		rgba(255,255,255,1) 10%,     /* 中間の追加色 */
		rgba(255,255,255,0.4) 100%     /* 下 */
	  ),
	  url(../img/top/bg-kirakira.jpg);
}
.bl_recruitContainer{
	position: relative;
	padding-top: clamp(50px, calc(115 / var(--vw-base) * 100vw), 115px);
	padding-bottom: clamp(50px, calc(82 / var(--vw-base) * 100vw), 82px);
	display: flex;
	gap: clamp(30px, 3vw, 50px);
}
.bl_recruitContainer::before{/* はみ出すコンテンツがあるため背景は疑似要素で指定 */
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; /* 親の高さに合わせる */
	box-shadow: 0 0 10px rgb(64 172 156 / 25%);
    border-radius: min(122px, 6vw);
	/* 背景幅指定↓ */
    max-width: calc(1600px + 20px);
	width: 100%;
    margin-right: auto;
    margin-left: auto;
	margin-bottom: 30px;/* 写真はみ出し分 */
    padding-right: 10px;
    padding-left: 10px;
	background-color: #fff;
}
@media screen and (max-width:992px){
	.bl_recruitContainer{
		flex-direction: column;
	}
	.bl_recruitContainer{
		padding-bottom: 0px;
		gap: 50px 0;
	}
}
/* ******************************************************************************************
	説明部分
****************************************************************************************** */
.bl_recruit_contentsWrap{
	margin-left: max(calc((100vw - 1220px) / 2), 20px);/* calcでインナー外側の余白計算と0の場合20px適用 */
	min-width: 555px;
	position: relative;/* コンテンツ重なり防止 */
}
.bl_recruit_contents h3{
	font-size: var(--fontSize26);
	font-weight: 700;
	margin-bottom: 30px;
}
.bl_recruit_contents p{
	margin-bottom: 50px;
}
.bl_recruitBtnWrap{
	display: flex;
	gap: 30px 10px;
	flex-direction: column;
}
@media screen and (max-width:992px){
	.bl_recruit_contentsWrap{
		min-width: initial;
		max-width: 640px;
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
		margin-left: auto;
		margin-right: auto;
	}
	.bl_recruit_contents p{
		margin-bottom: 20px;
	}
	.bl_recruitBtnWrap .el_btn_base{
		margin-left: auto;
		margin-right: auto;
	}
	.bl_recruitBtnWrap{
		flex-direction: row;
	}
}
@media screen and (max-width:576px){
	.bl_recruit_contents h3{
		font-size: var(--fontSize20);
	}
	.bl_recruitBtnWrap{
		flex-direction: column;
		row-gap: 10px;
	}
}
/* ******************************************************************************************
	画像部分
****************************************************************************************** */
.bl_recruit_overImageWrap{
	padding-right: calc((100vw - 1620px) / 2 - 38px);/* 画像部分をワイドインナーの右に揃え、外側の余白部分を計算。少しはみ出させるため38px引く */
}
.bl_recruit_overImageWrap img{
	filter: drop-shadow(0 0 4px rgb(0 0 0 / 25%));
}
@media screen and (max-width:992px){
	.bl_recruit_overImageWrap{
		/* max-width: 640px;
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
		margin-left: auto;
		margin-right: auto; */
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	パンフレット
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_brochureArea{
	padding-top: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	padding-bottom: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	position: relative;
	z-index: 0;
}
.ly_brochureInner{
	padding-top: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	padding-bottom: clamp(80px, calc(135 / var(--vw-base) * 100vw), 135px);
	box-shadow: 0 0 10px rgb(64 172 156 / 25%);
    border-radius: min(122px, 6vw);
    max-width: calc(1600px + 20px);
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 30px;
    padding-right: 10px;
    padding-left: 10px;
    background-color: #fff;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	バナーエリア
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.ly_bannerArea{
	padding-top: clamp(30px, calc(110 / var(--vw-base) * 100vw), 60px);
	padding-bottom: clamp(30px, calc(130 / var(--vw-base) * 100vw), 60px);
	background-color: #f6f6f6;
}
.bl_groupCompanyBnrArea{
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3カラム、各カラムは同じ幅 */
	gap: 20px;
}
.bl_bannerImgLink{
	text-align: center;
	max-width: 700px;
	width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
	background-color: #fff;
}
@media screen and (max-width:1200px){
	.bl_groupCompanyBnrArea{
		grid-template-columns: repeat(2, 1fr); /* 3カラム、各カラムは同じ幅 */
		gap: 10px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	フッター
//////////////////////////////////////////////////////////////////////////////////////////////////// */
footer:has(+.ly_section){
	margin-top: 100px;
}
/* ******************************************************************************************
	お問い合わせ
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerContactArea{
	padding-top: clamp(60px, calc(140 / var(--vw-base) * 100vw), 140px);
	padding-bottom: calc(68px + 100px);/* ネガティブマージン領域確保分(角丸分) + 余白 */
	margin-bottom: -68px;
	background-image: linear-gradient(
		180deg,
		rgb(19 53 28 / 58%) 0%,
		rgb(19 53 28 / 58%) 50%,
		rgb(19 53 28 / 58%) 100%
		),
		url(../img/common/bg-family.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position-x: center;
	background-position-y: clamp(75%, 50%, 100%);/* 最小 , 通常 , 最大 */
}
@media screen and (max-width:600px){
	.bl_footerContactArea{
		padding-bottom: calc(68px + 70px);/* ネガティブマージン領域確保分(角丸分) + 余白 */	
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	見出し
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerContactArea h2{
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 20px;
	font-size: var(--fontSize28);
	font-weight: 700;
	position: relative;
	color: #fff;
	margin-bottom: 40px;
}
.bl_footerContactArea h2::before{
	content: '';
	display: block;
	width: 100px;
	height: 2px;
	background-color: rgb(255 255 255 / 50%);
	position: absolute;
	bottom: 0;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	リンク > レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerContactWrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 30px 30px;
}
@media screen and (max-width:1200px){
	.bl_footerContactWrap{
		flex-direction: column;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	リンクボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerContactLink{
	display: block;
	padding-left: calc(60px + 30px);/* アイコン領域確保分 + 余白 */
	position: relative;
	color: #fff;
}
.bl_footerContactLink.bl_footerContactLink__tel{
	font-family: "Inter", sans-serif;
	font-size: var(--fontSize60);
	font-weight: 700;
	letter-spacing: 5px;
}
.bl_footerContactLink.bl_footerContactLink__mail{
	font-size: var(--fontSize40);
	font-weight: 700;
}
.bl_footerContactLink::before{
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	width: 62px;
}
.bl_footerContactLink.bl_footerContactLink__tel::before{
	top: 17px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-tel.png);
}
.bl_footerContactLink.bl_footerContactLink__mail::before{
	top: 12px;
	aspect-ratio: 62/40;
	background-image: url(../img/common/icon-mail.png);
}
@media screen and (max-width:600px){
	.bl_footerContactLink{
		padding-left: 0;
		padding-top: calc(45px + 5px);
	}
	.bl_footerContactLink.bl_footerContactLink__tel{
		font-size: var(--fontSize32);
	}
	.bl_footerContactLink.bl_footerContactLink__mail{
		font-size: var(--fontSize24);
	}
	.bl_footerContactLink::before{
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: 45px;
	}
	.bl_footerContactLink.bl_footerContactLink__tel::before{
		top: 0;
	}
	.bl_footerContactLink.bl_footerContactLink__mail::before{
		top: 8px;
	}
}
/* ******************************************************************************************
	フッターインフォエリア
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footerInfoArea{
	padding-top: clamp(40px, calc(140 / var(--vw-base) * 100vw), 140px);/* 最小90px, 最大140px */
	padding-bottom: clamp(40px, calc(140 / var(--vw-base) * 100vw), 140px);/* 最小90px, 最大140px */
	background-image: linear-gradient(
		135deg, /* 角度を指定 */
		rgb(64 172 156) 0%,/* 上 */
		rgb(133 212 144 / 90%) 100%/* 下 */
		),
		url(../img/common/bg-texture-gradient.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	border-top-left-radius: 68px;
	border-top-left-radius: min(68px, 6vw);
	position: relative;
	overflow: hidden;
}
.grid_footer_menu{
	display: grid;
	grid-template-columns: repeat(3, auto);
	grid-template-areas:
	"area_footerInfoWrap area_footer_menuSiteMap area_footer_menuKanrenWrap";
	gap: 20px;
	justify-content: space-between;
	padding-bottom: 73px;
	border-bottom: 1px solid rgb(255 255 255 / 55%);
	margin-bottom: 60px;
}
.area_footerInfoWrap{
	grid-area: area_footerInfoWrap;
}
.area_footer_menuSiteMap{
	grid-area: area_footer_menuSiteMap;
}
.area_footer_menuKanrenWrap{
	grid-area: area_footer_menuKanrenWrap;
}
.ly_footerInner{
	max-width: calc(1600px + 40px);/* 設定したい基準幅 + 余白分 */
	width: 100%;
	padding-right: 20px;
	padding-left: 20px;
	margin-right: auto;
	margin-left: auto;
}
.bl_footer_menuKanrenWrap{
	display: flex;
	gap: 50px 50px;
}
@media screen and (max-width:1600px){
	.grid_footer_menu{
		grid-template-columns: auto auto 1fr;
		gap: 50px;
	}
	.bl_footer_menuKanrenWrap{
		flex-direction: column;
	}
}
@media screen and (max-width:1300px){
	.grid_footer_menu{
		grid-template-columns: auto 1fr;
		grid-template-rows: 1fr auto;
		grid-template-areas:
		"area_footerInfoWrap area_footer_menuKanrenWrap"
		"area_footer_menuSiteMap area_footer_menuSiteMap";
		padding-bottom: 0;
	}
}
@media screen and (max-width:992px){
	footer{
		padding-bottom: 70px;/* 追従ボタン領域確保分 */
	}
	.grid_footer_menu{
		grid-template-columns: 1fr;
		grid-template-rows: 1fr;
		grid-template-areas:
		"area_footerInfoWrap"
		"area_footer_menuKanrenWrap"
		"area_footer_menuSiteMap";
		margin-bottom: 30px;
	}
	.bl_footerInfoWrap,.bl_footer_menuKanrenWrap{
		max-width: 600px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (max-width:768px){
	.grid_footer_menu{
		margin-bottom: 10px;
	}
	.bl_footerInfoArea{
		padding-bottom: 0;
		/* padding-right: 100px; */
	}
}
@media screen and (max-width:576px){
	footer{
		padding-bottom: 50px;/* 追従ボタン領域確保分 */
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	会社名
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footer_companyTitle{
	margin-bottom: 40px;
}
.bl_footer_companyTitle_link{
	color: #fff;
}
.bl_footer_companyName{
	font-weight: 700;
}
.bl_footer_companyName.bl_footer_companyName__sub{
	font-size: var(--fontSize26);
	letter-spacing: 1px;
}
.bl_footer_companyName.bl_footer_companyName__main{
	font-size: var(--fontSize38);
	letter-spacing: 2px;
}
@media screen and (max-width:992px){
	.bl_footer_companyTitle_link{
		white-space: nowrap;
	}
	.bl_footer_companyName.bl_footer_companyName__sub{
		font-size: var(--fontSize21);
		letter-spacing: 1px;
	}
	.bl_footer_companyName.bl_footer_companyName__main{
		font-size: var(--fontSize30);
		letter-spacing: 2px;
	}
}
@media screen and (max-width:576px){
	.bl_footer_companyTitle{
		margin-bottom: 20px;
	}
	.bl_footer_snsBtn_link{
		width: 50px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	情報
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footer_info{
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-bottom: 30px;
}
.bl_footer_info address,.bl_footer_info a,.bl_footer_info p{
	color: #fff;
}
@media screen and (max-width:576px){
	.bl_footer_info{
		margin-bottom: 15px;
	}
	.bl_footer_info a{
		align-self: flex-start;/* 要素領域をリンク幅に合わせる */
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	フッターメニュー
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footer_menuSiteMap{
	width: 300px;
}
.bl_footer_menuSiteMap a{
	color: #fff;
	font-size: var(--fontSize19);
	padding: 10px;
	display: block;
}
.bl_footer_menuSiteMap li+li{
	border-top: 1px solid rgb(255 255 255 / 30%);
}
@media screen and (max-width:1300px){
	.bl_footer_menuSiteMap{
		width: 100%;
	}
	.bl_footer_menuSiteMap ul{
		display: grid;
		grid-template-columns: repeat(6, auto);
		justify-content: center;
		border-top: 1px solid rgb(255 255 255 / 55%);
	}
	.bl_footer_menuSiteMap li+li{
		border-top: none;
	}
}
@media screen and (max-width:768px){
	.bl_footer_menuSiteMap ul{
		grid-template-columns: repeat(3, auto);
		justify-content: flex-start;
		padding: 20px;
		gap: 10px 20px;
	}
	.bl_footer_menuSiteMap a{
		padding: 0;
	}
}
@media screen and (max-width:576px){
	.bl_footer_menuSiteMap ul{
		grid-template-columns: repeat(2, auto);
		justify-content: flex-start;
		padding: 20px;
		gap: 10px 70px;
	}
	.bl_footer_menuSiteMap a{
		font-size: var(--fontSize16);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	関連会社・関連サイト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_footer_menuKanren h2{
	font-size: var(--fontSize23);
	color: #fff;
	position: relative;
	padding-left: 27px;
	margin-bottom: 20px;
}
.bl_footer_menuKanren h2::before{
	content: '';
	display: block;
	width: 15px;
	aspect-ratio: 1/1;
	background-color: #ffdb00;
	position: absolute;
	top: 9px;
	left: 0;
	border-radius: 20px;
}
.bl_footer_menuKanren li+li{
	margin-top: 10px;
}
.bl_footer_menuKanren a{
	color: #fff;
	font-size: var(--fontSize19);
}
@media screen and (max-width:576px){
	.bl_footer_menuKanren h2{
		font-size: var(--fontSize21);
		margin-bottom: 10px;
	}
	.bl_footer_menuKanren a{
		font-size: var(--fontSize16);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	コピーライト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_copyrightArea{
	margin-bottom: 30px;
}
.bl_copyrightWrap{
	display: flex;
	justify-content: space-between;
}
.bl_copyrightWrap a{
	color: #fff;
}
.bl_copyrightWrap p{
	color: #fff;
	font-size: var(--fontSize18);
}
@media screen and (max-width:768px){
	.bl_copyrightArea{
		margin-bottom: 0;
	}
	.bl_copyrightWrap{
		flex-direction: column;
		gap: 30px;
	}
	.bl_copyrightWrap a{
		font-size: var(--fontSize16);
		padding-left: 20px;
		align-self: flex-start;
	}
	.bl_copyrightWrap p{
		font-size: var(--fontSize14);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	トップへ戻る
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_pageTop {
	position: fixed;
	bottom: -30px;
	right: -55px;
	background-color: #fff;
	box-shadow: 0 0 18px rgb(0 0 0 / 25%);
	width: 235px;
	height: 120px;
	padding: 30px;
	border-radius: 50% 50% 50% 50% / 50% 50% 50% 50%;
	transform: rotate(-12deg);
	z-index: 10;
	/* ↓ボタンを非表示 */
	opacity: 0;
	visibility: hidden;
	pointer-events: none; /* 非表示時にクリックできないように */
	transition: opacity 0.4s ease;
}
.bl_pageTop.js_showStyle {
	/* ↓ボタンを表示 */
	opacity: 1;
	visibility: visible;
	pointer-events: auto;

}
.bl_pageTop::before{
	content: '';
	display: block;
	width: 14px;
	aspect-ratio: 1/1;
	background-image: url(../img/common/icon-arrow-only-green.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
    top: 20px;
    left: 109px;
	transform: rotate(12deg); /* 文字だけ元に戻す */
}

.bl_pageTop span {
  transform: rotate(12deg); /* 文字だけ元に戻す */
  display: inline-block;
  position: absolute;
  top: 38px;
  left: 85px;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: var(--fontSize24);
  color: var(--mainColor);
}
@media screen and (max-width:992px){
	.bl_pageTop {
		/* bottom: -15px; */
		/* right: -80px; */
		width: 180px;
		height: 90px;
		position: absolute;
		z-index: 0;
		/* SPは追従なしのフッターに常に表示 */
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	.bl_pageTop::before{
		top: 12px;
		left: 81px;
	}
	.bl_pageTop span {
		top: 26px;
		left: 62px;
		font-size: var(--fontSize21);
	  }
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	セカンドページ
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	汎用サブビジュアル
****************************************************************************************** */
.ly_subVisual{
	position: relative;
	margin-top: -45px;/* Gメニュー角丸分だけネガティブマージン付与 */
}
.ly_subVisual::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image:
	linear-gradient(135deg, rgb(64 172 156 / 100%) 0%, rgb(133 212 144 / 90%) 100%),
    url(../img/common/bg-texture-gradient.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
	z-index: -1;
}
.ly_subVisual.ly_subVisual__wave::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image:
    url(../img/common/bg-texture-wave.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right;
	opacity: 0.5;
	z-index: -1;
}
.bl_subVisualArea{
	max-width: 1600px;
	width: 100%;
    margin-right: auto;
    margin-left: auto;
	padding-top: clamp(40px, calc(145 / var(--vw-base) * 100vw), 145px);
	padding-bottom: clamp(40px, calc(145 / var(--vw-base) * 100vw), 145px);
	display: flex;
	align-items: center;
}
.bl_subVisual_title{
	font-size: clamp(28px, calc(62 / var(--vw-base) * 100vw), 62px);
	color: #fff;
	font-weight: 700;
	margin-top: 45px;/* ネガティブマージン分補完 */
    padding-right: clamp(20px, calc(50 / var(--vw-base) * 100vw), 50px);
    padding-left: clamp(20px, calc(50 / var(--vw-base) * 100vw), 50px);
}
@media screen and (max-width:992px){
	.ly_subVisual{
		margin-top: 0;
	}
	.ly_subVisual.ly_subVisual__wave::after{
		background-size: cover;
	}
	.bl_subVisual_title{
		margin-top: 0;
	}
}
/* ******************************************************************************************
	サービス > サブビジュアル
****************************************************************************************** */
.parent-pageid-22 .ly_subVisual{
	position: relative;
	margin-top: -45px;/* Gメニュー角丸分だけネガティブマージン付与 */
}
.parent-pageid-22 .ly_subVisual::before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(135deg, /* 角度を指定 */ rgb(64 172 156 / 100%) 0%, /* 上 */ rgb(133 212 144 / 90%) 100% /* 下 */), url(../img/common/bg-texture-gradient.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: bottom;
	margin-bottom: var(--service-overSpacing);/* 画像はみ出し分 */
	z-index: -1;
}
.parent-pageid-22 .bl_subVisualArea{
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: calc(504px + 45px + var(--service-overSpacing));/* 高さ確保分 + Gメニュー重なりネガティブマージン分補完 + 画像はみ出し領域補完 */
	max-width: 1750px;
	width: 100%;
	margin-left: auto;
	margin-right: 0;
	padding-left: 20px;
	padding-right: 0;
	padding-top: 0;
	padding-bottom: 0;
	gap: 30px;
	position: relative;
}
.parent-pageid-22 .bl_subVisualTitle{
	padding-left: clamp(75px, 10vw, 188px);
	position: relative;
	margin-bottom: var(--service-overSpacing);/* 画像はみ出し分 */
	white-space: nowrap;
}
.parent-pageid-22 .bl_subVisualTitle::before{
	content: '';
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
    width: clamp(60px, 7vw, 130px);
}
.line-prescription .bl_subVisualTitle::before{
	background-image: url(../img/common/icon-smartphone-line.png);
    aspect-ratio: 100 / 101;
}
.electronic-prescription .bl_subVisualTitle::before{
	background-image: url(../img/common/icon-pc-medicine.png);
	aspect-ratio: 100/70;
}
.online-medication-counseling .bl_subVisualTitle::before{
	background-image: url(../img/common/icon-tv-doctor.png);
	aspect-ratio: 100/98;
}
.pharmacist-home-visit .bl_subVisualTitle::before{
	background-image: url(../img/common/icon-house-medicine.png);
	aspect-ratio: 100/102;
}
.apivar .bl_subVisualTitle::before{
	background-image: url(../img/common/icon-bee.png);
	aspect-ratio: 100/101;
}
.parent-pageid-22 .bl_subVisualTitle span{
	display: block;
	color: #fff;
}
.parent-pageid-22 .bl_subVisualTitle_main{
	font-size: clamp(25px, 4vw, 63px);
}
.parent-pageid-22 .bl_subVisualTitle_sub{
	font-size: clamp(14px, 2vw, 33px);
}
.parent-pageid-22 .bl_subVisualImg{
	max-width: 658px;
	max-height: 421px;
	/* width: 100%; */
	width: 35vw;
	height: 100%;
	border-radius: min(53px, 6vw) 0 0 min(53px, 6vw);
	overflow: hidden;
	align-self: end;
}
.parent-pageid-22 .bl_subVisualImg img{
	height: 100%;
	width: 100%;
}
@media screen and (max-width:992px){
	.parent-pageid-22 .ly_subVisual{
		margin-top: -20px;
	}
	.parent-pageid-22 .bl_subVisualArea{
		flex-direction: column;
		height: initial;
		padding-top: 80px;
		padding-bottom: 100px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.parent-pageid-22 .bl_subVisualImg{
		width: 18vw;
		height: initial;
		aspect-ratio: 1/1;
		position: absolute;
		bottom: 0;
		right: 0;
		box-shadow: 0 0 8px rgb(0 153 0 / 25%);
	}
}
@media screen and (max-width:576px){
	.parent-pageid-22 .bl_subVisualImg{
		width: 100px;
	}
}
/* ******************************************************************************************
	サービス > Lineで処方箋送付
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ご利用方法
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_lineRiyouWrap{
	background-color: rgb(221 203 170 / 15%);
	padding: 143px 20px 100px 20px;
	border-radius: 71px;
}
.grid_iconCard3col{
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* 3カラム、各カラムは同じ幅 */
	gap: 70px 30px; /* カラム間の間隔 */
}
.bl_card_itemOnIcon{
	border: 3px solid var(--mainColor);
	box-shadow: 0 0 8px rgb(0 153 0 / 25%);
	border-radius: 30px;
	position: relative;
	background-color: #fff;
}
.bl_card_itemOnIcon::before{
	content: '';
	display: block;
	width: 191px;
	height: 74px;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -36px;
	left: 38px;
}
.bl_card_itemOnIcon:nth-of-type(1):before{
	background-image: url(../img/page/icon-step-01.png);
}
.bl_card_itemOnIcon:nth-of-type(2):before{
	background-image: url(../img/page/icon-step-02.png);
}
.bl_card_itemOnIcon:nth-of-type(3):before{
	background-image: url(../img/page/icon-step-03.png);
}
.bl_card_itemOnIcon img{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-left: auto;
	margin-right: auto;
	padding: 60px 20px 0 20px;
}
.bl_card_itemOnIcon p{
	padding: 40px 20px 70px 20px;
	text-align: center;
	font-size: clamp(20px, calc(28 / var(--vw-base) * 100vw), 28px);/* 最小50px, 最大28px */
	font-weight: 700;
	color: var(--fontMainColor);
}
.bl_card_itemOnIcon p span{
	color: var(--black);
	font-size: clamp(16px, calc(20 / var(--vw-base) * 100vw), 20px);;
}
@media screen and (max-width:992px){
	.grid_iconCard3col{
		grid-template-columns: 1fr;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}
}
/* ******************************************************************************************
	サービス > 電子処方箋の取り扱い
****************************************************************************************** */
.bl_flowArea{
	background-color: #fff;
	padding: 40px 20px 60px;
	border-radius: min(43px, 6vw);
	display: flex;
	justify-content: center;
	align-items: center;
}
/* ******************************************************************************************
	サービス > オンライン服薬指導
****************************************************************************************** */
.bl_onlineAboutWrap{
	background-color: #faf7f2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 70px;
	padding: clamp(50px, calc(90 / var(--vw-base) * 100vw), 90px) 20px;
	/* min-height: 810px; */
	/* height: 810px; */
	box-shadow: 0 0 10px rgb(0 0 0 / 15%);
	border-radius: min(90px,7vw);
}
.bl_onlineAboutWrap p{
	font-size: var(--fontSize35);
	font-weight: 700;
	text-align: center;
}
@media screen and (max-width:768px){
	.bl_onlineAboutWrap{
		gap: 35px;
	}
	.bl_onlineAboutWrap p{
		font-size: var(--fontSize28);
	}
}
@media screen and (max-width:576px){
	.bl_onlineAboutWrap p{
		font-size: var(--fontSize21);
	}
}
/* ******************************************************************************************
	サービス > 薬剤師在宅訪問サービス
****************************************************************************************** */
.bl_checkList_wrap{
	margin-left: max(calc((100vw - 1220px) / 2), 20px);
	margin-right: 20px;
	display: flex;
	align-items: end;
	gap: 20px min(120px,7vw);
}
.bl_checkList{
	max-width: 790px;
	width: 100%;
}
.bl_checkList_item{
	font-size: var(--fontSize28);
	font-weight: 700;
	padding: 40px 20px 40px calc(52px + 40px);/* アイコン幅 + 余白 */
	position: relative;
	border-bottom: 1px dashed #9b9b9c;
}
.bl_checkList_item::before{
	content: '';
	display: block;
	width: 52px;
	aspect-ratio: 1/1;
	background-image: url(../img/page/icon-circle-pink-check.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
}
/* デジタルパンフレット */
.df-app{
	position: relative;
	z-index: 0;/* スマホ時、追従ボタン重なり防止 */
}
@media screen and (max-width:1200px){
	.bl_checkList_wrap{
		max-width: calc(1200px + 40px);/* 設定したい基準幅 + 余白分 */
		width: 100%;
		padding-right: 20px;
		padding-left: 20px;
		margin-right: auto;
		margin-left: auto;
		flex-direction: column;
		align-items: center;
	}
	.bl_checkList_item{
		font-size: clamp(22px, calc(28 / var(--vw-base) * 100vw), 28px);/* 最小22px, 最大28px */
	}
	.bl_checkList_img{
		align-self: end;
		max-width: 300px;
		position: relative;
		/* z-index: 1; */
		margin-top: -100px;
	}
}
@media screen and (max-width:768px){
	.bl_checkList_img{
		margin-top: -50px;
		max-width: 200px;
	}
}
@media screen and (max-width:576px){
	.bl_checkList_item{
		padding: 40px 0 40px calc(32px + 20px);/* アイコン幅 + 余白 */
	}
	.bl_checkList_item::before{
		width: 32px;
	}
}
/* ******************************************************************************************
	サービス > アピバールの取り扱い
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	ダウンロードアイコン付きボタン
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.el_btn_download{
	background-color: #f7a539;
	padding: 17px calc(31px + 36px + 30px) 17px 47px;/* アイコン幅 + 移動距離 + 余白 */
	max-width: 366px;
	display: block;
	border-radius: 15px;
	box-shadow: 5px 5px 0 rgb(247 165 57 / 32%);
	color: #fff;
	position: relative;
	font-size: var(--fontSize28);
	font-weight: bold;
}
.el_btn_download::after{
	content: '';
	display: block;
	width: 31px;
	aspect-ratio: 31/27;
	background-image: url(../img/common/icon-download-white.png);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 36px;
	transform: translateY(-50%);
}
/* ファイルサイズ出力非表示 */
.el_btn_download+.fileInfo{
	display: none;
}
@media screen and (max-width:768px){
	.el_btn_download{
		margin-left: auto;
		margin-right: auto;
		font-size: var(--fontSize22);
		padding: 10px calc(25px + 20px + 10px) 10px 20px;/* アイコン幅 + 移動距離 + 余白 */
	}
	.el_btn_download::after{
		width: 25px;
		right: 20px;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	店舗一覧
//////////////////////////////////////////////////////////////////////////////////////////////////// */
.bl_searchContainer{
	padding: clamp(50px, calc(65 / var(--vw-base) * 100vw), 65px) clamp(20px, calc(65 / var(--vw-base) * 100vw), 65px);
	background-color: #b3ded7;
	border-radius: 40px;
}
.bl_searchContainerWrap{
	display: flex;
	gap: 50px;
	position: relative;
}
.bl_searchContainerWrap h2{
	background-color: var(--mainColor);
	color: #fff;
	font-size: var(--fontSize28);
	font-weight: 700;
	border-radius: 100px;
	padding: 0.8em 1em;
	text-align: center;
	margin-bottom: 45px;
}
.bl_searchAreaWrap{
	padding: 30px;
	background-color: #fff;
	border-radius: 40px;
	width: 50%;
}
.bl_searchAreaWrap:nth-child(1){
	width: 35%;
}
.bl_searchAreaWrap:nth-child(2){
	width: 65%;
}
/* 地図画像 */
.bl_storeMapImg{
	max-width: 1000px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50px;
	display: block;
}
@media screen and (max-width:1200px){
	.bl_searchContainerWrap{
		display: flex;
		flex-direction: column;
	}
	.bl_searchAreaWrap:nth-child(1){
		width: 100%;
	}
	.bl_searchAreaWrap:nth-child(2){
		width: 100%;
	}
}
@media screen and (max-width:576px){
	.bl_searchContainer{
		border-radius: 0;
	}
	.bl_searchContainerWrap h2{
		font-size: var(--fontSize24);
		padding: 0.3em 1em;
	}
	.bl_storeMapImg{
		border-radius: 20px;
	}
}
/* ******************************************************************************************
	チェックボックス
****************************************************************************************** */
.bl_searchTagWrap{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
/* ラベル全体をボタン風に */
.bl_searchAreaWrap label.feas_clevel_01 {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

/* チェックボックスは非表示にする */
.bl_searchAreaWrap label.feas_clevel_01 input[type="checkbox"] {
  display: none;
}

/* span を箱にする */
.bl_searchAreaWrap label.feas_clevel_01 span {
  position: relative;
  display: inline-block;
  padding: 8px 16px;
  border: 2px solid #ccc;
  border-radius: 6px;
  background-color: #fff;
  transition: all 0.3s ease;
  font-weight: 700;
}

/* ホバー時の反応 */
.bl_searchAreaWrap label.feas_clevel_01:hover span {
  border-color: #00a381;
}

/* チェックされた時に見た目を変える */
.bl_searchAreaWrap input[type="checkbox"]:checked + span {
  border-color: var(--mainColor);
  background-color: #e6f7f2;
  color: var(--mainColor);
}

/* チェックマーク */
.bl_searchAreaWrap input[type="checkbox"]:checked + span::before {
  content: "✔";
  position: absolute;
  top: -15px;
  right: -10px;
  background-color: #e6f7f2;
  color: var(--mainColor);
  border-radius: 50%;
  width: 30px;
  height: 30px;
  font-size: 16px;
  border: 2px solid var(--mainColor);
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 2px rgba(0,0,0,0.2);
}
/* ******************************************************************************************
	店舗一覧 > リスト
****************************************************************************************** */
.bl_storeListContainer{
	margin-bottom: clamp(50px, calc(110 / var(--vw-base) * 100vw), 110px);/* 最小50px, 最大110px */
}
.bl_storeList_card{
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: start;
	gap: 43px;
	padding: 
	clamp(20px, calc(55 / var(--vw-base) * 100vw), 55px) 
	clamp(20px, calc(55 / var(--vw-base) * 100vw), 55px) 
	clamp(calc(20px + 28.5px), calc(55 / var(--vw-base) * 100vw), 55px);
	border-radius: 37px;
	border: 3px solid var(--mainColor);
	position: relative;
}
.bl_storeList_card+.bl_storeList_card{
	margin-top: 80px;
}
.el_font_30-24{
	font-size: clamp(20px, calc(30 / var(--vw-base) * 100vw), 30px);
	font-weight: 700;
	margin-bottom: 35px;
}
@media screen and (max-width:992px){
	.bl_storeList_card{
		gap: 0;
	}
}
@media screen and (max-width:576px){
	.bl_storeList_card{
		border-radius: 20px;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	左カラム
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
/* ======================================================================
	レイアウト
====================================================================== */
.bl_storeList_card_left{
	width: 453px;
}
@media screen and (max-width:992px){
	.bl_storeList_card_left{
		width: 100%;
		margin-bottom: 50px;
	}	
}
@media screen and (max-width:576px){
	.bl_storeList_card_left{
		margin-bottom: 30px;
	}	
}
/* ======================================================================
	アイキャッチ
====================================================================== */
.bl_storeList_card_left_img{
	aspect-ratio: 3/2;
	border-radius: 26px;
	overflow: hidden;
	margin-bottom: 20px;
	box-shadow: 0 0 8px rgb(0 153 0 / 25%);
}
.bl_storeList_card_left img{
	width: 100%;
	aspect-ratio: 3/2;
}
@media screen and (max-width:576px){
	.bl_storeList_card_left_img{
		margin-bottom: 10px;
	}
}
/* ======================================================================
	タグ
====================================================================== */
.bl_storeList_card_left_termList{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.bl_storeList_card_left_termList li{
	padding: 3px 10px;
	border: 2px solid var(--mainColor);
	border-radius: 5px;
	color: var(--mainColor);
	font-size: var(--fontSize18);
	font-weight: 700;
}
@media screen and (max-width:576px){
	.bl_storeList_card_left_termList{
		gap: 5px;
	}
	.bl_storeList_card_left_termList li{
		padding: 5px 7px 3px;
		font-size: var(--fontSize14);
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	右カラム
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_storeList_card_right h3{
	background-color: var(--mainColor);
	font-size: var(--fontSize28);
	font-weight: 700;
	border-radius: 9px;
	padding: 20px 30px;
	color: #fff;
	margin-bottom: 33px;
}
.bl_storeBtnArea{
	display: flex;
	/* justify-content: end; */
	gap: 10px;
	margin-bottom: 50px;
}
.bl_storeList_card_right dl{
	display: grid;
	grid-template-columns: auto 1fr; /* 左がdt、右がdd */
	gap: 8px 2px; /* 行間・列間の余白 */
}
.bl_storeList_card_right dt{
	border-bottom: 1px solid var(--mainColor);
	padding: 10px 10px;
}
.bl_storeList_card_right dd{
	border-bottom: 1px solid #999;
	padding: 10px 10px;
}
.bl_storeLinkBtnArea{
	position: absolute;
	bottom: -28.5px;/* ボタン高さ半分 */
	right: 55px;/* コンテナ余白分 */
}
@media screen and (max-width:992px){
	.bl_storeList_card_right h3{
		margin-bottom: 15px;
	}
}
@media screen and (max-width:576px){
	.bl_storeList_card_right h3{
		font-size: var(--fontSize24);
		padding: 10px 20px;
	}
	.bl_storeBtnArea{
		margin-bottom: 30px;
		flex-wrap: wrap;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	店舗詳細
//////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ******************************************************************************************
	レイアウト
****************************************************************************************** */
.bl_storeSubVisualWrap{
	display: flex;
	gap: 50px;
}
@media screen and (max-width:992px){
	.bl_storeSubVisualWrap{
		flex-direction: column;
		gap: 50px;
	}
}
/* ******************************************************************************************
	画像
****************************************************************************************** */
.bl_storeImgWrap{
	width: 65%;
}
.bl_storeImg{
	margin-bottom: 20px;
}
.bl_storeImg img{
	aspect-ratio: 3/2;
	width: 100%;
	border-radius: 50px;
	box-shadow: 0 0 8px rgb(0 153 0 / 25%);
}
@media screen and (max-width:992px){
	.bl_storeImgWrap{
		width: 100%;
	}
}
/* ******************************************************************************************
	タグ一覧
****************************************************************************************** */
.bl_storeTagContainer{
	padding: 30px;
	background-color: #b3ded7;
	border-radius: 40px;
	width: 35%;
}
.bl_storeTagContainerWrap{
	display: flex;
	gap: 50px;
	position: relative;
	flex-direction: column;
}
.bl_storeTagContainerWrap h2{
	background-color: var(--mainColor);
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	border-radius: 100px;
	padding: 0.2em 1em;
	text-align: center;
	margin-bottom: 15px;
}
.bl_storeTagAreaWrap{
	padding: 30px;
	background-color: #fff;
	border-radius: 40px;
}
.bl_storeTag_termList{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.bl_storeTag_termList li{
	padding: 3px 10px;
	border: 2px solid var(--mainColor);
	border-radius: 5px;
	color: var(--mainColor);
	font-size: var(--fontSize18);
	font-weight: 700;
}
@media screen and (max-width:992px){
	.bl_storeTagContainer{
		width: 100%;
	}
}
/* ******************************************************************************************
	店舗情報
****************************************************************************************** */
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	レイアウト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_store_infoWrap{
	display: flex;
	gap: 50px;
    padding: 40px;
    background-color: #fff;
    border-radius: 30px;
    border: 2px solid var(--mainColor);
}
.bl_store_info{
	width: 60%;
}
.bl_store_access{
	width: 40%;
}
.bl_store_access h3{
	border-bottom: 2px solid var(--mainColor);
	margin-bottom: 20px;
	font-weight: 700;
	background-color: var(--mainColor);
    padding: 10px 20px;
    color: #fff;
	border-radius: 10px;
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	2列表
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.bl_store_info dl{
	display: grid;
	grid-template-columns: auto 1fr; /* 左がdt、右がdd */
	gap: 8px 2px; /* 行間・列間の余白 */
}
.bl_store_info dt{
	border-bottom: 1px solid var(--mainColor);
	padding: 10px 10px;
}
.bl_store_info dd{
	border-bottom: 1px solid #999;
	padding: 10px 10px;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////
	印刷用スタイル
//////////////////////////////////////////////////////////////////////////////////////////////////// */
@media print{
	body{
		/* 背景色反映のため */
		-webkit-print-color-adjust: exact;
	}
}