@charset "UTF-8";
@import url("reset.css");
@import url("font.css");
@import url("common.css");
@import url("news.css");
.d20240928 {}

body {
	font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	width: 100%;
	height: 100%;
}
/* 
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	background-color: #FFF;
	color: #222;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
 */

/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
}

/* 
-------------------------------------------------------------------

104			ページの先頭へ
153			ハンバーガーメニュー
502			hero：ヒーロー
545			shop_info：各店舗インフォメーション
545			top_features：美染の特徴、ご来店からの流れ
1059		about：美染について
1128		menu：メニュー　タブ
947			top_infomation：トップページお知らせ
1476		news：ニュース

-------------------------------------------------------------------
 */


/* 
-------------------------------------------------------------------

ページ幅設定

-------------------------------------------------------------------
 */
@media screen and (max-width:767.98px) {
.section92 {
	width: 92%;
	margin: 0 auto;
}
.anchor {
	padding-top :75px;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.section92 {
	width: 92%;
	max-width: 960px;
	margin: 0 auto;
}
.anchor {
	padding-top :180px;
}
}

/* 
-------------------------------------------------------------------

セクションタイトル

-------------------------------------------------------------------
 */
@media screen and (max-width:767.98px) {
.section_ttl {
	font-size:min(10vw,30px);
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #AAA;
}
.section_ttl_en {
	font-size:min(6vw,20px);
	font-weight: bold;
	text-align: center;
	margin-bottom: 1em;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.section_ttl {
	font-size:min(10vw,30px);
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #AAA;
}
.section_ttl_en {
	font-size:min(6vw,20px);
	font-weight: bold;
	text-align: center;
	margin-bottom: 1em;
}
}


span.logo_name {
	display: none;
}

/* 
-------------------------------------------------------------------

ページの先頭へ

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.gotop a {
	display: block;
	width: 50px;
	height: 50px;
	background-image: url(../images/scroll.svg);
	text-decoration: none;
	opacity: 0.5;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 900;
}
.gotop a:hover {
	opacity: 0.8;
	width: 50px;
	height: 50px;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.gotop a {
	display: block;
	width: 70px;
	height: 70px;
	background-image: url(../images/scroll.svg);
	text-decoration: none;
	opacity: 0.5;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 900;
}
.gotop a:hover {
	opacity: 0.8;
	width: 70px;
	height: 70px;
}
}


/* 
-------------------------------------------------------------------

ハンバーガーメニュー

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.header_menu_area {
	width: 100%;
	height: 75px;
	margin: auto;
	position: fixed;
	display: flex;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
	background-color: rgba(255,255,255,0.8);
}

h1 a {
	display: inline-block;
	width: 90px;
	height: 65px;
	font-size: 0;
	background-image: url(../images/logo_bisen_bk.svg);
	background-repeat: no-repeat;
	padding-top: 20px;
	margin-left: 10px;
}
.header_shop {
	flex: 1;
	height: 75px;
	min-height: 0vw;
	font-weight: bold;
	line-height: 75px;
}
.header_shop {
	font-size: min(3vw, 1.5em);
}
#otherpage .header_shop {
	font-size: min(6vw, 1.8em);
}
.header_menu {
	width: 80px;
}
.header_menu ul {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
}
.header_menu li {
	width: 60px;
	height: 60px;
	margin-top: 5px;
	margin-right: 5px;
	display: inline-block;
	text-align: center;
	font-size: 0.7em;
	min-height: 0vw;
	font-weight: 600;
	cursor: pointer;
	z-index: 900;
}
.header_menu a:hover {
	background-color:#C3661F;
}
li.header_menu_btn {
	padding-top: 40px;
}
li.header_menu_btn:hover {
	background-color:#C3661F;
}
.header_menu a {
	color: #FFF;
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 40px;
}
.header_menu_btn {
	background-image: url(../images/icon_menu.svg);
	background-position: 50% 30%;
	background-repeat: no-repeat;
	background-size: 28px;
	background-color: #B99470;
	color: #FFF;
	letter-spacing: 0.15em;
	border: 1px solid rgba(255,255,255,0.5);
	box-sizing: border-box;
}
.header_menu_btn.is_active {
	background-image: url(../images/icon_menu_close.svg);
	background-position: 50% 25%;
	background-color:#C3661F;
	height: 60px;
}

.header_menu_open {
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0px;
	left: 0;
	display: none;
	z-index: 1;
	background-color: rgba(255,255,255,0.0);
	animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}
@keyframes slideIn {
  0% {
    transform: translateY(-64px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
  }
  40%,100% {
    opacity: 1;
  }
}
.header_menu_open.is_active {
	display: flex;
	z-index: 1;
}
/* ------------------------------ハンバーガーメニュー展開for SP */
.hamburger_menu_area {
	width: 100vw;
	height: 550px;
	margin: 0 auto;
	margin-top: 75px;
}
.hamburger_menu {
	width:100%;
	height: 100%
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}
.hamburger_menu_logo {
	width: 100%;
	height: 100px;
	display: flex;
	flex-direction: row;
	justify-content: center;;
	margin: 10px 0;
}
.hamburger_menu_logo img {
	width: 100%;
}
.hamburger_menu_logo_text {
	display: none;
}

.hamburger_menu ul {
	width: 100%;
	border-bottom: 1px solid #999;
}
.hamburger_menu li {
	width: 100%;
	height: 65px;
	background-color: #FFF;
	border-top: 1px solid #999;
}
.hamburger_menu a {
	font-size: clamp(20px, 2.5vw, 22px);
	font-weight: bold;
	display: block;
	width: 100%;
	height: 65px;
	line-height: 65px;
	text-align: center;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.header {
	width: 100%;
	height: 95px;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1;
	position: fixed;
	background-color: rgba(255,255,255,0.8);
	border-bottom: 1px solid #000;
}
.header_menu_area {
	width: 960px;
	display: flex;
	margin: auto;
}

.header_logo {
	width: 90px;
	height: 95px;
	margin-right: 20px;
	padding-top: 10px;
}
h1 a {
	display: block;
	width: 80px;
	height: 80px;
	font-size: 0;
	background-image: url(../images/logo_bisen_bk.svg);
	background-repeat: no-repeat;
	margin: 0 auto;
}
.header_shop {
	flex: 1;
	height: 95px;
	min-height: 0vw;
	font-weight: bold;
	line-height: 95px;
}
.header_shop {
	font-size: clamp(22px, 2.5vw, 24px);
}
#otherpage .header_shop {
	font-size: min(6vw, 1.9em);
}
.header_menu {
	width: 80px;
}
.header_menu ul {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
}
.header_menu li {
	width: 60px;
	height: 60px;
	margin-top: 15px;
	margin-right: 0px;
	display: inline-block;
	text-align: center;
	font-size: clamp(10px, 2.5vw, 12px);
	min-height: 0vw;
	font-weight: 600;
	cursor: pointer;
	z-index: 900;
}
.header_menu a:hover {
	background-color:#C3661F;
}
li.header_menu_btn {
	padding-top: 40px;
}
li.header_menu_btn:hover {
	background-color:#C3661F;
}
.header_menu a {
	color: #FFF;
	display: block;
	width: 100%;
	height: 100%;
	padding-top: 40px;
}
.header_menu_btn {
	background-image: url(../images/icon_menu.svg);
	background-position: 50% 30%;
	background-repeat: no-repeat;
	background-size: 28px;
	background-color: #B99470;
	color: #FFF;
	border: 1px solid rgba(255,255,255,0.5);
	box-sizing: border-box;
}
.header_menu_btn.is_active {
	background-image: url(../images/icon_menu_close.svg);
	background-position: 50% 25%;
	background-color:#C3661F;
	height: 60px;
}

.header_menu_open {
	width:960px;
	position: fixed;
	margin: auto;  
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	display: none;
	z-index: 1;
	animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}
@keyframes slideIn {
  0% {
    transform: translateY(-64px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
  }
  40%,100% {
    opacity: 1;
  }
}
.header_menu_open.is_active {
	display: flex;
	z-index: 1;
}

/* ------------------------------ハンバーガーメニュー展開 */
.hamburger_menu_area {
	width:960px;
	margin-top: 95px;
	align-items: center;
}
.hamburger_menu {
    margin: 0 0 0 auto;
	width:300px;
	display: flex;
	flex-direction: column;
}

.hamburger_menu ul {
	width: 100%;
	border-bottom: 1px solid #999;
}
.hamburger_menu li {
	width: 100%;
	height: 75px;
	background-color: rgba(255,255,255,0.7);
	border-top: 1px solid #999;
}
.hamburger_menu a {
	font-size: clamp(18px, 2.5vw, 20px);
	font-weight: bold;
	display: block;
	width: 100%;
	height: 75px;
	line-height: 75px;
	padding-left: 2em;
	text-align: left;
}
}

/* 
-------------------------------------------------------------------

hero：ヒーロー

-------------------------------------------------------------------
 */
/* 横幅と左右の余白 */
@media screen and (max-width:767.98px) {
.w-container {
	width: 100%;
	margin: auto;
	position: relative;
}
.header_hero {
	height: 370px;
	margin: 75px auto 0px auto;
	position: relative;
}
.hero2 {
	height: 300px;
}
}


@media (min-width: 768px) {
.w-container {
	width: 960px;
	position: relative;
}
.header_hero {
	width:100%;
	height: 700px;
	margin: 95px auto 0px auto;
	position: relative;
}
.hero2 {
	width: 400px;
	height: 160px;
	margin: 200px auto 0 auto;
	background-size: 70%;
}
.hero-container2 {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
	background-image: url(../images/hero_copy2.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 70% auto;
}
}


/* 
-------------------------------------------------------------------

shop_info：各店舗インフォメーション

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */

@media screen and (max-width:767.98px) {
#topshop_info {
	width: 92%;
	position: absolute;
	top: 450px;
	left:0;
	right:0;
	margin: 0 auto 0 auto;
}
#topshop_info ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	width: 100%;
	gap: 10px;
	margin: 0 auto;
}
#topshop_info li {
	width: 100%;
	margin: 0 auto;
}
.topshop_info {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.topshop_head {
	font-size:min(6vw,16px);
	font-weight: bold;
	padding: 6px 0px;
	border-radius: 7px 7px 0 0;
}
.topshop_info_area1 {
	display: flex;
	flex-direction: row;
	padding: 0;
	height: 180px;
	border-radius:  0 0 7px 7px;
	background-color: #FFF;
	border-left: solid 1px #999;
	border-right: solid 1px #999;
	border-bottom: solid 1px #999;
	box-sizing: content-box;
}
.topshop_img {
	width: 40%;
	height: 180px;
}
.topshop_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	padding: 10px;
}
.topshop_info_area2 {
	width: 100%;
	height: 180px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	padding: 0;
	flex: 1;
}
.topshop_name {
	width: 100%;
	height: 80px;
	font-size:min(10vw,40px);
	font-weight: normal;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}
.topshop_name img {
	width:65%;
	max-width: 65px;
	margin-right: 10px;
}
.topshop_menu {
	width: 100%;
}
.topshop_menu a {
	width: 90%;
	height: 60px;
	font-size:min(4vw,16px);
	font-weight: bold;
	border-radius: 7px;
	line-height: 1.3;
	color: #FFF;
	background-image: linear-gradient(#33e278, #2db650);
	margin: 0 auto;
	display: grid;
	place-items: center center;
}
.topshop_menu a:hover {
	background-image: linear-gradient(#56ff99, #51d372);
	color: #FFF;
}
}

/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
#topshop_info {
	width: 960px;
	position: absolute;
	top: 550px;
	left:0;
	right:0;
	margin: 0 auto 0 auto;
}
#topshop_info ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	width: 100%;
	gap: 25px;
	margin: 0 auto;
}
#topshop_info li {
	width: 48%;
	margin: 0 auto;
}
.topshop_info {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.topshop_head {
	font-size:min(6vw,18px);
	font-weight: bold;
	padding: 10px 0px;
	border-radius: 7px 7px 0 0;
}
.topshop_info_area1 {
	display: flex;
	flex-direction: row;
	padding: 0;
	height: 180px;
	border-radius:  0 0 7px 7px;
	background-color: #FFF;
	border-left: solid 1px #999;
	border-right: solid 1px #999;
	border-bottom: solid 1px #999;
	box-sizing: content-box;
}
.topshop_img {
	width: 200px;
	height: 180px;
}
.topshop_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	padding: 10px;
}
.topshop_info_area2 {
	width: 100%;
	height: 180px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	padding: 0;
	flex: 1;
}
.topshop_name {
	width: 100%;
	height: 80px;
	font-size:min(10vw,42px);
	font-weight: normal;
	display: flex;
	flex-direction: row;
	justify-content: left;
	align-items: center;
}
.topshop_name img {
	width:80%;
	max-width: 80px;
	margin: 0 10px;
}
.topshop_menu {
	width: 100%;
}
.topshop_menu a {
	width: 85%;
	height: 60px;
	font-size:min(3vw,16px);
	font-weight: bold;
	border-radius: 7px;
	line-height: 1.3;
	color: #FFF;
	background-image: linear-gradient(#33e278, #2db650);
	margin: 0 auto;
	display: grid;
	place-items: center center;
}
.topshop_menu a:hover {
	background-image: linear-gradient(#56ff99, #51d372);
	color: #FFF;
}
}




/* 
-------------------------------------------------------------------

top_features：美染の特徴、ご来店からの流れ

-------------------------------------------------------------------
 */
@media screen and (max-width:767.98px) {
.top_features {
	width: 100%;
	text-align: center;
}
.top_features p {
	text-align: left;
	font-size:min(4vw,16px);
}
.top_features_list {
	padding-top: 20px;
	border-top: 1px dashed #999;
	padding-bottom: 10px;
	margin-bottom: 40px;
	border-bottom: 1px dashed #999;
}
.top_features_list ul {
	list-style-type: disc;
	padding-left: 1em;
}
.top_features_list div {
	text-align: left;
	font-size:min(4.5vw,18px);
	line-height: 1.1;
	font-weight: bold;
}
.top_features_list p {
	font-size:min(4vw,16px);
	font-weight: normal;
	text-align: left;
	padding-bottom: 1em;
}

.top_features_flow ul {
	display: flex;
	flex-direction: column;
}
.top_features_flow li {
	width: 100%;
	border: 2px solid #B99470;
	border-radius: 10px;
	margin-bottom: 5px;
	margin-top: 5px;
}
.top_features_title {
	display: flex;
	flex-direction: row;
	text-align: center;
	width: 100%;
	height: 50px;
	background-color: #B99470;
	line-height: 50px;
}
.top_features_number {
	font-size:min(8vw,32px);
	font-weight: bold;
	color: #FFF;
	padding: 0 10px;
}
.top_features_menu {
	font-size:min(6vw,24px);
	font-weight: bold;
	margin-bottom: 1em;
	color: #FFF;
}
.top_features_exp {
	display: flex;
	flex-direction: row;
}
.top_features_exp img {
	max-width: 150px;
	max-height: 150px;
	padding: 0.5em;
}
.top_features_flow li p {
	font-size:min(4vw,16px);
	font-weight: normal;
	padding: 1em;
	text-align: left;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.top_features {
	width: 85%;
	text-align: center;
	margin: 0 auto;
}
.top_features p.lead {
	text-align: left;
	font-size:min(4.5vw,18px);
	width: 85%;
	margin: 0 auto;
	padding: 2em 0;
	line-height: 1.6;
}
.top_features_list {
	padding-top: 20px;
	padding-bottom: 10px;
	margin-bottom: 40px;
}
.top_features_list ul {
	display: flex;
	flex-direction: row;
	gap: 20px;
}
.top_features_list li {
	flex: 1;
	display: flex;
	flex-direction: column;
}
.top_features_list div {
	text-align: center;
	font-size:min(5vw,24px);
	line-height: 1.1;
	font-weight: bold;
	background-color: #C99;
	padding: 20px 0;
	color: #FFF;
	border-radius: 5px 5px 0 0;
}
.top_features_list p {
	font-size:min(4vw,18px);
	font-weight: bold;
	text-align: left;
	padding: 20px;
	flex: 1;
	flex-grow: 1;
	border-radius: 0 0 5px 5px;
	border: 2px solid #C99;
	color: #783D19;
}

.top_features_flow {
	width: 100%;
	margin: 0 auto;
}
.top_features_flow ul {
	display: flex;
	flex-direction: column;
}
.top_features_flow li {
	width: 100%;
	border: 3px solid #B99470;
	border-radius: 10px;
	margin: 10px 0;
	display: flex;
	flex-direction: row;
}
.top_features_title {
	display: flex;
	flex-direction: column;
	justify-content: start;
	text-align: center;
	width: 35%;
	background-color: #B99470;
}
.top_features_number {
	font-size:min(8vw,46px);
	font-weight: bold;
	color: #FFF;
}
.top_features_menu {
	font-size:min(5vw,22px);
	font-weight: bold;
	color: #FFF;
	line-height: 1.4;
}
.top_features_exp {
	display: flex;
	flex-direction: row-reverse;
	flex: 1;
}
.top_features_exp img {
	max-width: 150px;
	max-height: 150px;
	padding: 0.5em;
}
.top_features_flow li p {
	font-size:min(4vw,18px);
	font-weight: bold;
	padding: 1em;
	text-align: left;
	color: #5F6F52;
}
}

.fa-angle-double-down:before {
	content: "\f103";
	color: #B99470;
}

/* 
-------------------------------------------------------------------

about：美染について

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.about {
	width: 92%;
	margin: 0 auto;
	text-align: center;
}
.about_title {
	font-size: clamp(22px, 2.5vw, 24px);
	font-weight: bold;
	border-bottom: 1px solid #333;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	margin-top: 4em;
}
.about p {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
}
.about li {
	margin-left: 2em;
	margin-bottom: 2em;
	font-weight: normal;
}
.about ul {
	list-style-type: disc;
	text-align: left;
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.4;
	font-weight: normal;
}
}

/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.about {
	width: 85%;
	margin: 0 auto;
	padding-top: 50px;
}
.about_title {
	font-size: clamp(22px, 2.5vw, 24px);
	font-weight: bold;
	border-bottom: 1px solid #333;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
}
.about p {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
}
.about li {
	margin-left: 2em;
	margin-bottom: 1em;
	font-weight: normal;
}
.about ul {
	list-style-type: disc;
	text-align: left;
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
	font-weight: normal;
}
}

.about span {
	display: inline-block;
}

/* 
-------------------------------------------------------------------

menu：メニュー　タブ

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.tab-1 {
	display: flex;
	flex-wrap: wrap;
	width:100%;
}
.tab-1 > label {
	flex: 1 1;
	order: -1;
	min-width: 70px;
	padding: 13px 0 8px;
	border-right: 1px solid #FFF;
	background-color: #DDD;
	border-radius: 7px 7px 0 0;
	color: #333;
	font-size: clamp(18px, 2.5vw, 20px);
	text-align: center;
	cursor: pointer;
}
.tab-1 > label:hover {
	opacity: .8;
}
.tab-1 input {
	display: none;
}
.tab-1 > div {
	display: none;
	width: 100%;
	padding-top: 20px;
	background-color: #FFF;
}
.tab-1 label:has(:checked) {
	font-size: clamp(20px, 2.5vw, 22px);
	font-weight: bold;
}
.tab-1 label:has(:checked) + div {
	display: block;
}


.menu_section {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.menu_section li {
	margin-bottom: 20px;
	border-radius: 10px;
}

.menu_plan {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
}
.menu_plan_text {
	display: flex;
	flex-direction: row;
	border-bottom: 1px solid #000;
	padding-bottom: 10px;
	margin-bottom: 10px;
	justify-content: center;
	align-items: center;
}
.menu_plan_title {
	font-size:min(9vw,44px);
	font-weight: bold;
	line-height: 1.0;
}
.menu_plan_title span.small {
	font-size: 60%;
}
.menu_plan span {
	font-size: 80%;
}
.menu_plan p {
	display: block;
	font-size:min(6vw,16px);
	font-weight: bold;
	text-align: center;
}
.menu_plan img {
	width:120px;
}

.menu_name {
	font-size:min(5vw,24px);
	font-weight: bold;
	padding: 5px;
	border-radius: 10px 10px 0 0;;
}
.menu_name span {
	font-weight: bold;
	color: #FFF;
	font-size: 80%;
	background-color: #C33;
	padding: 5px 7px;
	margin-left: 3px;
}
.menu_price {
	font-size:min(14vw,70px);
	font-weight: bold;
	margin: 0px 0;
}
.menu_features {
	font-size:min(5vw,24px);
	font-weight: bold;
	padding: 5px;
	margin: 2px 20px;
	border-radius: 5px;
	color: #FFF;
}
.menu_comment {
	font-size:min(4.5vw,20px);
	padding: 10px 20px;
	text-align: left;
	line-height: 1.4;
}
}

/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.tab-1 {
	display: flex;
	flex-wrap: wrap;
	width:100%;
	margin-top: 50px;
}
.tab-1 > label {
	flex: 1 1;
	order: -1;
	min-width: 70px;
	padding: 13px 0 8px;
	border-right: 1px solid #FFF;
	border-radius: 7px 7px 0 0;
	color: #333;
	font-size: clamp(22px, 2.5vw, 24px);
	text-align: center;
	cursor: pointer;
	background-color: #DDD;
}


.tab-1 > label:hover {
	opacity: .8;
}
.tab-1 input {
	display: none;
}
.tab-1 > div {
	display: none;
	width: 100%;
	padding-top: 20px;
	background-color: #FFF;
}
.tab-1 label:has(:checked) {
	font-size: clamp(26px, 2.5vw, 28px);
	font-weight: bold;
}
.tab-1 label:has(:checked) + div {
	display: block;
}


.menu_section {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.menu_zentai,
.menu_bubun,
.menu_okao
 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	column-gap: 30px;
}
.menu_section li {
	width:calc(96%/2);
	margin-bottom: 20px;
	border-radius: 10px;
}

.menu_plan {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
}
.menu_plan_text {
	display: flex;
	flex-direction: row;
	border-bottom: 1px solid #000;
	padding-bottom: 10px;
	margin-bottom: 10px;
	justify-content: center;
	align-items: center;
}
.menu_plan_title {
	font-size: 4em;
	font-weight: bold;
	line-height: 1.0;
}
.menu_plan_title span.small {
	font-size: 50%;
}
.menu_plan span {
	font-size: 80%;
}
.menu_plan p {
	display: block;
	font-size: 1.6em;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
.menu_plan img {
	width:160px;
}

.menu_name {
	font-size:min(5vw,24px);
	font-weight: bold;
	padding: 5px;
	border-radius: 10px 10px 0 0;;
}
.menu_name span {
	font-weight: bold;
	color: #FFF;
	font-size: 90%;
	background-color: #C33;
	padding: 5px 7px;
	margin-left: 5px;
}
.menu_price {
	font-size:min(14vw,70px);
	font-weight: bold;
	margin: 0px 0;
}
.menu_features {
	font-size:min(5vw,24px);
	font-weight: bold;
	padding: 5px;
	margin: 2px 20px;
	border-radius: 5px;
	color: #FFF;
}
.menu_comment {
	font-size:min(4.5vw,20px);
	padding: 10px 20px;
	text-align: left;
	line-height: 1.4;
}
}


.tab-1 label:has(:checked) {
	background-color: #777;
	color: #FFF;
}

.tab-1 > label {
	border-bottom: 3px solid #777;
}


ul.menu_zentai li {
	background-color: #F5DDE1;
}
ul.menu_zentai .menu_name {
	background-color: #EABBC3;
}
ul.menu_zentai .menu_features {
	background-color: #CC556A;
}
ul.menu_bubun li {
	background-color: #CCEBEA;
}
ul.menu_bubun .menu_name {
	background-color: #99D7D5;
}
ul.menu_bubun .menu_features {
	background-color: #009C95;
}
ul.menu_okao li {
	background-color: #F1E4D3;
}
ul.menu_okao .menu_name {
	background-color: #E4CAA7;
}
ul.menu_okao .menu_features {
	background-color: #BB7A23;
}


/* 
-------------------------------------------------------------------

インフォメーション

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
}
.info_areaxxx {
	width: 960px;
	margin: 0 auto;
	background-color: #FFF;
	display: flex;
	flex-direction: column;
	gap: 0px 60px;
}

/* 
-------------------------------------------------------------------

news：ニュース

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.news_all {
	width: 100%;
	margin: 0 auto;
}
.news_all ul {
	margin-bottom: 50px;
}
.news_all li {
	display: flex;
	flex-direction: column;
	border-bottom: 1px dashed #999;
	padding: 15px 0px;
}
.news_date {
	font-size: 1.3em;
	width: 100%;
}
.news_title {
	font-size: 1.3em;
	line-height: 1.4;
	font-weight: bold;
	width: 100%;
}
.news_area {
	width: 100%;
	margin: 0 auto;
}
.news_area .news_title {
	font-size: 1.5em;
	width: 100%;
	margin: 0 auto;
}
.news_text {
	border-top: 1px solid #C96;
	margin-top: 1em;
	margin-bottom: 3em;
	padding-top: 1em;
	font-size: 1.3em;
	line-height: 2.4;
	font-weight: normal;
}
.news_text p {
	margin-bottom: 1em;
}

.allview_btn {
	width: 100%;
	border: solid 1px #C99;
	border-radius: 7px;
	text-align: center;
	margin: 0 auto;
	transition: 0.5s;
	background-color: #FEE;
}
.allview_btn a {
	padding: 10px 0px;
	display: block;
	font-size:1.1em;
	font-weight: bold;
}
.allview_btn:hover {
	background-color: #C99;
	color: #FFF;
}
.allview_btn a:hover {
	color: #FFF;
}

.calendar {
	margin: 0 auto;
	text-align: center;
}
.calendar img {
}
.par75 img {
	width: 70%;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.news_all {
	margin: 0 auto;
	width:85%;
	margin-top: 50px;
}
.news_all ul {
	margin-bottom: 30px;
}
.news_all li {
	display: flex;
	flex-direction: row;
	border-top: 1px dashed #999;
	padding: 15px 0px;
}

.news_title_area {
	display: flex;
	flex-direction: column;
}
.news_title_area .news_date {
	width: 100%;
	text-align: right;
}
.news_title_area .news_title {
	font-size: clamp(28px, 2.5vw, 30px);
	font-weight: normal;
}

.news_date {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
	padding-right: 15px;
	width: 10em;
}
.news_title {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
	font-weight: normal;
	flex: 1;
}
.news_title a {
	transition: text-decoration 0.5s;
}
.news_title a:hover {
	color: #009;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
	text-decoration-color: #99F;
	text-decoration-style: dashed;
}

.news_area {
	width: 85%;
	margin: 0 auto;
	padding-top: 3em;
}
.news_text {
	border-top: 1px solid #C96;
	margin-top: 1em;
	margin-bottom: 3em;
	padding-top: 3em;
	font-weight: normal;
}
.news_text p {
	margin-bottom: 1em;
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 2.0;
}
.allview_btn {
	width: 40%;
	border: solid 1px #C99;
	border-radius: 7px;
	text-align: center;
	margin: 0 auto;
	transition: 0.5s;
	background-color: #FEE;
}
.allview_btn a {
	padding: 10px 0px;
	display: block;
	font-size: clamp(14px, 2.5vw, 16px);
	font-weight: bold;
}
.allview_btn:hover {
	background-color: #C99;
	color: #FFF;
}
.allview_btn a:hover {
	color: #FFF;
}

.calendar {
	margin-top: 50px;
	width: 100%;
	text-align: center;
	display: flex;
}
.calendar img {
	width: 100%;
}
.par75 {
	margin-top: 16px;
}
}







/* 
-------------------------------------------------------------------

footer：フッター

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.footer {
	width: 100%;
	text-align: center;
	background-color: #FFF;
	margin: 0 auto;
	padding-top: 100px;
}
.logo {
	background-image: url(../images/logo_bisen_bk.svg);
	background-position: top 0px center;
	background-repeat: no-repeat;
	background-size: 100px;
	height: 100px;
	background-color: #FFF;
}

.footer_shop_section {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0 auto;
	background-color: #EED;
	text-align: left;
	padding-top: 25px;
}
.footer_shop {
	width: 365px;
	display: flex;
	justify-content: start;
	flex-direction: row;
	margin: 0 auto;
	padding-bottom: 25px;
}
.footer_shop_neme {
	width: 85px;
	height: 35px;
	margin-right: 15px;
	background-color: #FFF;
	font-size: min(5.5vw, 1.4em);
	font-weight: normal;
	border: 1px solid #000;
	text-align: center;
}
.footer_shop_info {
	display: flex;
	flex-direction: column;
}
.footer_shop_tel {
	font-size: min(6vw, 1.6em);
	font-weight: bold;
	line-height: 1.4;
}
.footer_shop_add {
	font-size: min(4.2vw, 1.1em);
	line-height: 1.4;
}
.copyright {
	width: 100%;
	height: 40px;
	color: #FFF;
	font-size: min(4vw, 1.0em);
	background-color: #000;
	padding-top: 10px;
}
}

/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.footer {
	position: sticky;
	top: 100vh;
	width: 100%;
	text-align: center;
	background-color: #EED;
	margin: 0 auto;
	margin-top: 100px;
}
.logo {
	background-image: url(../images/logo_bisen_bk.svg);
	background-position: top 0px center;
	background-repeat: no-repeat;
	background-size: 100px;
	height: 100px;
	background-color: #FFF;
}

.footer_shop_section {
	width: 800px;
	display: flex;
	flex-direction: row;
	flex-wrap:wrap;
	justify-content: center;
	margin: 0 auto;
	background-color: #EED;
	text-align: left;
	padding-top: 25px;
}
.footer_shop {
	width: 380px;
	display: flex;
	justify-content: start;
	flex-direction: row;
	margin: 0 auto;
	padding-bottom: 25px;
}
.footer_shop_neme {
	width: 85px;
	height: 35px;
	margin-right: 15px;
	background-color: #FFF;
	font-size: clamp(18px, 2.5vw, 20px);
	font-weight: normal;
	border: 1px solid #000;
	text-align: center;
}
.footer_shop_info {
	display: flex;
	flex-direction: column;
}
.footer_shop_tel {
	font-size: clamp(24px, 2.5vw, 26px);
	font-weight: bold;
	line-height: 1.4;
}
.footer_shop_add {
	font-size: clamp(14px, 2.5vw, 16px);
	line-height: 1.4;
}
.copyright {
	width: 100%;
	height: 40px;
	color: #FFF;
	font-size: clamp(12px, 2.5vw, 14px);
	background-color: #000;
	padding-top: 10px;
}
}




/* 
-------------------------------------------------------------------

Not Found：404

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.notfound_b {
	font-size:min(5vw,20px);
	font-weight: bold;
	color: #966;
	width: 100%;
	height: 65px;
	line-height: 65px;
	border: solid 1px #C99;
	text-align: center;
	margin: 3em auto;
	background-color: #FEE;
}
.notfound p {
	font-size:min(4.8vw,18px);
	font-weight: normal;
	line-height: 2.0;
	text-align: left;
	color: #000;
	margin-top: 3em;
}
}
/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.notfound_b {
	font-size:min(6vw,28px);
	font-weight: bold;
	color: #966;
	width: 75%;
	height: 95px;
	line-height: 95px;
	border: solid 1px #C99;
	text-align: center;
	margin: 3em auto;
	background-color: #FEE;
}
.notfound p {
	font-size:min(4.5vw,20px);
	font-weight: normal;
	line-height: 2.0;
	text-align: center;
	color: #000;
}
}

/* 
-------------------------------------------------------------------

Recruit

-------------------------------------------------------------------
 */
/* -------------------------------------------for SP */
@media screen and (max-width:767.98px) {
.recruit {
	width: 92%;
	margin: 0 auto;
	padding: 2em 0;
}
.recruit_title {
	font-size: clamp(22px, 2.5vw, 24px);
	font-weight: bold;
	border-bottom: 1px solid #333;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
	text-align: center;
}
.recruit p {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
}
.recruit ul {
	list-style-type: none;
	text-align: left;
}
.recruit li {
	margin: 1em auto;
	width: 100%;
}
.boshu_area a {
	background-color: #EEE;
	border: 1px solid #000;
	padding: 1em;
	display: block;
	font-size: clamp(18px, 2.4vw, 22px);
	font-weight: bold;
}
.boshu_area a:hover {
	background-color: #E88;
	color: #FFF;
	border: 1px solid #E88;
}
.anchor2 {
	display: block;
	padding-top: 100px;
	margin-top: -100px;
}

.recruit_info {
	margin-bottom: 5em;
}
.name_type {
	font-size: clamp(20px, 2.8vw, 24px);
	font-weight: bold;
	background-color: #E88;
	color: #FFF;
	padding: 0.2em 0;
	text-align: center;
}
.recruit_info_area {
	border-bottom: solid 1px #999;
	background-color: #FFF;
}
.recruit_info_con {
	padding-top: 0.5em;
	background-color: #FFF;
}
.recruit_info_con p {
	font-size: clamp(16px, 2.1vw, 18px);
	line-height: 1.5;
	margin-bottom: 0.5em;
	padding-top: 0.5em;
	border-top: dotted 1px #999;
}
.recruit_info_tel {
	margin: 1em 0em;
	padding-top: 0.5em;
	border-top: dotted 1px #999;
	font-size: clamp(16px, 2.1vw, 18px);
	font-weight: bold;
	color: #000;
	background-color: #FFF;
	text-align: center;
}
:target::before {
	content:"";
	display:block;
	height: 100px;
	margin:-100px 0 0;
}
}

/* -------------------------------------------for PC */
@media screen and (min-width:768px) {
.recruit {
	width: 85%;
	margin: 0 auto;
	padding: 3em 0;
}
.recruit_title {
	font-size: clamp(22px, 2.5vw, 24px);
	font-weight: bold;
	border-bottom: 1px solid #333;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
}
.recruit p {
	font-size: clamp(18px, 2.5vw, 20px);
	line-height: 1.5;
}



.boshu_area li {
	margin: 1em auto;
	width: 85%;
}
.boshu_area a {
	background-color: #EEE;
	border: 1px solid #000;
	padding: 1em;
	display: block;
	font-size: clamp(18px, 2.4vw, 22px);
	font-weight: bold;
}
.boshu_area a:hover {
	background-color: #E88;
	color: #FFF;
	border: 1px solid #E88;
}
.anchor2 {
	display: block;
	padding-top: 120px;
	margin-top: -120px;
}


.recruit_info {
	margin-bottom: 5em;
}
.name_type {
	font-size: clamp(20px, 2.8vw, 24px);
	font-weight: bold;
}
.recruit_info_area {
	border: solid 1px #999;
	background-color: #FFF;
}
.recruit_info_con {
	padding: 2em 2em 0em 2em;
	background-color: #FFF;
}
.recruit_info_con p {
	font-size: clamp(16px, 2.1vw, 18px);
	line-height: 1.5;
	margin-bottom: 0.5em;
	padding-top: 0.5em;
	border-top: solid 1px #999;
}
.recruit_info_tel {
	margin: 1em 2em;
	padding-top: 0.5em;
	border-top: solid 1px #999;
	font-size: clamp(16px, 2.1vw, 18px);
	font-weight: bold;
	color: #000;
	background-color: #FFF;
	text-align: center;
}
}

.small {
	font-size: 85%;
}
.recruit span {
	display: inline-block;
}




/* 
-------------------------------------------------------------------

shop_info：各店舗インフォメーション

-------------------------------------------------------------------
 */

.maruyama_color {
	background-color: #C55475;
	color: #FFF;
}
.miyanaga_color {
	background-color: #C55475;
	color: #FFF;
}
.kurayoshi_color {
	background-color: #EACF65;
	color: #444;
}
.koyama_color {
	background-color: #2F9E93;
	color: #FFF;
}
.maruyama_color a {
	color: #FFF;
}
.miyanaga_color a {
	color: #FFF;
}
.kurayoshi_color a {
	color: #444;
}
.koyama_color a {
	color: #FFF;
}
.space1em {
	margin-bottom: 1em;
}
.space2em {
	margin-bottom: 2em;
}
.space3em {
	margin-bottom: 3em;
}
.space5em {
	margin-bottom: 5em;
}


@media screen and (max-width:767.98px) {
#top_shop_info {
	width: 100%;
	position: absolute;
	top: 420px;
	left:0;
	right:0;
	margin: 0 auto 0 auto;
}
.top_shop_info {
	width: 92%;
	margin: 0 auto;
	text-align: center;
	background-color: #E6E6E6;
	border-radius: 7px;
}
#top_shop_info_space {
	padding-top: 1020px;
}
.top_shop_info_area1 {
	display: flex;
}
.top_shop_name {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 35%;
}
.top_shop_name2 {
	display: flex;
	flex-direction: column;
	width:100%;
	align-items: center;
}
.top_shop_name span {
	font-size:min(10vw,28px);
	font-weight: bold;
}
.top_shop_name .attention {
	font-size:min(4.2vw,14px);
	font-weight: bold;
	line-height: 1.0;
	border-top: 1px solid #666;
	width: 90%;
	padding-top: 10px;
	color: #C00;
}
.top_shop_name .attention span {
	font-size:min(4.2vw,14px);
	font-weight: bold;
	line-height: 1.3;
	display: inline-block;
}
.top_shop_name img {
	width:70%;
	max-width: 100px;
}

.top_shop_info_area2 {
	width: 60%;
	margin: 0 auto;
}
.top_shop_info_area2 div {
	font-size:min(4.5vw,20px);
	font-weight: bold;
	margin: 10px 0;
	padding: 10px 0px;
	border-radius: 7px;
}
.top_shop_menu {
	background-color: #FFF;
}
.top_shop_tel {
	background-color: #FFF;
}
.top_shop_yoyaku a {
	display: block;
}

.top_shop_info_miyanaga {
	border-top: 1px dashed #999;
}
.top_shop_info_space {
	margin-bottom: 1.5em;
}
.top_shop_info_area3 {
	border-top: 1px dashed #999;
	width: 96%;
	align-items: center;
	padding: 1em;
	margin: 0 auto;
}
.top_shop_info_area3 p {
	font-size:min(4.5vw,19px);
	font-weight: bold;
}



.shop_info {
	margin: 0 auto;
	text-align: center;
	display: flex;
	flex-direction: column;
}
.shop_head {
	font-size:min(4.2vw,16px);
	font-weight: bold;
	padding: 10px 0px;
	border-radius: 7px 7px 0 0;
}
.shop_name {
	font-size:min(15vw,60px);
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 10px 0;
}
.shop_name img {
	width:30%;
	max-width: 100px;
}
.shop_message {
	font-size:min(4.0vw,18px);
	font-weight: bold;
}
.shop_tel {
	font-size:min(8vw,36px);
	font-weight: bold;
	line-height: 1.4;
}
.shop_yoyaku {
	font-size:min(6vw,30px);
	font-weight: bold;
	margin: 10px 0;
	padding: 10px 0px;
	border-radius: 7px;
}


.shop_information_name {
}
.shop_information_name_s {
	font-size:min(4.2vw,15px);
	font-weight: bold;
	line-height: 1.2;
	padding: 10px;
	text-align: center;
	border-radius: 7px;
}
.shop_information_name_l {
	width:100%;
	height: 100px;
	font-size:min(9vw,35px);
	font-weight: bold;
	line-height: 100px;
	margin: 10px 0;
	border-radius: 7px;
}
.shop_information_name_l img {
	width:100px;
	margin-right: 10px;
}

.shop_information_section dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	line-height: 1.4;
	justify-content: start;
	align-items: start;
}
.shop_information_section dt {
	width: 25%;
	border-top: 1px solid #000;
	background-color: #FFF;
	padding: 15px 0;
	font-size:min(5.2vw,16px);
}
.shop_information_section dd {
	width: 75%;
	border-top: 1px solid #999;
	padding: 15px 0;
	font-size:min(5.2vw,16px);
}
.shop_information_map iframe {
	width: 100%;
	height: 300px;
}


