﻿@charset "UTF-8";
 
@import url('https://use.fontawesome.com/releases/v5.9.0/css/all.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;500&family=Roboto:wght@300;500&display=swap');

/* all */
* {
margin: 0;
padding: 0;
word-break: normal;
}

BODY{
margin:0;
padding:0;
background:#FFF;
color:#300;
font-size: 100.0%;	/* 16pxベース */
line-height:1.5;
letter-spacing:1px;
text-align: center;
font-family:'Roboto', 'Noto Sans JP', sans-serif;
font-weight:300;
-webkit-text-size-adjust: 100%;	/* iPhone版Safari対策 */
}

* html body {	 /* for IE6 */ 
font-size: 100.0%;	/* 16pxベース */
}
*:first-child+html body { /* for IE7 */
font-size: 100.0%;	/* 16pxベース */
}
html.android H3,
html.android H4,
html.android *{	/* Android はフォント指定OFF */
font-family: sans-serif !important;
}
html.android .fab,
.fab{
font-family: "Font Awesome 5 Brands" !important;
}
html.android .fas,
.fas{
font-family: "Font Awesome 5 Free" !important;
}
html.android .far,
.far{
font-family: "Font Awesome 5 Free" !important;
}


/*------ フォントサイズ ------
font-size:62.5%;	10px
font-size:75.0%;	12px
font-size:87.5%;	14px
font-size:100.0%;	16px
font-size:112.5%;	18px
font-size:125.0%;	20px
font-size:137.5%;	22px
font-size:150.0%;	24px
font-size:162.5%;	26px
font-size:175.0%;	28px
font-size:187.5%;	30px
font-size:200.0%;	32px
font-size:212.5%;	34px
font-size:225.0%;	36px
font-size:237.5%;	38px
font-size:250.0%;	40px
-----------------------------*/


IMG{
max-width: 100%;
}
IMG,
A IMG{
border:none;
}

P{
margin-top:1.8em;
margin-bottom:1.8em;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}


/*--------------------------------------------------------------------
  「レスポンシブ」固有
--------------------------------------------------------------------*/
.pc,
.pc_tablet{
display:inline-block;
}

.tablet_sp,
.tablet,
.sp{
display:none;
}
.block_pc{	/* PCの時だけ改行する */
display:block;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	IMG{
	width:auto;
	height:auto;
	max-width: 100%;
	}
	.block_tablet_sp{	/* タブレット・スマホの時だけ改行する */
	display:block;
	}
	.block_pc{	/* PCの時だけ改行する */
	display:inline-block;
	}
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.pc,
	.sp{
	display:none !important;
	}
	.tablet_sp,
	.pc_tablet,
	.tablet{
	display:inline-block !important;
	}
	.block_tablet{	/* タブレット・スマホ横の時だけ改行する */
	display:block;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	*{
	word-break: break-all;
	}
	.pc_tablet,
	.pc,
	.tablet{
	display:none !important;
	}
	.tablet_sp,
	.sp{
	display:inline-block !important;
	}
	.block_sp{	/* スマホ縦の時だけ改行する */
	display:block;
	}
}

.pc_none{
display:none;
}




/*--------------------------------------------------------------------
  「スマホ（横）」「タブレット」固有の設定
--------------------------------------------------------------------*/
@media only screen and (min-width:541px) and (max-width:768px) {
	.pc_none{
	display:inherit;
	}
	.tablet_none{
	display:none;
	}
}


/*--------------------------------------------------------------------
  「スマホ（縦）」固有の設定
--------------------------------------------------------------------*/
@media only screen and (max-width:540px) {
	.pc_none{
	display:inherit;
	}
	.sp_none{
	display:none;
	}
}




/*--------------------------------------------------------------------
リンクテキスト
---------------------------------------------------------------------*/
A{
text-decoration:none;
color:#300;
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
}
#content A{
color:#099;
}
#content A:VISITED{
color:#369;
}
A:HOVER{
color:#999;
}
#content A:HOVER{
color:#999;
text-decoration:none;
}


/*------ 外部リンクアイコン ------*/
.content A[href^="https://"]::after,
.content A[href^="http://"]::after {
margin-left:0.25em;
content: "\f35d";
font-family: "Font Awesome 5 Free";
font-weight : 900;
text-decoration:none;
display:inline-block;
}
.content .banner_item LI A::after,	/* バナーの時は除外 */
.content A[href*="shuwatch.jp"]::after,	/* 自社リンクは除外 */
.content A[href*="sblo.jp"]::after {	/* 自社ブログは除外 */
content:none;
}



/*--------------------------------------------------------------------
見出し 
---------------------------------------------------------------------*/
H1,H2,H3,H4,H5,H6{
margin:0;
padding:0;
font-size:100.0%;	/* 16px */
border:none;
background:none;
font-weight:300;
line-height:1.3;
}


/*------------------------------------------------
H2
------------------------------------------------*/
#content_header{
font-weight:300;
}

H2{
margin:0 auto;
font-size:300.0%;	 /* 48px */
}
#content_header H2{
margin-bottom:1.5em;
padding:1.2em 1.8% 1.0em 2.0%;
letter-spacing:10px;
color:#FFF;
background:#AD7D4C url(img/wood03.png);	/* 香染 */
}
#content_header H2 .small{
margin:0 auto;
display:table;
font-size:37.5%;	/* 18px */
letter-spacing:1px;
text-indent:-10px;
}

#content_header>*:not(H2){
margin-right:auto;
margin-left:auto;
max-width:1200px;
}
#content_header P{
font-size:112.5%;	/* 18px */
width:90%;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#content_header H2{
	letter-spacing:1px;
	}
	#content_header H2 .small{
	text-indent:0;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#content_header H2{
	letter-spacing:1px;
	font-size:200.0%;	/* 32px */
	}
	#content_header H2 .small{
	font-size:43.75%;	/* 14px */
	}
	#content_header P{
	font-size:100.0%;	/* 16px */
	}
}



/*------------------------------------------------
   H3
------------------------------------------------*/
H3{
font-size:225.0%;	/* 36px */
text-align:center;
}
ARTICLE.content H3{
margin:3.0em auto 1.0em auto;
padding:0.1em;
border-bottom:2px solid #300;
display:table;
}

#home FOOTER H3 .small,
H3 .small{
display:block;
font-size:38.9%;	/* 14px */
}

