@charset "UTF-8";
/* CSS Document */
html {
	scroll-behavior: smooth;
}

/* =Reset default browser CSS. Based on YUI http://developer.yahoo.com/yui/reset/
-------------------------------------------------------------- */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
body {
	line-height: 1;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: '';
	content: none;
}
q:before,q:after {
	content:'';
}
abbr,acronym { 
	border:0;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: bottom;
}
a img {
	border: none;
}


/* =Clearfix
-------------------------------------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix { display: inline-block; }

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


/* =Global Elements
-------------------------------------------------------------- */
body {
	background: #000 url(images/bg-w.jpg) center top no-repeat fixed;
	color: #000;
}


ins {
    font-weight: bold;
    text-decoration: none;
}

/* =Structure
-------------------------------------------------------------- */
#container {
	position: relative;
	width: 880px;
	margin: 0 auto;
}
#contents-wrapper {
	margin: 0 0 50px 180px;
	padding-bottom: 50px;
	background: url(images/contents-bg-ft.png) left bottom no-repeat;
}
#contents {
	padding-top: 100px;
	background: url(images/contents-bg-hd.png) left top no-repeat;
}
#inner-contents {
	background: url(images/contents-bg-bd-s.png) left top repeat-y;
}
#header {
	position: fixed;
	margin-left: -26px;
	padding-left: 52px;
	top: 30px;
}

* html #header {
	zoom: 1;
	/*margin-left: -80px;*/
	padding: 0;
}
* html #contents-wrapper,
* html #contents,
* html #inner-contents {
	zoom: 1;
}
*:first-child+html  #header {
	margin-left: -150px;
	padding: 0;
}

/* =Global Layout
-------------------------------------------------------------- */
.section {
}



/* =Fonts
-------------------------------------------------------------- */
body {
	/*font-family: 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','ＭＳ Ｐ明朝','MS PMincho',serif;*/	
	/*font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Mayryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;*/
	font-family: 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','メイリオ','Mayryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}

/* =Links
-------------------------------------------------------------- */
a:link { text-decoration: none; color: #fff; }
a:visited { text-decoration: none; color: #fff; }
a:hover { text-decoration: none; color: #F15A24; }
a:active { text-decoration: none; color: #F15A24; }


/* =Header
-------------------------------------------------------------- */
#header {
	background: url(images/hd-copyright.png) left top no-repeat;
}
#header h1 {
	padding-bottom: 20px;
	background: url(images/hd-hr.png) left bottom no-repeat;
}
#header ul {
	padding-bottom: 20px;
	margin-bottom: 4px;
	background: url(images/hd-hr.png) left bottom no-repeat;
}
#header li {
	width: 138px;
	overflow: hidden;
}
#header li a {
	display: block;
}
#header li a:hover {
	margin-left: -138px;
}

#header .cal-foot li a:hover {
    margin-left: 0;
}

#hd-contact {
	padding-bottom: 20px;
	margin-bottom: 4px;
	background: url(images/hd-hr.png) left bottom no-repeat;
}
#hd-calendar {
	font-size: 14px;
	width: 124px;
	margin-left: 8px;
}
#hd-calendar table {
	font-size: 12px;
}
#hd-calendar .cal-foot {
	margin: 10px 0 20px;
	color: #FFF;
	font-size: 12px;
}
#hd-cal-title {
	margin-bottom: 0.5em;
}
#hd-calendar th,
#hd-calendar td {
	padding: 2px;
	text-align: right;
}
#hd-calendar caption {
    color: #fff;
	font-size: 12px;
	margin-bottom: 0.5em;
}
#hd-calendar tbody {
	color: #FFF;
}
#hd-calendar tr {
	background: url(images/cal-bd.png) left bottom repeat-x;
}
.cal-hilite {
	color: #F15A24;
}

#hd-calendar .closed {
	background: url(images/cal-holiday.png) no-repeat 50% 30%;
}

#hd-calendar .half-closed {
	background: url(images/cal-half-holiday.png) no-repeat 50% 30%;
}

#header .cal-foot ul {
    background: none;
    line-height: 1.2;
    list-style-type: disc;
    list-style-position: inside;
    padding-bottom: 5px;
}

#header .sns-link {
    margin: 20px 0;
    text-align: center;
}
#header .sns-link ul {
	list-style: none;
	margin: 0;
	padding: 0;
	
	display: flex;
	gap: 0.5em 1em;
}
#header .sns-link ul li {
	max-width: 2.5rem;
}
#header .sns-link ul li a {
	display: inline-block;
	box-sizing: border-box;
}
#header .sns-link ul li a:hover {
	margin-left: 0;
	opacity: 0.7;
}
#header .sns-link ul li a img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

