@charset "UTF-8";


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝　初期設定　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


*{
	margin: 0px;
	padding: 0px;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a:link {
	color: #464646;
	text-decoration: none;	
}

a:visited {
		color: #464646;	
}

a:hover {
	color: #464646;	
	text-decoration:underline;
}

a:active {
}


img{
	vertical-align: middle;
}

ul li {
	list-style:none;
}


a:hover img{
opacity:0.8;
filter:alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　ページレイアウト　＝＝＝＝＝＝＝＝＝＝＝＝＝ */


body	{
	margin: 0;
	width: 100%;
	-webkit-text-size-adjust: 100%;
	
	background:#F8F0D1;

	/* 2018/06/01　追加　*/
	background:#FFF;

	color:#BD2446;
	color:#000;	

}

section h1,h2,h3,h4,h5,h6{
	font-size:16px;
	font-weight:bold;
	padding:0;
	margin: 0;
	line-height: 1.5;
	/* max-height: 999999px;
   → 過去のバグ潰し目的だったが現在は不要 */
}	

section:after{
	display: table;
	content: "";
	clear: both;
}




.row{
	margin: 10px -15px;
}
.row:after{
	display: table;
	content: "";
	clear: both;
}

.row02{
	margin: 10px -3px;
}
.row02:after{
	display: table;
	content: "";
	clear: both;
}

.sm-1-div, .sm-2-div, .sm-3-div, .sm-4-div{
	display: block;
	float: left;
	padding: 0px 15px;
}
.sm-1-div{width: 100%;}
.sm-2-div{width:  50%;}
.sm-3-div{width:  33.33333333%;}
.sm-4-div{width:  25%;}
@media only screen and (min-width:651px) {
	.bg-1-div{width: 100%;}
	.bg-2-div{width:  50%;}
	.bg-3-div{width:  33.33333333%;}
	.bg-4-div{width:  25%;}
}




/*---table テーブルの設定はココ---*/
section table { width: 100%; border-collapse: collapse; }
section th, section td  { margin-bottom: 0px; padding: 12px; border: 1px solid #d7d7d7; vertical-align: top; font-size: 14px; }
section th  { background: #f0f0f0; }
 

/*----------------------------------------------------
  .t01　テーブルレイアウト
----------------------------------------------------*/
.t01 th  { width: 30%; text-align: left; }
 
@media only screen and (max-width:480px){
    .t01 { margin: 0 5px 0 5px; }
    .t01 th,
    .t01 td{
    width: 100%;
    display: block;
    border-top: none;
    }
  .t01 tr:first-child th { border-top: 1px solid #ddd; }
}

.t01 li {
	list-style: none;
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝　汎用クラス　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.main-text{
	font-size: 15px;
	line-height: 1.5;

	/* 2023/09/16　17:38追加　*/
	margin-bottom: 10px;
	/* 2018/05/14　11:17追加　*/
	padding:0px 5px 5px 5px;
}
@media only screen and (min-width:651px) {
	.main-text{
		font-size: 16px;
	}
}


.main-text00{
	font-size: 15px;
	margin-bottom: 10px;
	padding:0px 5px 5px;
	line-height: 1.5;
}

.main-text01{
	font-size: 15px;
	margin-bottom: 40px;
	padding:0px 5px 5px;
	line-height: 1.5;
}

.main-text02{
	font-size: 15px;
	margin-bottom: 40px;
	padding:0px 5px 5px;
	text-align:center;
	line-height: 1.5;
}

.main-text01-13px{
	font-size: 13px;
	text-align:left;
	line-height: 1.5;

	/* 2018/05/14　11:17追加　*/
	padding:0px 5px 5px 5px;
}

/* 縦方向の間隔調整 */


.height-space{
	height: 0px;
	margin-bottom: 40px;
}


.height-space1{
	height: 0px;
	margin-bottom: 10px;
}


.height-space2{
	height: 0px;
	margin-bottom: 20px;
}

.height-space3{
	height: 0px;
	margin-bottom: 80px;
}


/* 小画面－内余白ゼロ */
@media only screen and (max-width:650px) {
	.sm-nopad{
		padding: 0;
	}
}


/* 小画面－内余白調整(2段×2段用) */
@media only screen and (max-width:650px) {
	.sm-pad01{
		padding: 0 5px 10px 3px;
	}
	
	.sm-pad02{
		padding: 0 5px 10px 3px;
	}
	
	.sm-pad03{
		padding: 0 5px 10px 3px;
	}
	
	.sm-pad04{
		padding: 0 5px 10px 3px;
	}
}

.max-width{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
	}

.width-full{
	width: 100%;
	height:auto;
	vertical-align: bottom;
}


.width-full90{
	width: 90%;
}

.yt-max-width{
	max-width:100%;
}

.center01{
	text-align:center;
}


/* font関連 */
.fontRedBold {
	color: #FF0000;
	font-weight: bold;
}

.margin-t8{
	margin-top: 8px;
}

.margin-t-20{
	margin-top: -30px;
}

.margin-t-21{
	margin-top: -40px;
}

.margin-b8{
	margin-bottom: 8px;
}

.margin-b20{
	margin-bottom: 20px;
}

.margin-b30{
	margin-bottom: 30px;
}


/* imgの右側に使用 */
.padding-r5{
	padding-right:5px;
}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝　 上部　サイト名トップ　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


@media (min-width: 320px) {

/* 概要を横に並べる設定  フォトギャラリーで使用 */
.contents-list:after	{content: "";
	display: block;
	clear: both}

.contents-list .gaiyou	{
	float: left;
	width: 50%;
	}

.contents-list .gaiyou:nth-child(odd)
	{
	padding-right: 15px;
	padding-right: 5px;
	
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	clear: both}

.contents-list .gaiyou:nth-child(even)
	{
	padding-left: 15px;
	padding-left: 5px;
	
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box}

}

/* 概要 */
article	{
	padding:2px 3px!important;
	margin-bottom: 5px!important;
	margin:10px 0px 5px 0px;	
	}


.gaiyou	{
	margin-bottom: 20px;
	margin-bottom: 10px;

	}

.gaiyou a	{display: block;
	border: solid 1px #dddddd;
	color: #000000;
	text-decoration: none}

.gaiyou a:hover	{box-shadow: 0 0 10px #dddddd}

.gaiyou img	{max-width: 100%;
	height: auto;
	border: none;
	margin-bottom: 15px;
	margin-bottom: 5px;

	vertical-align: bottom}

.gaiyou h2	{margin-top: 0;
	margin-bottom: 5px;
	margin-left: 15px;
	margin-right: 15px;
	font-size: 22px}

.gaiyou p	{margin-top: 0;
	margin-bottom: 15px;
	margin-bottom: 5px;

	margin-left: 15px;
	margin-left:  5px;
	font-size: 14px;
	
	/* 2018/06/16　追加 */
   	font-weight:bold;
	
	}




/* パンくずリスト */
.bread	{
	margin: 0px 0px 10px 0px;
	padding:55px 0px 0px 0px;
}


/* iPhone / mobile webkit CSSハック  */
@media screen and (max-device-width: 480px) {
 .bread	{
	 margin-top:-1px;
	}
}


/* 250618 コメント化
.bread ol	{
	margin: 0;
	padding: 0;
	list-style: none
}
	
.bread li a	{
	font-size: 13px;
	display: inline-block;
	padding: 5px 2px 2px 0px;
	color: #000000;
	text-decoration: none
}
	
.bread li a:first-child{
	padding-left:5px;
	}

.bread li a:hover	{
	background-color: #eeeeee
}

.bread ol:after	{
	content: "";
	display: block;
	clear: both
}

.bread li {
	display: inline;
	font-size: 14px;
	width: auto;
}
	
.bread li:nth-child(2){
	margin-left:-20px;
}
	
.bread li:last-child {
	margin-left:-20px;
	padding:5px 0 0 5px;

}	

.bread li:after	{
	content: '';
	margin-left: 10px;
	margin-right: 10px;
	color: #888888
}
*/


	
/*.bread li:after	{content: '\003e';
	margin-left: 10px;
	margin-right: 10px;
	color: #888888}	*/


/* ########### 下部ナビ ########### */
.lower-menu:after	{content: "";
	display: block;
	clear: both}

.lower-menu02:after	{content: "";
	display: block;
	clear: both}


.lower-menu02	{
	width: 100%;
	clear: both;
	}



.header-space {
  height: 60px; /* headerの高さに合わせて調整 */
}




/*新しいパンくずリスト　250618*/

.bread {
  font-size: 0.75rem;
  color: #666;
  padding: 0px 15px;
  margin-bottom: 0;
}

.bread ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
}

.bread li {
  display: flex;
  align-items: center;
  line-height: 1.6;
  color: #666;
}

.bread li a {
  display: flex;
  align-items: center;
  line-height: 1.6;
  color: #666;  
}

.bread li + li::before {
  content: ">";
  margin: 0 4px;
}






/* 下部サイドメニュー */
.sidemenu	{
	/*border: solid 3px #006195;*/
		
	/* 2018/05/15　1:06　追加　*/
	border-radius: 5px;
	
	}

.sidemenu h3	{
	font-size: 15px;
	font-weight: bold;
	display: none;
	margin: 0;
	padding: 10px;
	background: #f4f4f4;	
}

.sidemenu h3 i	{
	font-size: larger;
	margin-right: 5px;
	color: #006195;
}

.sidemenu ul	{
	margin: 0;
	padding: 0;
	list-style: none
}


.sidemenu li a	{
	font-size: 15px;
	display: block;
	padding: 10px;
	border-top: 2px solid #ffffff;
	color: #000000;

	/* 2018/06/01　青系　*/
	background:#f0f0f0;
	
	text-decoration: none
}


/* 250530 fix　*/
.sidemenu li a:visited	{
	background:#f0f0f0;

}

/* 250530 fix　*/
.sidemenu li a:hover	{
		background:#f0f0f0;	
}

	/* 
.sidemenu li a:active	{
	background-color: #FFCC00;
2018/06/07　19:47　オレンジ系
	background:#FFBA82;　　
	text-decoration:underline;
}*/

/* 2018/10/18　20:06　一部メニュータイトル修正　*/
.sidemenu li.a01{
	font-size: 14px;
	font-weight: bold;
	background:#dcdcdc;	
	display: block;
	padding: 10px;
	border-top: 2px solid #ffffff;
	color: #000;
}　



.copyright {
	text-align: center;
}


/* コピーライト 
.copyright p {
	margin: 0;
	color:#E5E5E5;
	font-size: 12px
}*/


/* 　Footer箇所をバーの形にする */
.footer	{
	padding: 15px;
	
	/* 2018/06/28　フッター固定メニュー追加　*/
	padding-bottom:85px;
	
	/* 2018/06/08　color 青系　追加　*/
     background:#fff;
		
	/* 2018/06/04　13:08　追加　*/
	clear:both;
	
}

.footer h3 {   
    margin: 0 0 13px 0;
	color:#000;
}

.footer h3 a:link {   
 	color:#000;
}

.lower-menu	{
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 25px;
	padding-bottom: 25px;
	
	clear:both;
	margin-top:20px;	
}

.foot_copyright {
	margin-bottom: 50px;
	padding-left: 5px;
	font-size: 10px;
}




.mainPhoto{
	padding-top:13%;
	}


/* ＝＝＝＝＝＝＝＝＝＝＝＝＝　サイト下部リンク　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

h6{
	color: #227;
	font-size: 20px;
	line-height: 1.2;
	border-bottom: solid #227 3px;
	margin-bottom: 10px;
}

@media only screen and (min-width:651px) {
	h6{
		font-size: 24px;
	}
}

.main-text03{
	text-align: justify;
	font-size: 15px;
	line-height: 1.5;
}

@media only screen and (min-width:651px) {
	.main-text03{
		font-size: 16px;
	}
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝　店舗一覧の書式指定　＝＝＝＝＝＝＝＝＝＝＝＝＝ */

#shop-list{
	list-style-type: none;
}

@media only screen and (min-width:801px) {
	#shop-list{
		padding: 10px 15px;
	}
}

#shop-list li{
	width: 100%;
	margin: 10px 0px;

/*　2018/06/01　10:16　追加　*/	
　margin: 10px 10px!important;

}
@media only screen and (min-width:2000px) {
	#shop-list li{
		margin: 0px;
	
　　/*　2018/06/01　10:16　追加　*/	
　　margin: 10px 10px;
	}
}

#shop-list a{
	display: block;
	
	background: #369;
	background:#26b4ff;
	
	border-radius: 5px;
	color: #FFF;
	font-size: 14px;
	font-size: 18px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	
	/*　2018/06/01　10:16　追加　*/
	margin: 10px 10px!important;
}


#shop-list a:hover {
	background:#6ACBFF;
}