/*------ 他要素隣接時 ------*/
*+H3,
H3~H3{
margin-top:3em;
}
H3+*{
margin-top:1em !important;
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	H3{
	font-size:200.0%;	/* 32px */
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	H3{
	font-size:150.0%;	/* 24px */
	}
}



/*------------------------------------------------
   H4
------------------------------------------------*/
/*------ H4基本設定 ------*/
H4{
font-size:150.0%;	/* 24px */
clear:both;
line-height:1.3;
}

/*------ 他要素隣接時 ------*/
*+H4,
H4~H4{
margin-top:2em;
}
H4+*{
margin-top:0.7em;
}





/*------------------------------------------------
   H5
------------------------------------------------*/
/*------ H5基本設定 ------*/
H5{
font-size:112.5%;	/* 18px */
}


/*------ 他要素隣接時 ------*/
ARTICLE H4+H5{
margin-top:0;
}

ARTICLE *+H5{
margin-top:2.0em !important;	/* 各要素と隣接時には上余白を多めに */
}

/*------------------------------------------------
   H6
------------------------------------------------*/
/*------ H6基本設定 ------*/
H6{
margin:10px 0 5px 0;
padding:0;
font-size:112.5%;	/* 20px */
background:url(img/spacer.gif) no-repeat;
}

/*------ 他要素隣接時 ------*/
H5+H6{
margin-top:0;
}
H6+P,
H6+UL,
H6+OL,
H6+DL{
margin-top:0 !important;
}
*+H6{
margin-top:20px;	/* 各要素と隣接時には上余白を多めに */
}



/*--------------------------------------------------------------------
  インデント
--------------------------------------------------------------------*/
.indent2em{
margin-left:2em;
display:block;
line-height:1.5;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.indent2em{
	margin-left:0;
	line-height:1.3;
	}

}

/*--------------------------------------------------------------------
  画像レイアウト枠
--------------------------------------------------------------------*/
/*------ 1枚・複数共通 ------*/
.photo,
.photos{
text-align:center;
}
.photo IMG,
.photos IMG{
margin:0 auto;
}

/*------ 1枚 ------*/
.photo IMG{
display:block;
}
/*------ 複数 ------*/
.photos IMG{
display:inline-block !important;
vertical-align:middle;
}
.photos IMG:nth-child(n+2){	/* 2個目以降 */
margin-left:10px;
}


@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.photos BR{
	display:none;
	}
	.photos IMG:nth-child(n+2){	/* 2個目以降 */
	margin-left:10px !important;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.photos IMG:nth-child(n+2){	/* 2個目以降 */
	margin-left:auto;
	display:block;
	}
}


/*------------------------------------------------
  キャプション付き
------------------------------------------------*/
.caption{
text-align:center;
}
.caption IMG{
padding:0 0 0.5em 0;
display:block;
vertical-align:bottom;
overflow:hidden;
line-height:0;
}
.caption .label{
font-size:87.5%;	/* 14px */
background:#666;
color:#FFF;
}



/*--------------------------------------------------------------------
左寄せ・右寄せ
---------------------------------------------------------------------*/
.text_alignleft{
text-align:left;
}
.text_aligncenter{
text-align:center;
}
.text_alignright{
text-align:right;
}


/*------------------------------------------------
画像の左寄せ・右寄せ
------------------------------------------------*/
.aligncenter{
display: block;
margin-left: auto;
margin-right: auto;
}
.alignright{
float:right;
}
.alignleft{
float:left;
}
.clear{
clear:both;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#content .alignleft,
	#content .alignright{
	margin-right:auto;
	margin-left:auto;
	display:block;
	float:none;
	}
}


/*--------------------------------------------------------------------
  フォントサイズ・色
---------------------------------------------------------------------*/
.jp{
font-family:'Noto Sans JP', sans-serif;
}

/*------------------------------------------------
   文字サイズ
------------------------------------------------*/
.extrasmall{
font-size:75.0%;	/* 12px */
}
.small{
font-size:87.5%;	/* 14px */
}
.large{
font-size:112.5%;	/* 18px */
}
.extralarge{
font-size:125.0%;	/* 20px */
}

.normal{
font-weight:normal;
}

SUP,SUB{
font-size:62.5%;	/* 10px */
}

/*------------------------------------------------
   強調下線
------------------------------------------------*/
.borderbottom{
border-bottom:2px solid #000;
}
.underline{
display:inline;
background: -prefix-linear-gradient(	/* Webkit系 */
bottom,
rgba(204,255,0,1),
rgba(204,255,0,1) 34%,
rgba(204,255,0,0) 35%),
url(img/spacer.gif);
background: linear-gradient(	/* ピンク 12.1、IE 10、Fx 16 以降 */
to top,
rgba(204,255,0,1),
rgba(204,255,0,1) 34%,
rgba(204,255,0,0) 35%),
url(img/spacer.gif);
/ border-bottom:5px solid #CF0;	/* IE7対策 */
}
html.android .underline{
/* Android は下線 */
border-bottom:5px solid #CF0;
}

/*------------------------------------------------
   前後の線
------------------------------------------------*/
.line::before,
.line::after,
.line_white::before,
.line_white::after{
margin:-0.2em 10px 0 10px;
content:"";
display:inline-block;
background-position:center;
background-repeat:repeat-x;
width:50px;
height:1px;
vertical-align:middle;
}
.line::before,
.line::after{
background-image:url(img/line.gif);
}
.line_white::before,
.line_white::after{
background-image:url(img/line_white.gif);
}
/*------------------------------------------------
   左の線
------------------------------------------------*/
.leftborder{
padding:0.5em 0 0.5em 1em;
border-left:1px solid #C7DC68;	/* 若苗色 */
}


/*------------------------------------------------
   文字色
------------------------------------------------*/
.red{
color:#E60011;	/* ロゴ色 */
}
.blue{
color:#39C;
}
.green{
color:#690;
}
.orange{
color:#F08200;	/* 暗いオレンジ */
}
.white{
color:#FFF;
}
.brown{
color:#CD853F;	/* Peru */
}

/*--------------------------------------------------------------------
  リストスタイル
---------------------------------------------------------------------*/
UL{
padding:0;
list-style:none;
}
LI{
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}

ARTICLE UL{
margin:1.2em 0;
}
ARTICLE UL>LI{
margin-top:0.5em;
margin-bottom:0.5em;
}
ARTICLE LI LI{
margin-top:0.2em;
margin-bottom:0.2em;
}

/*------------------------------------------------
  ネスト時
------------------------------------------------*/
LI UL,
DD UL,
TD UL{
margin-top:0;
margin-bottom:0.3em;
}

/*------------------------------------------------
  箇条書きリスト
------------------------------------------------*/
UL.list>LI,
UL>LI.list{
padding-left:1.3em;
text-indent:-1.3em;
}
UL.list>LI *,
UL>LI.list *{
padding-left:0;
text-indent:0;
}


LI.list:not(.kome)::before,
.list>LI:not(.kome)::before{
margin:-0.22em 0.5em 0 0.5em;
text-indent:0;
content:"\f111";
font-family: "Font Awesome 5 Free";
font-weight : 900;
font-size:0.6em;
vertical-align:middle;
display:inline-block;
color:#F8B500;	/* 山吹色 */
}



/*------------------------------------------------
  横並びリスト
------------------------------------------------*/
UL.inline{
display:block;
letter-spacing:-1em;	/* 横並びの隙間対策 */
text-align: left;
text-justify: none;
}
UL.inline.table{
display:table;
}
UL.inline LI{
padding-right:1.25em;
display:inline-block;
*display: inline;		/* IE7対策 */
*zoom: 1;  				/* IE7対策 */
vertical-align:top;
letter-spacing:1px;	/* 横並びの隙間対策 letter-spacing 復活 */

}




/*------------------------------------------------
  番号付きリスト
------------------------------------------------*/
OL{
margin:1.2em 0;
padding:0;
}

/*------ ネスト時 ------*/
LI OL,
DD OL,
TD OL{
margin-top:0;
margin-bottom:0.3em;
}
OL>LI{
margin-left:2.2em;
list-style-type : decimal;
}

/*------ 両側に()カッコ ------*/
OL.kakko>LI{
margin-left:0;
padding-left:2.2em;
text-indent: -2.1em;
list-style-type:none;
list-style-position:inside;
counter-increment: cnt;
}
OL.kakko>LI:before{
display: marker;
content: "(" counter(cnt) ") ";
}




/*------------------------------------------------
  説明付きリスト
------------------------------------------------*/
DL{
margin:1.2em 0;
padding:0;
}
LI>DL{	/* ネストする時は上余白を少な目に */
margin-top:0.6em;
}
DT{
margin:0;
padding:0;
font-size:112.5%;	/* 18px */
}
DD{
margin:0;
padding:0;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}
DT+DT,
DD+DT{	/* 2番目以降のタイトル行だけ上余白を設ける */
margin-top:1.5em;
}

LI>DL DT+DT,
LI>DL DD+DT{	/* ネストする時は上余白を少な目に */
margin-top:1em;
}




/*------------------------------------------------
  注釈 ※ リスト
------------------------------------------------*/
DD.kome,
UL.kome>LI,
LI.kome{
padding-left:1.3em;
text-indent:-1.3em;
line-height:1.3;
}
DD.kome::before,
UL.kome>LI::before,
LI.kome::before{
margin-right:0.2em;
display:inline-block;
content:"※";
color:#E7346D;	/* LogoPink */
text-indent:0;
}



/*------------------------------------------------
  PDF・Word・Excelリスト
------------------------------------------------*/
/*------ 共通 ------*/
UL.pdf LI,
UL.word LI,
UL.excel LI,
LI.pdf,
LI.word,
LI.excel{
margin-top:0 !important;
margin-bottom:0 !important;
padding:0.4em 0 0.4em 40px;
background-repeat:no-repeat;
background-position:0 0.2em;
background-position:0 0.2em;
list-style:none;
min-height:36px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}
.pdf A,
.word A,
.excel A{
vertical-align:top;	/* IE7対策 */
}