* html #header {
	background: none;
}
* html #header li {
	position: relative;
}

/* =Contents
-------------------------------------------------------------- */
#inner-contents {
	padding-left: 55px;
}

/* =News
-------------------------------------------------------------- */
#news {
	background: url(images/news-bg-body.jpg) left top repeat-y;
}
#news-wrapper {
	padding-bottom: 27px;
	background: url(images/news-bg-ft.jpg) left bottom no-repeat;
}
.news-section {
	margin-right: 88px;
	padding: 0 0 2em 24px;
}
.news-section h3 {
	height: 51px;
	padding: 12px 0 0 56px;
	background: url(images/news-hd.jpg) left top no-repeat;
}
.news-section p,
.news-section ul {
	padding: 0 24px 0 12px;
	font-size: 14px;
	line-height: 1.8;
}

* html #news {
	zoom: 1;
}

/* =About
-------------------------------------------------------------- */
#about .section {
	margin: 1em 88px 1em 0;
	font-size: 14px;
	line-height: 1.8;
}
#about h2 {
	margin-bottom: 24px;
}
#about #layout1 {
	margin-bottom: 2em;
}
#layout1 img {
	float: right;
}
#about-h4-okigaru {
	margin: 0 24px 12px 0;
}

#layout2 img {
	float: left;
	margin-right: 12px;
}

#layout4 h4,
#layout4 p {
	margin-bottom: 1em;
}
#soba-dashi {
	background: url(images/sobadashi-bg-bd.jpg) top left repeat-y;
}
#soba-dashi-wrapper {
	padding-bottom: 24px;
	background: url(images/sobadashi-bg-ft.jpg) left bottom no-repeat;
}
#soba-dashi h3.firstchild {
	padding-top: 24px;
	background: url(images/sobadashi-bg-hd.jpg) left top no-repeat;
}
#soba-dashi h3 {
	padding-left: 12px;
}
#soba-dashi p {
	margin-left: 24px;
	font-size: 14px;
	line-height: 1.8;
}

* html #soba-dashi {
	zoom: 1;
}


/* =Tanoshimi
-------------------------------------------------------------- */
#tanoshimi {
	margin-bottom: 40px;
}

.tanoshimi-body-wrapper {
	background: url(images/tanoshimi-bg-foot.jpg) left bottom no-repeat;
	padding-bottom: 34px;
}

.tanoshimi-body {
	background: url(images/tanoshimi-bg-body.jpg) left top repeat-y;
	zoom: 1;
}

.tanoshimi-body p {
	width: 510px;
	margin: 0 20px;
	padding-top: 20px;
	font-size: 16px;
	line-height: 1.5;
}

.tanoshimi-body p img.alignleft {
	float: left;
	margin: 0 10px 10px 0;
}



/* =Oshinagaki
-------------------------------------------------------------- */
#osusume,
#kaiseki {
	position: relative;
	height: 500px;
	padding-top:34px;
}
#kaiseki {
	height: 640px;
}
#osusume-main,
#kaiseki-main {
	height: 370px;
	padding-bottom: 24px;
}
#osusume-main img,
#kaiseki-main img {
	position: absolute;
}
#osusume-nav li,
#kaiseki-nav li {
	width: 115px;
	height: 115px;
	float: left;
}
#osusume-hd,
#kaiseki-hd {
	position: absolute;
	right: 102px;
	top: 0;
}

#osusume-main img,
#osusume-nav img,
#kaiseki-nav img,
#kaiseki-main img {
	-webkit-box-shadow: 3px 3px 3px #444;
	-moz-box-shadow: 3px 3px 3px #444;
	box-shadow: 3px 3px 3px #444;
}

#menu {
	margin-bottom: 40px;
}

#menu p {
	width: 550px;
	line-height: 1.5;
}

/* =Map
-------------------------------------------------------------- */
#map-tabs {
	margin-top: 12px;
}
#mapGoogle {
	width: 548px;
	height: 564px;
	padding: 2px;
	background: url(images/map-google-bg.jpg) center center no-repeat;
}

#map-tabs li {
	float: left;
}

/* =GoogleMap infowindow
-------------------------------------------------------------- */

h1#firstHeading {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
}
#bodyContent {
	font-size: 14px;
	line-height: 1.5;
}





.bl_imgResp img {
	max-width: 100%;
	height: auto;
}

.separator {
	margin-block: 1em;
	margin-inline: 12px 24px;
	color: inherit;
	border: 0 none;
	border-bottom: 2px dotted currentcolor;
}

.bl_hasGap > * + * {
	margin-top: var(--margin-top, 0.5em);
}
.el_lv4Heading {
	padding: 0 24px 0 12px;
	margin: 1em auto 0.5em;
}