#bottom_fix {
		background:#ffa62b;
		padding:0px 0px 12px 0px;
		clear:both;
		margin: 0px;
		position:fixed;
		left: 0px;
		bottom: 0px;
/*		height:68px;
*/		
		width:100%;
}


#bottom_fix .iconWrap {
		clear:both;
		padding:5px 5px 5px 10px;
		left: 0px;
		bottom: 0px;
/*		height:68px;
		margin-top: 10px;
*/
		
		width:100%;
	
}


#bottom_fix .iconWrap .imgpad {
	padding-bottom:2px;
			
}



/*250602*/

.info-box {
  border: 3px solid #ffae22;
  text-align: center;
  margin-bottom: 10px;
  border-radius: 48px;
}

.info-link {
  display: block; /* ← これでブロック表示に */
  height: 70px;
  padding: 10px 0 0 15px;
  text-decoration: underline;
}

.info-link em {
  font-size: 12px;
  font-style: normal;
}




/*ニュース*/

/* --- レイアウト装飾系 --- */
.news-card {
  background-color: #fff;
  border-radius: 8px;
  border: 1px solid #ccc;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  padding-left: 13px;
  padding-bottom: 10px;
  overflow: hidden;
}




/* --- ボタンスタイル --- */
.btn {
  display: inline-block;
  padding: 6px 12px;
  text-decoration: none;
  border-radius: 4px;
  text-align: center;
  font-weight: 500;
}