/*------ PDFリスト ------*/
UL.pdf LI,
LI.pdf{
background-image:url(img/pdf.png);
}

/*------ Wordリスト ------*/
UL.word LI,
LI.word{
background-image:url(img/word.png);
}

/*------ Excelリスト ------*/
UL.excel LI,
LI.excel{
background-image:url(img/excel.png);
}


/*------ PDFリスト（小） ------*/
margin-top:0 !important;
margin-bottom:0 !important;
padding:0.2em 0 0.2em 20px;
background-repeat:no-repeat;
list-style:none;
min-height:20px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
background:url(img/pdf_s.gif) no-repeat 0 0.4em;

.pdf_s A{
vertical-align:top;	/* IE7対策 */
}



/*--------------------------------------------------------------------
  表
---------------------------------------------------------------------*/
TABLE{
margin-top:1.5em;
margin-bottom:1.5em;
font-size:100%;
line-height:1.3;
}

TH{
text-align:center;
font-weight:normal;
font-size:100%;
}
TD{
font-size:100%;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}
TH>*,
TD>*{
margin-top:0;
margin-bottom:0;
}
TH>*~*,
TD>*~*{
margin-top:5px;
}

/*------------------------------------------------
  罫線を表示するタイプの表
------------------------------------------------*/
TABLE.data_table{
border-collapse:collapse;
border:1px solid #CCC;
background:rgba(199,220,104,0.5);	/* #C7DC68 若苗色 */
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	TABLE.data_table{
	width:100%;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	TABLE.data_table{
	width:100%;
	}
}

TABLE.data_table CAPTION{
text-align:right;
}
.data_table TH{
padding:0.3em;
border:1px solid #CCC;
text-align:center;
background:url(img/spacer.gif) no-repeat;}

.data_table TD{
padding:0.6em 0.3em;
border:1px solid #CCC;
background:rgba(255,255,255,0.5);
}
.data_table TR:nth-child(even){	/* 偶数行に着色 */
background:rgba(255,255,255,0.8);
}



/*------------------------------------------------
  スマホ表示時にセルをスライドさせるタイプの表
------------------------------------------------*/
TABLE.float_table{
}

@media only screen and (min-width:541px) and (max-width:768px) {
	TABLE.float_table{
	width:100%;
	}
}
.float_table TH{
}
.float_table TD{
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	TABLE.float_table{
	border-top:none;
	border-right:none;
	}
	.float_table TH,
	.float_table TD{
	padding-right:3%;
	padding-left:3%;
	float:left;
	width:94% !important;
	}
	.float_table TH{
	line-height:1.2;
	border-top:1px solid #E6BFAB;	/* AshRose */
	border-right:1px solid #E6BFAB;	/* AshRose */
	border-bottom:none;
	border-left:none;
	background:#FFE4E1;	/* MistyRose */
	}
	.float_table TD{
	border-top:none;
	border-right:1px solid #E6BFAB;	/* AshRose */
	border-bottom:none;
	border-left:none;
	background:#FFF;
	}
	.data_table.float_table TR:nth-child(odd){	/* 奇数行に着色 */
	background:none;
	}
}


/*------------------------------------------------
  スマホ表示時にセルをスライドさせるタイプの表(WIDE)
------------------------------------------------*/

.float_table_wide SPAN.t_label{
display:none;
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.data_table.float_table_wide{
	border-top:none;
	border-right:none;
	border-left:none;
	}

	.float_table_wide THEAD{
	display:none;
	}
	.float_table_wide TBODY TD{
	padding:0 10px 10px 10px;
	display:block;
	border-top:none;
	border-bottom:none;
	}
	.float_table_wide TH SPAN.t_label{
	margin-right:1em;
	display:inline-block;
	font-size:87.5%;
	}
	.float_table_wide TD SPAN.t_label{
	margin:0 -10px 10px -10px;
	padding:5px 10px;
	display:block;
	border-top:1px solid #999;
	background:#DCDCDC;
	}
	.float_table_wide TD~TD SPAN.t_label{
	border-top:none;
	}
}




/*------------------------------------------------
  テーブルレイアウト
------------------------------------------------*/
DIV.island,
TABLE.island,
UL.island,
OL.island,
DL.island{
margin-right:auto !important;	/* インデントリセット */
margin-left:auto !important;	/* インデントリセット */
display: table;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	DIV.island,
	TABLE.island,
	UL.island,
	OL.island,
	DL.island{
	margin-right:0 !important;
	margin-left:0 !important;
	}
}




/*--------------------------------------------------------------------
  「トップページ」固有の設定
---------------------------------------------------------------------*/
/*-----------------------------------------------
  トップページ「メインビジュアル」(H2) 
------------------------------------------------*/
#mainvisual{
padding:20px;
background:#AD7D4C url(img/wood03.png);	/* 香染 */
font-size:200.0%;	/* 32px */
}

#mainvisual IMG{
margin:0 auto;
display:block;
width:100%;
z-index:1;
}
#mainvisual A{
display:inline-block;
background:#241A08;	/* 憲法黒茶 */
position:relative;
vertical-align:bottom;
}

#mainvisual A .text{
position:absolute;
top:50%;
left:0;
transform:translate(0,-50%);
color:#FFF;
width:100%;
text-shadow: 0px 0px 2px #000;
z-index:2;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#mainvisual{
	padding:0;
	font-size:112.5%;	/* 18px */
	}
	#mainvisual A .text{
	}
}

/*-----------------------------------------------
  トップページ「PR欄」
------------------------------------------------*/
.top_pr{
margin:0;
padding:5em 0;
}

/*------ 各パーツ ------*/
.top_pr>*{
margin-right:auto;
margin-left:auto;
}
.top_pr>H3,
.top_pr>P{
max-width:1150px;
}
.top_pr .item{
max-width:1150px;
}

.top_pr H3{
padding:0 0 10px 0;
}
.top_pr .item{
padding:0;
}
.top_pr .item LI{
padding:0;
text-align:center;
}

.top_pr .link_large{
display:table;
font-size:100.0%;	/* 16px */
}


/*-----------------------------------------------
  トップページ コンセプト欄 Concept
------------------------------------------------*/
#concept{
padding-top:6em;
}
#concept H4{
margin:1em auto;
font-size:225.0%;	/* 36px */
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#concept H4{
	font-size:187.5%;	/* 30px */
	}
}


/*-----------------------------------------------
  トップページお知らせ欄 NEWS / BLOG
  RSS FeedでSAKURAのブログタイトルを読み込み
------------------------------------------------*/
#news{
padding:0;
display:table;
width:100%;
}
#news_image{
display:table-cell;
width:60%;
background-repeat:no-repeat;
background-position:center top;
background-image:url(img/shop_inside_bg.jpg);
background-size:cover;
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
}

#news .content{
padding:7.0em 0 4.5em 0;
display:table-cell;
width:40%;
background-color:tan;
background:#AD7D4C url(img/wood03.png);	/* 香染 */
}


#feed UL{
margin:1.5em auto 0 auto;
width:80%;
border-bottom:1px solid #F5DEB3;	/* Wheat */
border-bottom:1px solid rgba(255,255,255,0.5);
}
#feed LI{
margin:0 auto;
padding-top:0.5em;
padding-right:0.5em;
padding-bottom:0.5em;
border-top:1px solid #F5DEB3;	/* Wheat */
border-top:1px solid rgba(255,255,255,0.5);
}
#feed LI A{
line-height:1.3;
display:inline-block;
color:#FFF;
}
#feed LI A:hover{
color:rgba(255,255,255,0.65);
}

#feed .list>LI::before{
color:#FFD700;	/* Gold */
}


/*------ 日付 ------*/
#feed LI SPAN{
margin-right:2.0em;
font-weight:500;
display:inline-block;
font-size:87.5%;	/* 14px */
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#news_image,
	#news .content{
	display:block;
	width:100%;
	}
	#news .content{
	padding:5.5em 0 4.0em 0;
	}
	#feed UL{
	width:90%;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#news_image{
	height:600px;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#news_image{
	height:300px;
	}
	#feed LI SPAN{
	margin-right:auto;
	}
	#feed LI A{
	margin-right:auto;
	display:block;
	}
}