.shop_info_img {
	background-color: #FFF;
	width:100%;
	margin-bottom: 10px;
}
ul.shop_info_img_sub {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	text-decoration: none;
	justify-content: space-between;
	margin-bottom: 30px;
}
.shop_info_img_sub li {
	display: block;
	position: relative;
	width: 24%;
}
.shop_info_img_sub li::before {
  content: "";
  display: block;
  padding-top: 100%;
}
 
.shop_info_img_sub img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  object-fit: cover;
}
.pc_img img {
	display: none;
}
}

@media screen and (min-width:768px) {
.top_shop_info_pc {
	width: 960px;
	display: flex;
	flex-direction: row;
}
#top_shop_info {
	width: 960px;
	position: absolute;
	top: 550px;
	left:0;
	right:0;
	margin: 0 auto 0 auto;
}
.top_shop_info {
	width: 960px;
	margin: 0 auto;
	text-align: center;
	background-color: #E6E6E6;
	border-radius: 7px;
}
#top_shop_info_space {
	padding-top: 480px;
}
.top_shop_info_area1 {
	display: flex;
	flex-direction: raw;
	padding: 10px 0;
}
.top_shop_name {
	font-size:min(10vw,30px);
	font-weight: bold;
	display: flex;
	flex-direction: raw;
	justify-content: center;
	align-items: center;
	width: 240px;
}
.top_shop_name2 {
	display: flex;
	flex-direction: column;
	justify-content: start;
	width:100%;
}
.top_shop_name .attention {
	font-size:min(4.2vw,15px);
	font-weight: bold;
	line-height: 1.0;
	padding-top: 10px;
	color: #C00;
	border-top: 1px solid #666;
}