.btn-outline {
  border: 1px solid #555;
  color: #555;
}

.btn-outline:hover {
  background-color: #f5f5f5;
}






/*-------------------------------------------ユーティリティークラス*/



/*image ブロック化*/

.block { display: block; }

.img-center {
  display: block;
  margin: 0 auto;
}

.img-right {
  float: right;
  margin-left: 20px;
}



/*グーグルフォント*/

.heading {
  font-family: 'Poppins', sans-serif;
}






/*----------------------------------------------記号 ライン*/

.arrow-illust::before {
  content: "➔";
  font-weight: 600;
  font-size: 1em;
  margin-right: 5px;
  color: #5ac7ef;  
}

.square-illust::before {
  content: "■";
  font-weight: 600;
  font-size: 0.8125rem;
  margin-right: 5px;
  color: #5ac7ef;  
}

.arrow-link::after {
  content: '>';
  font-weight: bold;   /* ← 視認性アップ（任意） */
  margin-left: 3px;
}

.hr-line {
  border: none;
  border-top: 1px solid #dcdcdc;
  margin: 20px 0;
  width: 100%;
  
}

/*hr*/
.hr-light { border-top: 1px solid #eee;}


.textline2 {
  font-size:98%;
  font-weight:bold;
  letter-spacing:0.03em;
  background:linear-gradient(transparent 48%, #f5ff00 50%);
  }


/*ユーティリティクラス------------------------------------------------*/

/*<img>だけで画像をセンターにしたい場合*/
.mx-auto { display: block; margin-left: auto; margin-right: auto; }

.d-block { display: block; }

.img-center {
  display: block;
  margin: 0 auto;
  max-width: 100%;/*追加250807*/
  height: auto;/*追加250807*/
}


/* -- Margin 0px -- */
.mt0 { margin-top: 0px; }
.mr0 { margin-right: 0px; }
.mb0 { margin-bottom: 0px; }
.ml0 { margin-left: 0px; }

/* -- Margin 30px -- */
.mt30 { margin-top: 30px; }
.mr30 { margin-right: 30px; }
.mb30 { margin-bottom: 30px; }
.ml30 { margin-left: 30px; }

/* -- 過去の設定済 -- */
.mb05 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }


.pd15 { padding:15px 15px 0 15px; }


/* -- Padding each 15px -- */
.pt0 { padding-top: 0px; }
.pr0 { padding-right: 0px; }
.pb0 { padding-bottom: 0px; }
.pl0 { padding-left: 0px; }

/* -- Padding each 5px -- */
.pt5 { padding-top: 5px; }
.pr5 { padding-right: 5px; }
.pb5 { padding-bottom: 5px; }
.pl5 { padding-left: 5px; }

/* -- Padding each 10px -- */
.pt10 { padding-top: 10px; }
.pr10 { padding-right: 10px; }
.pb10 { padding-bottom: 10px; }
.pl10 { padding-left: 10px; }

/* -- Padding each 15px -- */
.pt15 { padding-top: 15px; }
.pr15 { padding-right: 15px; }
.pb15 { padding-bottom: 15px; }
.pl15 { padding-left: 15px; }

/* -- Padding each 30px -- */
.pt30 { padding-top: 30px; }
.pr30 { padding-right: 30px; }
.pb30 { padding-bottom: 30px; }
.pl30 { padding-left: 30px; }

/* -- Padding each 40px -- */
.pt40 { padding-top: 40px; }
.pr40 { padding-right: 40px; }
.pb40 { padding-bottom: 40px; }
.pl40 { padding-left: 40px; }

/* -- Padding all -- */
.pd10 { padding: 10px; }
.pd20 { padding: 20px; }
.pd30 { padding: 30px; }
.pd40 { padding: 40px; }  




/*----------------------------------------------フォント系*/

/* -- 小見出し -- */
.heading-xl  { font-size: 1.75rem; } /* 28px - メインタイトル */
.heading-lg  { font-size: 1.5rem;  } /* 24px - セクション見出し */
.heading-md  { font-size: 1.25rem; } /* 20px - サブ見出し */
.heading-sm  { font-size: 1.125rem;} /* 18px - 小見出し */

/* -- 本文：サイズベース -- */
.text-2xs { font-size: 0.6875rem; }  /* 11px */
.text-xs   { font-size: 0.75rem; }    /* 12px */
.text-sm   { font-size: 0.875rem; }   /* 14px */
.text-base { font-size: 0.9375rem; }  /* 15px ←おすすめ */
.text-md   { font-size: 1rem; }       /* 16px */
.text-lg   { font-size: 1.125rem; }   /* 18px */
.text-xl   { font-size: 1.25rem; }    /* 20px - 本文：サイズベース */

/*テキストアライン*/
.ta-left   { text-align: left; }     /* 左寄せ（初期値） */
.ta-center { text-align: center; }   /* 中央寄せ */
.ta-right  { text-align: right; }    /* 右寄せ */
.ta-justify { text-align: justify; } /* 両端揃え（ニュース記事などに） */

/*ラインヘイト  行間*/
.lh100 { line-height: 1; }
.lh120 { line-height: 1.2; }
.lh130 { line-height: 1.3; }
.lh140 { line-height: 1.4; }
.lh150 { line-height: 1.5; }
.lh160 { line-height: 1.6; }
.lh170 { line-height: 1.7; }
.lh180 { line-height: 1.8; }
.lh200 { line-height: 2; }

/*レタースペーシング　文字間*/
.ls0   { letter-spacing: 0; }         /* デフォルト */
.ls05  { letter-spacing: 0.05em; }    /* やや広め */
.ls1   { letter-spacing: 0.1em; }     /* 標準より広め */
.ls15  { letter-spacing: 0.15em; }    /* ゆったり */
.ls2   { letter-spacing: 0.2em; }     /* 強調見出しなどに */

/*フォントウェイト*/
.fw100 { font-weight: 100; } /* Thin */
.fw300 { font-weight: 300; } /* Light */
.fw400 { font-weight: 400; } /* Normal */
.fw500 { font-weight: 500; } /* Medium */
.fw600 { font-weight: 600; } /* Semi-Bold */
.fw700 { font-weight: 700; } /* Bold */
.fw900 { font-weight: 900; } /* Black */

/*フォントカラー*/
.text-main    { color: #005BAC; }   /* メインブルーなど（ブランド色） */
.text-sub     { color: #999; }      /* 補足テキストなど */
.text-gray    { color: #666; }      /* 通常の本文色に最適 */
.text-light   { color: #bbb; }      /* 無効・小さな注釈などに */
.text-danger  { color: #D9534F; }   /* エラー・注意書きなどに */
.text-success { color: #5CB85C; }   /* 成功・完了などに */
.text-white   { color: #fff; }      /* 白背景以外で使う用 */
.text-blue { color: #007acc; }
.text-white { color: #ffffff; }
.text-skyblue { color: #5ac7ef; }
.text-gray { color: #b4b4b4; }

/*ボーダー*/
.border-0 { border: none; }
.border-1 { border: 1px solid #ccc; }
.border-13 { border: 1px solid #5ac7ef; }
.border-4 { border: 1px solid #ffffff; }
.border-2 { border: 2px solid #ccc; }
.border-3 { border: 3px solid #ccc; }
.border-8 { border: 8px solid #eff7ff; }
.border-10 { border: 10px solid #eff7ff; }
.border-12 { border: 12px solid #eeeeee; }

/*ボーダーラディウス*/
.radius      { border-radius: 4px; }   /* 基本の角丸 */
.radius-sm   { border-radius: 2px; }   /* 小さめ */
.radius-md   { border-radius: 6px; }   /* 中くらい */
.radius-lg   { border-radius: 12px; } 

.text-underline { text-decoration: underline !important; }


/*----------------------------------------------------------------------下記だぶり　徐々に整理*/

/* -- font-weight -- */
.font-thin       { font-weight: 100; }
.font-light      { font-weight: 300; }
.font-normal     { font-weight: 400; }
.font-medium     { font-weight: 500; }
.font-semibold   { font-weight: 600; }
.font-bold       { font-weight: 700; }
.font-extrabold  { font-weight: 800; }

/* -- backgroud -- */
.bg-e3effd { background-color: #e9f3ff; }