/*--------------------------------------------------------------------
  「MENU/COUPON」固有の設定
---------------------------------------------------------------------*/
#menu .price{
font-weight:500;
font-size:125.0%;	/* 20px */
}
#menu DL{
margin:0 auto;
}

#menu DT{
margin-bottom:0.5em;
padding:0 0.4em;
font-size:125.0%;	/* 20px */
line-height:1.2;
position:relative;
}
#menu DD{
margin:0 auto;
padding:0 0.5em 0 1.2em;
}
#menu DD.price{
padding:0 0 0 0.9em;
display:inline-block;
}
#menu DD.notice{
font-size:87.5%;	/* 14px */
display:inline-block;
}
#menu DD.kome{
font-size:87.5%;	/* 14px */
}

#menu DD.notice::before{
content:"（";
}
#menu DD.notice::after{
content:"）";
}
#menu DD.kome{
padding-left:2.4em;
text-indent:-1.2em;
}

#menu FOOTER::before{
content:"";
display:block;
height:500px;
width:100%;
background-position:center;
background-size:cover;
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
background-image:url(menu/img/menu_image.jpg);
}
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#menu .content>.text_aligncenter{
	text-align:left;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#menu FOOTER::before{
	height:250px;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#menu .content>.text_alignright{
	text-align:left;
	}
	#menu DT{
	padding:0 0.2em;
	}
	#menu FOOTER::before{
	height:150px;
	}
}

/*------------------------------------------------
  MENU
------------------------------------------------*/
DL#menu_item{
padding:1.2em 0;
border-top:1px solid #300;
border-bottom:1px solid #300;
}

#menu_item DD+DT{
margin-top:1.0em;
padding-top:1.0em;
border-top:1px solid #CCC;
}
#menu_item DT A{
padding:0.5em;
font-size:70.0%;	/* 14px */
position:absolute;
right:1.0em;
bottom:0;
font-weight:500;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#menu_item DT A{
	margin:-1.5em -0.6em 0 0.2em;
	position:static;
	float:right;
	display:block;
	width:6.0em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#menu DD,
	#menu DD.price,
	#menu DD.notice{
	padding:0 0.2em;
	display:block;
	}
	#menu_item DD.kome{
	padding:0 0.2em 0 1.3em;
	}

	#menu DD.notice::before,
	#menu DD.notice::after{
	content:"";
	}

}


/*------------------------------------------------
  COUPON
------------------------------------------------*/
/*------ 初回限定（リボン仕様） ------*/
#coupon H3 .small{
margin-left:-1.0em;
margin-right:-1.0em;
background:#FC0; /* 山吹色 */
display:block;
line-height:2.0em;
font-weight:500;
font-size:50.0%;	/* 18px */
}
.ribbon{
margin-bottom:10px;
display: inline-block;
position: relative;
text-align: center;
}
.ribbon>SPAN{	/* 左側の折り返し用 */
display: block;
position: relative;
}
.ribbon>SPAN::before,
.ribbon>SPAN::after,
.ribbon::before,
.ribbon::after{
content: "";
position: absolute;
width: 0;
height: 0;
}
.ribbon>SPAN::before,	/* 折り返し影（左） */
.ribbon::before{		/* 折り返し影（右） */
bottom: -10px;
border-style: solid;
}
.ribbon>SPAN::before{	/* 折り返し影（左） */
left: 0;
border-color: transparent #963 transparent transparent ;
border-width: 0 1.0em 10px 0;
}
.ribbon::before{		/* 折り返し影（右） */
right: 0;
border-color: transparent transparent transparent #963;
border-width: 0 0 10px 1.0em;
}


.ribbon>SPAN::after,	/* 折り返し（左） */
.ribbon::after{			/* 折り返し（右） */
bottom: -11px;
width: 2.0em;	/* 長さ */
z-index: -2;
border: 1.0em solid #F8B500; /* 山吹色 */
}
.ribbon>SPAN::after{	/* 折り返し（左） */
left: -3.0em;
border-left-color: transparent;
}
.ribbon::after{			/* 折り返し（右） */
right: -3.0em;
border-right-color: transparent;
}


/*------ COUPON ------*/
#coupon_item LI{
padding:1.0em 1.0em 1.0em 15.0em;
border:1px solid #300;
background:#FAF0E6; /* Linen */
position:relative;
}
#coupon_item DT{
margin-left:-7.0em;
}
#coupon_item .number{
padding:0.5em 0 0 0;
position:absolute;
top:0;
bottom:0;
left:0;
background:#300;
text-align:center;
line-height:1.2;
width:2.5em;
font-weight:500;
font-size:200.0%;	/* 32px */
}
#coupon_item .number::before{
margin:auto;
content:"COUPON";
display:block;
font-size:37.5%;	/* 12px */
}

#coupon_item DD.price{
font-size:100%;
font-weight:300;
}
#coupon_item .price .price{
color:#F03;
font-size:162.5%;	/* 26px */
}
#coupon_item .price .price::before{
margin:-0.15em 0.3em 0 0.5em;
line-height:1;
font-family: "Font Awesome 5 Free";
display:inline-block;
content:"\f061";
font-weight : 900;
vertical-align:middle;
color:#F8B500;	/* 山吹色 */
font-size:76.9%;	/* 20px */
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	#coupon_item LI{
	padding-left:6.0em;
	}
	#coupon_item DT{
	margin-left:-0.5em;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#coupon H3 .small{
	font-size:66.7%;	/* 16px */
	}
	#coupon_item LI{
	padding:0 0 0.5em 0;
	background:#FFF;
	}
	#coupon_item .number{
	padding:0 0.2em;
	left:0;
	right:0;
	bottom:auto;
	z-index:2;
	width:auto;
	}
	#coupon_item .number::before{
	margin:auto 0.5em auto 0;
	display:inline-block;
	}
	#coupon_item DL{
	padding:0;
	position:relative;
	z-index:1;
	}
	#coupon_item DT{
	margin:0;
	padding:2.5em 0.2em 0.2em 0.2em;
	text-align:center;
	background:#FAF0E6; /* Linen */
	}
	#coupon_item DD.price{
	padding:0.5em;
	text-align:center;
	background:#FAF0E6; /* Linen */
	}
	#coupon_item .price .price{
	white-space: nowrap;
	}
	#coupon_item .price+DD{
	margin-top:0.5em;
	}
	#coupon_item DD.notice{
	padding:0 0.2em 0 0.5em;
	}
	#coupon_item DD.kome{
	padding:0 0.2em 0 1.5em;
	}


}


/*------------------------------------------------
  *
------------------------------------------------*/
@media only screen and (max-width:768px) {	/* スマホ横以下用 */
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
}


/*--------------------------------------------------------------------
  「WORK」固有の設定
---------------------------------------------------------------------*/
/*------------------------------------------------
  Before/After
------------------------------------------------*/
.step.item.part2 LI,
.ba.item.part2 LI{
padding:0;
position:relative;
max-width:480px;
}


.step LI::before,
.ba LI.before::before,
.ba LI.after::after{
position:absolute;
top:5%;
border-bottom:1px solid #300;
width:5.0em;
font-weight:500;
text-shadow: 0px 0px 1px #FFF, 0px 0px 1px #FFF, 0px 0px 3px #FFF;
}
.ba LI.before::before{
content:"Before";
left:0;
}
.ba LI.after::after{
content:"After";
right:0;
}
.ba LI.after.after01::after{
content:"After-01";
}
.ba LI.after.after02::after{
content:"After-02";
text-shadow:none;
color:#FFF;
border-color:#FFF;
}
.ba LI.after.after03::after{
content:"After-03";
}

.step LI::before{
left:0;
}
.step LI.step01::before{
content:"Step01";
}
.step LI.step02::before{
content:"Step02";
}
.step LI.step03::before{
content:"Step03";
}
.step LI.step04::before{
content:"Step04";
}