.top_shop_name img {
	width:80%;
	max-width: 80px;
	margin: 0 10px;
}

.top_shop_info_area2 {
	width: 720px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding: 0 10px;
}
.top_shop_info_area2 div {
	font-size:min(4.5vw,19px);
	font-weight: bold;
	border-radius: 7px;
	width: 32%;
	height: 70px;
	line-height: 70px;
}
.top_shop_menu {
	background-color: #FFF;
}
.top_shop_info_area2 div:hover {
	border: 2px solid #C3661F;
}
.top_shop_tel {
	background-color: #FFF;
}
.top_shop_yoyaku a {
	display: block;
}
.top_shop_info_miyanaga {
	border-top: 1px dashed #999;
}
.top_shop_info_space {
	margin-bottom: 1.5em;
}
.top_shop_info_area3 {
	border-top: 1px dashed #999;
	width: 96%;
	align-items: center;
	padding: 1em;
	margin: 0 auto;
}
.top_shop_info_area3 p {
	font-size:min(4.5vw,19px);
	font-weight: bold;
}


.shop_info {
	margin: 0 auto;
	text-align: center;
	display: flex;
	flex-direction: column;
}
.shop_head {
	font-size:min(6vw,18px);
	font-weight: bold;
	padding: 10px 0px;
	border-radius: 7px 7px 0 0;
}
.shop_name {
	font-size:min(15vw,60px);
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 30px 0;
}
.shop_name img {
	width:30%;
	max-width: 100px;
}
.shop_message {
	font-size:min(4.2vw,20px);
	font-weight: bold;
}
.shop_tel {
	font-size:min(8vw,36px);
	font-weight: bold;
	line-height: 1.4;
}
.shop_yoyaku {
	font-size:min(6vw,30px);
	font-weight: bold;
	margin: 10px auto;
	padding: 10px 0px;
	border-radius: 7px;
	width:50%;
}