.step LI IMG,
.ba LI IMG{
margin:auto;
display:block;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.step LI::before,
	.ba LI.before::before,
	.ba LI.after::after{
	background:rgba(255,255,255,0.7);
	border-bottom:none;
	}
	.ba LI.after.after02::after{
	color:#300;
	}

}


/*--------------------------------------------------------------------
  「*」固有の設定
---------------------------------------------------------------------*/
/*------------------------------------------------
  *
------------------------------------------------*/



/*------------------------------------------------
  横長の表にスクロールバー設置
------------------------------------------------*/
/*------ scrollmessage表示の親要素（基点） ------*/
.scroll_table_box{
position:relative;
z-index:1;
}
/*------ 横スクロールさせる表の親要素 ------*/
.scroll_table{
overflow-x:auto;
position:relative;
}
.scroll_table .data_table{
margin:0 auto 5px auto;
width:100%;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	UL.timetable_notice LI{
	padding:0 !important;
	width:100%;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.scroll_table .data_table{
	width:100%;
	}
	#outpatient TH.day{
	width:auto;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.scroll_table .data_table{
	width:650px;
	}
	#outpatient TH.day{
	width:12.0%;
	}
}


/*-----------------------------------------------
  スワイプメッセージ
------------------------------------------------*/
/*------ ボックス全体 ------*/
.scrollmessage {
position:absolute;
top:0;
left:0;
line-height:1.2;
text-align:center;
width:100%;
z-index:2;
}
/*------ 表示する中身 ------*/
.scrollmessage div.swipe {
padding:1em 0;
background:rgba(0,0,0,0.6);
color:#FFF;
height: auto;
a overflow-y: hidden;
z-index:3;
cursor: pointer;
text-align:center;
}

/*------ アイコンを大きく ------*/
.scrollmessage .fas,
.scrollmessage .far{
margin:0.2em;
font-size:200%;
}


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



/*--------------------------------------------------------------------
  「サイトマップ」固有の設定
--------------------------------------------------------------------*/

/*--------------------------------------------------------------------
  「お問い合わせ」固有の設定
--------------------------------------------------------------------*/



/*--------------------------------------------------------------------
  「コンテンツ」固有の設定
--------------------------------------------------------------------*/


/*------------------------------------------------
  レイアウト
------------------------------------------------*/
.inline{
display:inline-block;
}
.block{
margin-right:auto;
margin-left:auto;
display:block;
}
.table{
margin-right:auto;
margin-left:auto;
display:table;
width:auto;
}

/*------------------------------------------------
  準備中表示
------------------------------------------------*/
.underconstruction{
margin:2em auto;
padding:200px 25px 100px 25px;
background-color:#FBFAF5;	/* 生成り色 */
background-image:url(img/comingsoon.png);
background-position:center 80px;
background-repeat:no-repeat;
text-align:center;
width:90%;
}
#information .underconstruction{
padding:0 25px;
background:url(img/spacer.gif) no-repeat;
}
#strong_point .underconstruction{
margin:auto;
padding:0;
background:none;
width:auto;
text-align:left;
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.underconstruction{
	padding:50px 25px;
	background-position:center;
	width:auto;
	}
}


.nowprinting{	/* <SPAN class="nowprinting"></SPAN> */
margin-right:auto;
margin-left:auto;
display:block;
display:table;
/* height:20vw;
 min-height:160px; */
background:rgba(153,153,153,0.2) url(img/nowprinting.png) no-repeat center;
}
.nowprinting IMG{
padding-bottom:0;
}
.caption .nowprinting{
margin-bottom:5px;
}


/*------------------------------------------------
  署名
------------------------------------------------*/
.signature .large{
margin-top:0.5em;
display:block;
}


/*------------------------------------------------
  区切りのスラッシュ / 表示
------------------------------------------------*/
.slash::before,
.dot::before{
display:inline-block;
}
.slash::before{
margin-right:0.5em;
margin-left:0.5em;
content:"/";
}
.dot::before{
content:"・";
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.slash::before,
	.dot::before{
	display:block;
	content:"";
	}
}



/*------------------------------------------------
  アイテム横並び
------------------------------------------------*/
UL.item{
margin:1.5em auto;
padding:0;
/* display:table; */
width:auto;
text-align:center;
letter-spacing:-1em;	/* 横並びの隙間対策 */
}

.top_pr UL.item>LI,
ARTICLE UL.item>LI{
margin-top:0;
margin-bottom:0;
padding:0;
background:none;
display:inline-block;
*display: inline;		/* IE7対策 */
*zoom: 1;  				/* IE7対策 */
vertical-align:top;
letter-spacing:1px;	/* 横並びの隙間対策 文字間隔復活 */
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}


UL.item>LI>*{
margin-top:0;
margin-bottom:0;
}
UL.item>LI>*:not(SPAN)~*:not(SPAN){
margin-top:1.8em;
}


/*------ 2列 ------*/
UL.item.part2>LI{
margin-left:2%;
width:48.5%;
text-align:center;
}
UL.item.part2>LI:nth-child(odd){	/* 奇数 */
margin-left:0;
}

UL.item.part2>LI:nth-child(n+3){	/* 3個目以降 */
margin-top:20px;
}

/*------ 3列 ------*/
UL.item.part3>LI{
margin-left:2%;
width:32.0%;
}
UL.item.part3>LI:nth-child(3n+1){	/* 1、4、7番目… */
margin-left:0;
}
UL.item.part3>LI:nth-child(n+4){	/* 3個目以降 */
margin-top:20px;
}

/*------ 2列 ------*/
UL.item.part2.tab2>LI{	/* タブレット時に2列を保つ場合 */
margin-right:1.9%;
margin-left:1.9%;
width:46%;
}



/*------ 左右振り分け 任意の幅 ------*/
.layoutbox.clearfix{
}

.layoutbox LI *:first-child{
margin-top:0;
}
.layoutbox LI IMG{
width:100%;
}

.w400{
min-width:400px;
width:30%;
}

.w-400{
width : -webkit-calc(100% - 450px) ;
width : calc(100% - 450px);
}



@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	UL.item:not(.tab2)>LI{
	margin:0 0 1.5em 0;
	padding:1px 0;
	width:100%;
	}
	UL.item>LI IMG{
	width:auto;
	}
	.layoutbox{
	text-align:center;
	}
	.layoutbox>LI{
	margin-left:auto;
	margin-right:auto;
	min-width:auto !important;
	min-width:initial !important;
	display:inline-block !important;
	float:none !important;
	width:auto !important;
	text-align:left;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	UL.item.tab2>LI{
	margin-left:2%;
	width:49.0%;
	text-align:center;
	}
	UL.item.part3.tab2>LI:nth-child(3n+1){	/* 1、4、7番目… */
	margin-left:2%;
	}
	UL.item.part3.tab2>LI:nth-child(odd){	/* 奇数 */
	margin-left:0 !important;
	}
	UL.item.tab2>LI:nth-child(n+3){	/* 3個目以降 */
	margin-top:20px;
	}

}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	UL.item.tab2>LI{
	margin:0;
	width:100% !important;
	}
	UL.item.tab2>LI:nth-child(n+2){	/* 2個目以降 */
	margin-top:20px;
	}

	UL.item IMG{
	margin-right:auto;
	margin-left:auto;
	display:block;
	}
}	





/*------------------------------------------------
  電話番号自動リンク(with JavaScript)
------------------------------------------------*/
A.tellink {
pointer-events: none;	/* PCの時はリンクしない */
cursor: default;
text-decoration: none;
display:block;
}
A.tellink.tel {
pointer-events: auto;
}


.tel .label{
padding:0;
background:none;
line-height:1.8;
}

ARTICLE .tellink::before{
margin-right:0.5em;
display:inline-block;
font-family: "Font Awesome 5 Free";
content:"\f095";
font-weight:bold;
}
ARTICLE .check .tellink::before{
font-size:125.0%;	/* 20px */
vertical-align:middle;
}





/*------------------------------------------------
  上部サブメニュー
------------------------------------------------*/


/*------------------------------------------------
  丸数字
------------------------------------------------*/
.number{
display:inline-block;
background:#C7DC68;	/* 若苗色 */
color:#FFF;
width:1.5em;
line-height:1.5;
text-align:center;
text-indent:0;
}
H4.numbering{
padding-left:1.8em;
text-indent:-1.8em;
}
H4 .number{
margin-right:0.3em;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	H4.numbering{
	margin-left:-2%;
	}
}


/*------------------------------------------------
  ラベル
------------------------------------------------*/
.label{
padding:0 0.5em;
display: inline-block;
line-height:1.5;
}



/*------------------------------------------------
  フロー
------------------------------------------------*/
.content .flow{
padding:0;
}
.content .flow>LI{
margin:0;
padding:0;
background:none;
vertical-align:middle;
text-align:left;
}
.content .flow>LI+LI::before{	/* ↓ 矢印 */
margin-left:0.6em;
content:"\f063";
font-family: "Font Awesome 5 Free";
font-weight : 900;
display:block;
font-size:250.0%;	/* 40px */
line-height:1;
color:#C7DC68;
}
.flow LI>DIV{
padding:0.8em;
background:rgba(199,220,104,0.3);	/* #C7DC68 若苗色 */
}
.flow .number{
margin:0 0.2em 0 0;
display:inline-block;
font-weight:bold;
font-size:250.0%;	/* 40px */
vertical-align:middle;
}

.flow LI>DIV STRONG{
margin-left:0.5em;
a display:block;
font-size:125.0%;	/* 20px */
vertical-align:middle;
font-weight:normal;
}
.flow .textdata{
margin-left:1.2em;
padding-left:1.0em;
border-left:2px solid #FFF;
display:inline-block;
vertical-align:middle;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.flow LI>DIV{
	padding:0;
	}

	.flow .number{
	margin:0 0.2em 0 0;
	font-size:200.0%;	/* 32px */
	}
	.flow STRONG{	
	}

	.flow .textdata{
	margin:0;
	padding:0.8em;
	border-left:none;
	display:block;
	background:rgba(199,220,104,0.3);	/* #C7DC68 若苗色 */
	line-height:1.3;
	}

}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.content .flow>LI{
a	margin:0 0 7px 0;
	}

}


/*------------------------------------------------
  2列の表のようなDLリスト
------------------------------------------------*/
.dl_table{
}
.dl_table DT{
margin:0;
padding:0.2em 0.5em;
clear:left;
float:left;
display:inline;
width:9em;	/* 10em */
background:rgba(200,160,98,0.15);	/* LogoBeige #C8A062 */

text-align:center;
font-size:100.0%;	/* 16px */
font-weight:normal;
text-align:center;
}

.dl_table DD{
margin:0.5em 0;
padding:0.2em 1em 0.2em 11em;
background:url(img/spacer.gif) no-repeat;	/* Android4.0対策 */
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.dl_table DT{
	width:auto !important;
	float:none;
	display:block;
	text-align:left;
	}
	.dl_table DD+DT{
	margin-top:1.2em;
	}
	.dl_table DT BR{
	display:none;
	}
	.dl_table DD{
	margin:0.2em 0 0.8em 0;
	padding:0 0.5em;
	}

}





/*------------------------------------------------
   行頭アイコン
------------------------------------------------*/
.icon_fa::before,
.icon_fa::after{
font-family: "Font Awesome 5 Free" , "Font Awesome 5 Brands";
display:inline-block;
vertical-align:middle;
line-height:1;
}
.icon_fa::before{
margin-right:0.5em;
}
.icon_fa::after{
margin-left:0.5em;
}

.icon A::before{
margin-right:0.2em;
font-family: "Font Awesome 5 Free";
display:inline-block;
vertical-align:middle;
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
}
.heart{
content:"\f004";
}

.icon.fas{
margin-top:-0.2em;
margin-right:0.3em;
display:inline-block;
vertical-align:middle;
}

/*------------------------------------------------
   リンクボタン（共通）
------------------------------------------------*/
.link_small,
.link_large{
background:#300;
border:1px solid #600;
zoom: 1;
outline: none;
text-align:center;
display:inline-block;
color:#FFF;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}
.link_small.outline,
.link_large.outline{
background:rgba(255,255,255,0.0);
border-color:#300;
}


.link_small.before::before,
.link_large.before::before,
.link_small.after::after,
.link_large.after::after{
margin-top:-0.1em;
line-height:1;
font-family: "Font Awesome 5 Free";
display:inline-block;
transition: color 0.5s ease;
-webkit-transition: color 0.5s ease;
-moz-transition: color 0.5s ease;
-o-transition: color 0.5s ease;
content: "\f0a9";
font-weight : 900;
vertical-align:middle;
}

.link_small.after::after,
.link_large.after::after{
margin-left:0.5em;
}
.link_small.before::before,
.link_large.before::before{
margin-right:0.5em;
}
.link_small:hover,
.link_large:hover{
color:#FFF;
background:#F8B500;	/* 山吹色 */
border:1px solid #F8B500;	/* 山吹色 */
}
.link_small.before:hover::before,
.link_large.before:hover::before,
.link_small.after:hover::after,
.link_large.after:hover::after{
}
.link_small.outline:hover,
.link_large.outline:hover{
border-color:#300;
background:#300;
}

#content .link_small,
#content .link_large{
color:#FFF;
text-decoration:none;
}

/*------------------------------------------------
   リンクボタン（小）
------------------------------------------------*/
.link_small,
.link_small:visited{
padding:0.05em 0.5em;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	A.link_small{
	padding:0.5em 10px;
	}
}

/*------------------------------------------------
   リンクボタン（大）
------------------------------------------------*/
.link_large,
.link_large:visited{
margin:auto;
padding:0.4em 1em;
font-size:125.0%;	/* 20px */
}
.link_large SPAN.far,
.link_large SPAN.fas{
margin:-0.15em 0.5em 0 0;
font-size:120.0%;	/* 24px */
vertical-align:middle;
}



@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.link_large{
	padding:0.5em 0;
	display:block;
	width:90%;
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	.link_large{
	max-width:600px;
	}
}


/*------------------------------------------------
   強調枠囲み
------------------------------------------------*/
/*------------------------------------------------
  お問い合わせ枠
------------------------------------------------*/
.check{
padding:1em 2em;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
border:2px solid #F8B500;	/* 山吹色 */
}
DIV.check{
margin-top:1.8em;
margin-bottom:1.8em;
}

.check>*{
margin-top:0;
margin-bottom:0;
}
.check>*~*{
margin-top:15px;
}
#content>.check.island{
margin-right:auto;	/* インデントリセット */
margin-left:auto;	/* インデントリセット */
display: table;
min-width:600px;
}


/*------ H5見出し ------*/
#content .check H5{
margin:0 -5px 10px -5px;
padding:0 7px 10px 7px;
border-bottom:1px solid #D6D92E;	/* Chartreuse Yellow150% */
color:#000;
}
#content .check H5~H5{
padding-top:30px;
}

/*------ TEL・Mail ------*/
#content .check LI.tel,
#content .check LI.fax,
#content .check LI.mail{
padding-left:0;
background:#FFF;
}
#content .check LI.tel{
font-size:125.0%;	/* 20px */
}
.check LI.tel::before,
.check LI.fax::before,
.check LI.mail::before{
margin-right:0.5em;
display:inline-block;
font-family: "Font Awesome 5 Free";
font-weight:bold;
vertical-align:middle;
}
.check LI.tel::before{
content:"\f095";
}
.check LI.fax::before{
content:"\f1ac";
font-size:125.0%;	/* 20px */
}
.check LI.mail::before{
content:"\f0e0";
font-size:125.0%;	/* 20px */
color:#900;
}



@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	#content>.check,
	#content>.check.island{
	margin-right:0;	/* インデントリセット */
	margin-left:0;	/* インデントリセット */
	min-width:auto;
	min-width:initial;
	display: block;
	width:auto;
	}
}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	.check{
	padding:10px;
	}
	#content .check H5{
	margin:-10px -10px 10px -10px;
	padding:10px;
	}

}