.shop_information_name {
	text-align: center;
}
.shop_information_name_s {
	font-size:1.6em;
	font-weight: bold;
	line-height: 1.2;
	padding: 10px;
	text-align: center;
	border-radius: 7px;
	margin-bottom: 3em;
}
.shop_information_name_l {
	width:100%;
	height: 100px;
	font-size:2.6em;
	font-weight: bold;
	line-height: 100px;
	margin: 10px 0;
	border-radius: 7px;
}
.shop_information_name_l img {
	width:100px;
	margin-right: 10px;
}

.shop_information_section {
	width: 85%;
	margin: 0 auto;
}
.shop_information_section dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	line-height: 1.4;
	justify-content: start;
	align-items: start;
}
.shop_information_section dt {
	width: 15%;
	border-top: 1px solid #000;
	background-color: #FFF;
	padding: 25px 0;
	font-size: clamp(18px, 2.5vw, 20px);
}
.shop_information_section dd {
	width: 85%;
	border-top: 1px solid #999;
	padding: 25px 0;
	font-size: clamp(18px, 2.5vw, 20px);
}
.shop_information_map iframe {
	width: 100%;
	height: 500px;
	border-radius: 7px;
}

.shop_info_img {
	background-color: #FFF;
	width:100%;
	margin-bottom: 10px;
}
.shop_info_img img {
	border-radius: 7px;
}
ul.shop_info_img_sub {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	text-decoration: none;
	justify-content: center;
	margin-bottom: 30px;
}
.shop_info_img_sub li {
	display: block;
	position: relative;
	width: 15%;
	margin: 5px;
}
.shop_info_img_sub li::before {
  content: "";
  display: block;
  padding-top: 100%;
}
 
.shop_info_img_sub img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  object-fit: cover;
}
.sp_img img {
	display: none;
}
}

.fa-external-link:before {
	display: none;
}
.fa-external-link:after {
	margin-left: 3px;
	content: "\f08e";
	font-weight: 400;
}