/*--------------------------------------------------------------------
  共通レイアウト枠
--------------------------------------------------------------------*/
@media only screen and (min-width:769px) and (max-width:980px) {
	BODY{
/*	min-width: 980px; */
	}
}


BODY:not(#home) MAIN{
padding-bottom:3em;
}

MAIN.c{
background-image:url(img/c.jpg);	/* 新緑 */
background-repeat:no-repeat;
background-position:center top;
background-size:contain;
-webkit-background-size:contain;
-moz-background-size:contain;
-o-background-size:contain;
-ms-background-size:contain;
}

@media only screen and (min-width:769px) {	/* PC用 */
	MAIN{
	min-height:70vh;
	}
}



ARTICLE{
margin-right:auto;
margin-left:auto;
padding:3.0em 0;
}


.content.text_alignleft P,
.content.text_alignleft DIV{
text-align: justify;
text-justify: inter-ideograph;
}


.content{	/* SECTION コンテンツタイプ */
margin:0 auto;
padding:0 5%;
max-width:1200px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}
ARTICLE.content{
text-align:left;
}

.photobg{
background-repeat:no-repeat;
/* background-attachment:fixed; */
background-position:center;
background-size:cover;
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
}
.ios .photobg{
background-attachment:scroll;
}




@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	ARTICLE{
	padding:1.5em 0;
	}
	SECTION.content{
	max-width:auto;
	max-width:initial;
	}
	SECTION.content H4,
	SECTION.content P{
	text-align:left;
	}
	SECTION.content H4 BR,
	SECTION.content P BR{
	display:none;;
	}

}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
}

/*--------------------------------------------------------------------
  右側メニュー欄 
--------------------------------------------------------------------*/
/*------------------------------------------------
  右側サブメニュー欄 
------------------------------------------------*/
/*------------------------------------------------
  右側バナー欄 
------------------------------------------------*/


/*--------------------------------------------------------------------
  ヘッダー
--------------------------------------------------------------------*/
HEADER{
margin:0 auto;
width:100%;
background:#FFF;
position:relative;
font-family: 'Roboto', 'Noto Sans JP', sans-serif;
font-weight:500;
}
.fixed{	/* ヘッダー上部固定用 */
position:fixed !important;
top:0;
left:0;
z-index:10000;
filter:alpha(opacity=95); /*IE*/
-moz-opacity:0.95; /*FF*/
opacity:0.95;
}
#header_inner{	/* 高さ60px */
margin:0 auto;
padding:0 10px;
position:relative;
z-index:10;	/* IE7以下でプルダウンメニューが隠れるための対策 */
max-width:1480px;

}
HEADER LI{
background:url(img/spacer.gif) no-repeat;
}

/*------------------------------------------------
  ヘッダーロゴ 
------------------------------------------------*/
HEADER H1{
margin:11px auto 9px auto;
padding:0;
float:left;
}

HEADER H1 A IMG{
margin:0 auto;
display:inline-block;
}
HEADER H1 A IMG+IMG{
margin-left:10px;
}
HEADER H1 A{
margin:0 auto;
display:block;
}

HEADER A IMG{
transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-o-transition: all 0.5s ease;
}
HEADER A:hover IMG{
opacity:0.7;	/* Safari,Opera,Chrome */
filter:alpha(opacity=70); 	/* IE8,IE7 */
-ms-filter:"alpha(opacity=70)";	/* IE8 */
-moz-opacity: 0.7;	/* FireFox */
zoom:1;
}





@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.fixed{	/* ヘッダー上部固定用を解除（現在ヘッダー上部固定を使用中） */
	position:static;
	}
	#header_inner{
	min-width: initial;
	min-width:auto;
	}
	HEADER H1{
	float:none;
	}
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
}





/*--------------------------------------------------------------------
  プライマリーナビゲーションメニュー(PrimaryMenu)
--------------------------------------------------------------------*/
UL#primarymenu{
margin:10px auto 10px auto;
padding:0;
float:right;
}
UL#primarymenu LI{
margin:0;
padding:0 0.3em;
line-height:1.4;
display:inline-block;
*display: inline;		/* IE7対策 */
*zoom: 1;  				/* IE7対策 */
vertical-align:middle;
text-align:left;
}
UL#primarymenu LI A,
UL#primarymenu LI A:visited{
padding:0;
display:block;
text-decoration:color 0.5s ease;
transition: color 0.5s ease;
-webkit-transition: color 0.5s ease;
-moz-transition: color 0.5s ease;
-o-transition: color 0.5s ease;
}
UL#primarymenu LI A:hover{
color:#F4A460;	/* SandyBrown */
}
#p_menu01{
font-size:175.0%;	/* 28px */
}
#p_menu01 .icon{
font-size:50.0%;	/* 14px */
}
#p_menu02{
font-size:75.0%;	/* 12px */
}

UL#primarymenu .label{
padding:0;
display: inline-block;
line-height:1.2;
background:#FAEBD7;	/* AntiqueWhite */
width:4.0em;
text-align:center;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	UL#primarymenu{
	float:none;
	}
	UL#primarymenu LI{
	}
}
@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
}



/*------------------------------------------------
  Homeボタン
------------------------------------------------*/
DIV#sp_home{
display:none;
z-index:101;
}

@media only screen and (min-width:541px) and (max-width:768px) {	/* スマホ横用 */
	DIV#sp_home{
	width:60px;
	height:60px;
	position:absolute;
	top:5px;
/*	right:80px; */
/*	right:200px; */
	right:250px;
	display:block;
	}
	DIV#sp_home A{
	width:60px;
	height:60px;
	display: block;
	background:url(img/sp_nav.png) no-repeat 0 0;
	background-size:auto 60px !important;
	-webkit-background-size:auto 60px;
	-moz-background-size:auto 60px;
	-o-background-size:auto 60px;
	-ms-background-size:auto 60px;
	}

	DIV#sp_home A SPAN{
	display:none;
	}


}


@media only screen and (max-width:540px) {	/* スマホ縦用 */
	DIV#sp_home{
	width:60px;
	height:60px;
	position:absolute;
	top:5px;
	left:10px;
	display:block;
	}
	DIV#sp_home A{
	width:60px;
	height:60px;
	display: block;
	background:url(img/sp_nav.png) no-repeat 0 0;
	background-size:auto 60px !important;
	-webkit-background-size:auto 60px;
	-moz-background-size:auto 60px;
	-o-background-size:auto 60px;
	-ms-background-size:auto 60px;
	}

	DIV#sp_home A SPAN{
	display:none;
	}

}


/*--------------------------------------------------------------------
  グローバルナビゲーションメニュー(menubar)
--------------------------------------------------------------------*/
#global_navi{
margin:10px auto 0 auto;
padding:0;
width:100%;
/* height:50px; */
clear:both; 
position:relative;
z-index:100;
}

/*------------------------------------------------
  全体 
------------------------------------------------*/
#global_navi > SPAN{
display: none;
}
#global_navi LI{
position: relative;
}
#global_navi LI A{
display: block;
}



/*------------------------------------------------
  PCメインメニュー第一階層
------------------------------------------------*/
UL#globalmenu{
margin:0 auto;
padding:0;
width:100%;
max-width:1200px;
a min-width:980px;
display:table;
table-layout: fixed;	  /* LIを均等に分割 */
font-size:87.5%;	/* 14px */
letter-spacing:-1em;
}

UL#globalmenu>LI{
margin:0;
padding:0;
display:table-cell;
vertical-align:bottom;
letter-spacing:1px;
}
UL#globalmenu>LI >A,
UL#globalmenu>LI >A:visited{
margin:0 3px 4px 3px;
padding:0.3em;
line-height:3.0em;
display: block;
color:#300;
border-bottom:3px solid #FAEBD7;	/* AntiqueWhite */
position:relative;
}

UL#globalmenu>LI SPAN:not(.slash){
line-height:1.2em;
display:inline-block;
vertical-align:middle;
}

UL#globalmenu>LI >A:hover{
border-color:#F8B500;	/* 山吹色 */
}
UL#globalmenu>LI.active >A,
UL#globalmenu>LI.active >A:hover{
border-color:#DEB887;	/* BurlyWood */
}

/*------ スマホ横以下用 ------*/
@media only screen and (max-width:768px) {

}


/*------------------------------------------------
  コンテンツメニュー
------------------------------------------------*/
/*------ コンテンツメニュー ------*/
.contentmenu{
padding:2em 0;
}
.contentmenu.brownbg{
background-position:center top;
}
.contentmenu.banner UL{
margin:0 auto;
max-width:1200px;
min-width:980px;
display:table;
table-layout:fixed;
border-collapse: separate;
border-spacing:10px 5px;	/* 前の数字：横方向　後ろの数字 縦方向 */
width:100%;
}
.contentmenu.banner LI{
vertical-align:middle;
background:url(img/spacer.gif) no-repeat;
display:table-cell;
}
.contentmenu.banner LI .extrasmall{
display:block;
}


@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	.contentmenu.brownbg{
	background-position:center bottom;
	}
	.contentmenu.banner UL{
	max-width:auto;
	max-width:initial;
	min-width:auto;
	min-width:initial;
	width:90%;
	display:block;
	}
	.contentmenu.banner LI{
	margin:10px 0;
	display:block;
	}
}


.contentmenu.banner A{
padding:1em;
text-decoration:none;
background:rgba(0,0,0,0.0);
display:block;
position:relative;
font-size:112.5%;	/* 18px */
border:1px solid #887F7A;	/* 煤色  */
}
.contentmenu.banner.brownbg A{
color:#FFF;
}

.contentmenu.banner .active A,
.contentmenu.banner A:hover{
background:#C7DC68;	/* 若苗色 */
color:#300;
}
.contentmenu.banner A::after{
font-family: "Font Awesome 5 Free";
font-weight:bold;
content:"\25E2";
font-size:12px;
right:1px;
bottom:2px;
position:absolute;
transform:translate(0,0);
line-height:1em;
}








/*--------------------------------------------------------------------
  パンくず・アンカー
--------------------------------------------------------------------*/

/*------------------------------------------------
  アンカー 
------------------------------------------------*/
#pt{
margin:0;
z-index:100;
position: fixed;
bottom:8px;
right:12px;
width: 40px;
height: 40px;
}
#pt A{
margin:0 auto;
display: block;
width: 40px;
height: 40px;
background:url(img/pt.png) 0 0 no-repeat;
zoom: 1;
text-indent: -9999px;
outline: none;
font-size: 1px;
overflow: hidden;
}
#pt A:hover{
background:url(img/pt_hover.png) 0 0 no-repeat;
}



/*--------------------------------------------------------------------
  フッター
--------------------------------------------------------------------*/
FOOTER{
margin:0 auto;
padding:1px 0 0 0;
background:#FAEBD7;	/* AntiqueWhite */
}
FOOTER H3{
margin-top:1.5em;
}


FOOTER #googlemap{
margin:3.0em auto 0 auto;
display:block;
}
FOOTER H5{
margin:1.0em auto 0 auto;
}
FOOTER H5~H5{
margin-top:2.5em;
}
FOOTER H5+*{
margin-top:0.5em;
}
FOOTER H5 SPAN{
a padding:0 0.5em 0.2em 0.5em;
display:inline-block;
width:4.5em;
}

FOOTER UL,
FOOTER P{
padding:0 5%;
margin-bottom:0;
}
#footer_info,
#footer_info A,
#footer_info A:visited{
color:#300;
}


/*------------------------------------------------
  footer 住所欄
-------------------------------------------------*/
#footer_info{
margin:0 auto;
padding:3.0em 0 1.5em 0;
max-width:1150px;
box-sizing: border-box;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
}
#footer_info >LI{
margin:0 auto;
padding:0;
}


/*------ H4 名称 ------*/
#footer_info H4{
}
#footer_info H4 A{
padding-top:60px;
background:url(img/logomark.png) no-repeat center top;
display:inline-block;
}
#footer_info H4 A:hover{
opacity:0.7;	/* Safari,Opera,Chrome */
filter:alpha(opacity=70); 	/* IE8,IE7 */
-ms-filter:"alpha(opacity=70)";	/* IE8 */
-moz-opacity: 0.7;	/* FireFox */
}


/*------ 連絡先 ------*/
#footer_info UL{
margin:1.0em auto;
}


/*------ フッター 連絡先欄（住所） ------*/
#footer_address{
font-size:87.5%;	/* 14px */
}
#footer_zip{	/* 〒 */
margin-right:0.5em;
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#footer_zip{	/* 〒 */
	display:block;
	margin-right:auto;
	}
}

/*------ フッター 連絡先欄（TEL） ------*/
#footer_tel{	/* TEL */
padding:0;
line-height:1.2; 	/* STRONG使用時 */
}
#footer_tel SPAN.label,
#footer_fax SPAN.label{
padding-left:0;
padding-right:0.5em;
background:none;
font-size:87.5%;	/* 14px */
}
#footer_tel STRONG{	/* TEL番号 */
font-size:200.0%;	/* 32px */
letter-spacing:2px;
font-weight:500;
}
#footer_tel .icon{
margin-top:-0.7em;
}


#footer_access .icon,
#footer_time01 .icon{
font-size:125.0%;	/* 20px */
}
@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#footer_access .icon,
	#footer_time01 .icon{
	margin-top:0.5em;
	margin-right:auto;
	display:block;
	font-size:150.0%;	/* 24px */
	}

}

/*------------------------------------------------
  フッターメニュー
------------------------------------------------*/


/*------------------------------------------------
  著作権
------------------------------------------------*/
#copyright{
margin:0 auto;
padding:20px;
font-size:68.75%;	/* 11px */
}

#home #copyright{
margin-top:6.0em;
padding:0;
height:600px;
background-position:0 10%;
background-size:cover;
-webkit-background-size:cover;
-moz-background-size:cover;
-o-background-size:cover;
-ms-background-size:cover;
background-image:url(img/shop_outside_bg.jpg);
position:relative;
}
#home #copyright SPAN{
position:absolute;
bottom:20px;
left:5%;
color:#FFF;
width:90%;
}

@media only screen and (max-width:768px) {	/* スマホ横以下用 */
	BODY:not(#home) #copyright{
	margin-top:40px;
	background-color:#FFF;
	}
}

@media only screen and (max-width:540px) {	/* スマホ縦用 */
	#copyright{
	text-align:left;
	}
	#home #copyright{
	height:300px;
	}
}


/*--------------------------------------------------------------------
  clearfix
--------------------------------------------------------------------*/
/*------ 親要素にまとめて回り込み解除 ------*/
HEADER::after,
#header_inner::after,
#box::after,
#top_banner::after,
#staff .content>DL::after,
#news DL::after,
DL.dl_table::after,
#department #content>UL::after,
#ranran_item UL LI::after,
DL.oneday::after,
DL.oneday DD::after,
.topics::after,
#update DL::after{
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}


/* Win版IE7とMac版IE5対策 */
HEADER,
#header_inner,
#box,
#top_banner,
#staff .content>DL,
#news DL,
DL.dl_table,
#department #content >UL,
#ranran_item UL LI,
DL.oneday,
DL.oneday DD,
.topics,
#update DL{
	display: inline-table;
min-height:1%;  /* for IE 7*/
}


/* Win版IE5および6対策 */
/* Hides from IE-mac \*/
* html HEADER,
* html #header_inner,
* html #box,
* html #top_banner,
* html #staff .content>DL,
* html #news DL,
* html DL.dl_table,
* html #department #content >UL,
* html #ranran_item UL LI,
* html DL.oneday,
* html DL.oneday DD,
* html .topics,
* html #update DL{
	height: 1%;
}
HEADER,
#header_inner,
#box,
#top_banner,
#staff .content>DL,
#news DL,
DL.dl_table,
#department #content >UL,
#ranran_item UL LI,
DL.oneday,
DL.oneday DD,
.topics,
#update DL{
	display: block;
}
/* End hide from IE-mac */



/*------ 個別に回り込み解除（clearfix） ------*/
.clearfix:after {
    content: ""; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {
	display: inline-table;
}

/* Hides from IE-mac \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */