@charset "utf-8";
/*
Theme Name: mitahama202610sp
Theme URI: http://mitahamapharmacy.com/
Description: 三田浜薬局テーマ（PHP8・スマホ対応版 mitahama202610sp）。漢方と鍼灸の三田浜薬局（千葉県船橋市）。
Version: 1.2.1
Author: M.N Supported By Gadget
Author URI: http://gadget-corp.co.jp
Text Domain: mitahama202610sp
Tags: design

*/

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {
	list-style: none;
}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{
	color: #252525;
	-webkit-text-size-adjust: none;
	background: #f3eac9;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 100%;
	line-height: 1.5;
}


/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#777;
}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
color:#999;
}


/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"], input[type="email"], textarea{
vertical-align:middle;
max-width:90%;
line-height:30px;
height:30px;
padding:1px 5px;
border:1px solid #d4d4d7;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
font-size:100%;
color:#555;
background:#fcfcfc;
}

textarea{
height:auto;
line-height:1.5;
}

input[type="submit"],input[type="reset"],input[type="button"]{
padding:3px 10px;
background: #2a588b;
background: -moz-linear-gradient(top, #2a588b 0%, #214a78 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#2a588b), color-stop(100%,#214a78));
background: -webkit-linear-gradient(top, #2a588b 0%,#214a78 100%);
background: -o-linear-gradient(top, #2a588b 0%,#214a78 100%);
background: -ms-linear-gradient(top, #2a588b 0%,#214a78 100%);
background: linear-gradient(to bottom, #2a588b 0%,#214a78 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2a588b', endColorstr='#214a78',GradientType=0 );
border:0;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
line-height:1.5;
font-size:100%;
color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background: #2a588b;
background: -moz-linear-gradient(top, #214a78 0%, #2a588b 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#214a78), color-stop(100%,#2a588b));
background: -webkit-linear-gradient(top, #214a78 0%,#2a588b 100%);
background: -o-linear-gradient(top, #214a78 0%,#2a588b 100%);
background: -ms-linear-gradient(top, #214a78 0%,#2a588b 100%);
background: linear-gradient(to bottom, #214a78 0%,#2a588b 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#214a78', endColorstr='#2a588b',GradientType=0 );
}

*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:960px;
}

#header{
overflow:hidden;
	background: #f3eac9;
}

#content{
float:left;
width:710px;
padding:15px 0;
}

#sidebar{
float:right;
width:225px;
padding:15px 0;
}

#footer{
clear:both;
padding-top:20px;
background:#4e2931;
} 

#breadcrumb{
padding-top:15px;
padding-left:10px;
font-size:0.9em;
}

/* ヘッダー
*****************************************************/
#header .bg{background:#d4681f;}


/* サイト説明文 + 住所
----------------------------------*/
#header h1,#header p{
float:left;
padding:3px 0;
color: #fff;
font-size:80%;
font-weight:normal;
}

#header p{
float:right;
padding-right: 25px;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
clear:both;
float:left;
padding:30px 0;
color: #515151;
font-size:160%;
font-weight:bold;
}

/* サブナビゲーション
----------------------------------*/
#header ul{
float:right;
padding-top:5px;
padding-right:20px;
}

#header ul li{
display:inline;
margin-left:10px;
font-size:80%;
}

#header ul li a{
padding-left:8px;
color:#000;
background:url(images/arrowSub.png) no-repeat 0 50%;
font-size: 0.9em;
}

#header ul li a:hover{background-position:3px 50%;}


/* メインメニュー
------------------------------------------------------------*/
nav#mainNav{
clear:both;
position:relative;
z-index:200;
color:#FFFFFF;
background:#663333;
}

nav#mainNav ul li{
	float: left;
	position: relative;
	border-right: 1px dotted #ccc;
}

nav#mainNav ul li:first-child{border-left:1px dotted #ccc;}

nav#mainNav ul li a{
display: block;
text-align: center;
_float:left;
color:#FFF;
height:34px;
line-height:34px;
padding:12px 32px 0px;
}

nav#mainNav ul li a span,nav#mainNav ul li a strong{
display:block;
font-size:90%;
line-height:1.4;
}

nav#mainNav ul li a span{
font-size:70%;
color:#f48009;
}

nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover, nav#mainNav ul li a:active, nav#mainNav ul li.current-menu-parent a{
background:#602525;
}

nav#mainNav ul ul{width:160px;}

nav#mainNav ul li ul{display: none;}

nav#mainNav ul li:hover ul{
display: block;
position: absolute;
top:50px;
left:-2px;
z-index:500;
}

nav#mainNav ul li li{
padding:0 0 0 10px;
margin:0;
float: none;
height:40px;
line-height:40px;
width:160px;
background:#faf5ef;
border:0;
border-bottom:1px dotted #ccc;
}

nav#mainNav ul li li:first-child{border-left:0;}

nav#mainNav ul li li a{
width:100%;
height:40px;
padding:0;
line-height:40px;
font-size:95%;
text-align:left;
}

nav#mainNav ul li li a span{padding:0 10px;}

nav#mainNav ul li li a:hover,nav#mainNav ul li li.current-menu-item a{color:#f48009;}

nav#mainNav ul li:hover ul li:last-child{border:0;}

.ul_button li a{
	background:none !important;
}

/* トップページ　メイン画像
----------------------------------*/
#mainImg{
clear:both;
margin-top:25px;
margin-left:auto;
margin-right:auto;
margin-bottom:15px;
line-height:0;
text-align:center;
z-index:0;
position:relative;
}

.post{
margin:0 0 20px 0;
padding:20px;
border:1px solid #dadada;
background: #fff;
}


/* タイポグラフィ
*****************************************************/
h2.title{
clear:both;
margin:30px 0 10px;
padding:5px 15px;
font-size:1.0em;
color:#2b2c00;
background:#fff url(images/bg_h2title.png) repeat-x 0 100%;
}

h2.first{margin-top:0;}

.dateLabel{
margin:0 0 10px;
text-align:right;
font:italic 1em "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.post p{padding-bottom:15px;}

.post ul.kajyougaki{margin: 0 0 10px 10px;}

.post ul.kajyougaki li{
margin-bottom:5px;
padding-left:15px;
background:url(images/bullet.png) no-repeat 0 8px;
}

.post ol.kajyougaki_1{margin: 0 0 10px 30px;}

.post ol.kajyougaki_1 li{list-style:decimal;}

.post h1 .hajime{
margin:20px 0;
padding:5px 0;
font-size:150%;
color: #000;
border-bottom:3px solid #000;
}

.post h2 .hajime{
margin:10px 0;
padding-bottom:2px;
font-size:130%;
font-weight:normal;
color: #333;
border-bottom:2px solid #515151;
}

.post h3{
margin:10px 0;
font-size:120%;
font-weight:normal;
color:#214a78;
border-bottom:1px solid #515151;
}

.post blockquote {
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}

.post table{
border: 1px #214a78 solid;
border-collapse: collapse;
border-spacing: 0;
}

.post table th{
padding:7px 10px 7px 5px;
border: #214a78 solid;
border-width: 0 0 1px 1px;
font-weight:bold;
color:#fff;
background:#214a78;
}

.post table td{
padding:7px 5px;
border: 1px #214a78 solid;
border-width: 0 0 1px 1px;
background:#fff;
}

.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

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

img.aligncenter {
display: block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}

/* トップページ　バナー画像
----------------------------------*/

.ul_topbnr li{
	float:left;
	margin-right:24px;
	margin-bottom:25px;
}

.ul_topbnr li.last{
	float:left;
	margin-right:0px;
}

/* トップページ　新着情報
----------------------------------*/
.dl_info {
	overflow: scroll;
	zoom: 1;
	height:160px;
	padding: 10px;
	margin-bottom:20px;
	font-size:0.9em;
	background:#FFF;
}
.dl_info dt {
	width: 10em;
	float: left;
	clear: both;
}
.dl_info dd {
	padding: 0 0 5px 10em;
}

.dl_info a {
	color:#333333;
}

/* サイドバー　ウィジェット
*****************************************************/
section.widget, .widgetInfo{
margin: 0 0 15px;
}

#banners img{
max-width:225px;
height:auto;
padding-bottom:5px;
}

section.widget h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:100%;
font-weight:normal;
color: #333;
border-bottom:1px solid #ccc;
}

section.widget a{
display:block;
padding:0px;
margin-bottom:-6px;
text-decoration:underline;
}

section.widget a:hover{
text-decoration:none;
background-position: 3px 50%;
}

#searchform input[type="text"]{
line-height:1.7;
height:24px;
width:100px;
vertical-align:bottom;
}


/* お知らせ　
-------------*/
.newsTitle{
clear:both;
margin:0 0 20px;
padding:5px 0;
font-size:100%;
color: #333;
border-bottom:1px solid #ccc;
}

.newsTitle h3{
float:left;
font-weight:normal;
}

.newsTitle p{
float:right;
padding:0 0 0 10px;
font-size:.8em;
background:url(images/arrow.png) no-repeat 0 50%;
}

.news p{
clear:both;
padding-bottom:2px;
border-bottom: 1px solid #ccc;
}

.news p:last-child{border:0;}

.news p a{
display:block;
padding:5px 0;
color:#333;
font-style:italic;
font:italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.news a span{
color:#515151;
font:normal 90% Arial, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

.news span{padding-left:10px;}

.news a:hover span{color:#777;}



/* フッター
*****************************************************/
#footer ul{
font-size:12px;
padding:10px 0 30px 0;
}

#footer ul li{
display:inline-block;
vertical-align:text-top;
text-align:left;
padding:5px 0;
margin-right:30px;
background:url(images/arrow.png) no-repeat 0 12px;
}

#footer ul li	a{
display:block;
padding:0 0 0 12px;
	color:#FFFFFF;
overflow:hidden;
}

#footer ul li	a:hover{
	text-decoration:underline;
	color:#FFFFFF;
}

#footer ul li li{
display:block;
padding:0;
margin:0 0 0 10px;
background-position:0 5px;
}


*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
clear:both;
padding:10px;
text-align:center;
font-size:75%;
zoom:1;
color:#FFFFFF;
background:#352126;
}


/* page navigation
------------------------------------------------------------*/
.pagenav{
clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}

.prev{float:left}

.next{float:right;}

#pageLinks{
clear:both;
color:#2a588b;
text-align:center;
}


/* トップページ 最新記事3件
------------------------------------------------------------*/
.thumbWrap{
width:735px;
margin:20px -25px 20px 0;
}

.thumbWrap li{
float:left;
width: 220px;
margin:0 25px 0 0;
padding:2px 0 40px;
background:none;
}

/* 最新記事リンク */
ul.thumb h3{
margin-top:10px;
padding:1px;
font-weight:normal;
font-size:100%;
text-align:center;
background:#25252;
border:1px solid #dadada;
}

ul.thumb h3 span{
display:block;
padding:2px 3px;
background:#faf5ef;
}

ul.thumb h3 a{color:#252525;}

ul.thumb h3:hover span{background:#fff;}

/* お問い合わせ
------------------------------------------------------------*/
table.table_contact{
	border-collapse: collapse;
	width:100%;
}
.table_contact th.t_top {
    border-top: #be1309 4px solid;
}
.table_contact th {
	text-align: left;
	padding: 10px;
	font-weight: normal;
	font-size: 0.85em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFFFFF;
}
.table_contact td.t_top {
	border-top: #b3b3b3 4px solid;
}
.table_contact td {
	border-bottom: #e3e3e3 1px dotted;
	text-align: left;
	padding: 10px;
}
.table_contact tr:hover {
    background: #3D80DF;
    color: #FFFFFF;
}

/* リンク設定
------------------------------------------------------------*/
a:hover img{
	opacity:0.8;
}

/* ウィジェット設定
------------------------------------------------------------*/
.fb-like-box{
	background:#FFF;
}

p.kuhaku{
	text-indent: 1em;
}
.daimei{
	margin: 0 0 1.5em;
	padding: 0.8em;
	font-size: 1.143em;
	border: 2px solid #B92A2C;
	box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
	-moz-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
	-o-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
	-ms-box-shadow: 3px 3px 3px rgba(0,0,0,0.4);
	text-indent: 1em;
	}
.seishingen{
	display: block;
	height: auto;
	width: 540px;
	margin-right: auto;
	margin-left: auto;
	}
.seishingen1{
	float: left;
	height: auto;
	width: 240px;
}
.seishingen2{
	float: right;
	height: auto;
	width: 300px;
}
.writingbox{
	display: block;
	padding: 1em;
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}
.boxgoou{
	display: block;
	height: 188px;
	width: 512px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
	border: 3px solid #666666;
	padding: 6px;
	margin-bottom: 3px;
}
.writinggoou{
	display: block;
	float: left;
	height: 187px;
	width: 250px;
	position: absolute;
	padding-top: 3em;
	padding-left: 0.5em;
}
.imgGoou{
	display: block;
	float: right;
	height: 187px;
	width: 250px;
}
.sokeikaketsu{
	height: 300px;
	width: 550;
	margin-right: auto;
	margin-left: auto;
	margin-top: 1em;
	margin-bottom: 1em;
}
.tableBox{
	text-align: center;
}
.postbox{
	height: auto;
	width: auto;
	margin-top: 1em;
	margin-bottom: 1em;
	margin-right: 1em;
	margin-left: 1em;
}
.post h3{
	text-indent: 1em;
	}

/* Contact Form 7 Style */
.dl-contactform, dt, dd {
  margin : 0;
  padding : 0;
}

.dl-contactform dl {

}
.dl-contactform dt {
  float : left;
  clear : both;
  width : 200px;
  font-weight : normal;
  padding : 5px;
}

.dl-contactform dd {
  padding-left : 200px;
  border-bottom: 1px solid #EEE;
  margin-bottom: 15px;
}

.m-alert {
	padding: 5px;
	background: #ff8080;
	color: #fff;
	margin: 5px;
	font-weight: normal;
	font-size: 0.8em;
}
.m-optional {
	padding: 5px;
	background: #0099FF;
	color: #fff;
	margin: 5px;
	font-weight: normal;
	font-size: 0.8em;
}

.wpcf7 .wpcf7-response-output {
	margin: 10px 0 0;
	padding: 8px 35px 8px 14px;
}
.wpcf7 .wpcf7-validation-errors {
	color: #B94A48;
	background-color: #F2DEDE;
	border: 1px solid #EED3D7;
}
.wpcf7 .wpcf7-mail-sent-ok {
	color: #3A87AD;
	background-color: #D9EDF7;
	border: 1px solid #BCE8F1;
}
.sent .hidden {
	display: none;
}
/*見出し追加CSS*/
.midashi{
	margin-bottom: 1em;
	padding-top: 0.8em;
	padding-right: 0.9em;
	padding-bottom: 0.3em;
	padding-left: 0.9em;
	border-bottom-width: 7px;
	border-bottom-style: solid;
	border-bottom-color: #FF6600;
	background-color: #E1E1E1;
	font-size: 100%;
}
.midashi2 {
	font-weight: normal;
	text-decoration: blink;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #666;
	margin-bottom: 0.5em;
	text-indent: 1em;
}
h1.midashi3{
	position: relative;
	border-left: 6px solid #FF6600;
	padding-top: 0.25em;
	padding-right: 0;
	padding-bottom: 0.5em;
	padding-left: 0.75em;
}
h1.midashi3::after {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 100%;
	height: 0;
	border-bottom: 1px solid #ccc;
}
.komidashi{
	border-bottom-width: 3px;
	border-bottom-style: double;
	border-bottom-color: #999;
	margin-bottom: 0.5em;
	color: #F00;
	text-indent: 1em;
}
/*見出しここまで*/
#kounenki_1{
	margin-left: 3em;
	display: table;
}
#kounenki_2{
	margin-left:4em;
	margin-bottom: 1em;
}
#kounenki_2 li{
	list-style-type: decimal;
}
.postbox3{
	margin-top: 1em;
	margin-right: auto;
	margin-bottom: 1em;
	margin-left: auto;
	line-height: 1.8em;
	}
.tablestyle td{
	text-align: center;
	}
.tablestyle{
	margin-top: 2em;
	margin-right: auto;
	margin-left: auto;
}
.wagurasu_w{
	color: #FFF;
	background-color: #33C;
	font-size: 18px;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 2em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
.wagurasu_d{
	color: #FFF;
	background-color: #800000;
	font-size: 18px;
	text-align: center;
	margin-top: 1em;
	margin-bottom: 2em;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
#okisopinz{
	margin-right: auto;
	margin-left: auto;
	background-color: #CCFF00;
	height: auto;
	width: 420px;
	padding: 30px;
	border: 5px groove #999;
	color: #333;
}
.bangou li{
	list-style-type: decimal;
}
.bangou{
	margin-left: 2em;
}
.tounyou_1{
	margin-left: auto;
	margin-bottom: 1em;
	color: #FFF;
	background-color: #36F;
	padding: 0.5em;
	border: 2px solid #000;
	height: auto;
	width: 320px;
	margin-right: auto;
}
.tounyou_2{
	margin-left: auto;
	margin-bottom: 1em;
	color: #FFF;
	background-color: #F00;
	padding: 0.5em;
	border: 2px solid #000;
	height: auto;
	width: 320px;
	margin-right: auto;
}
/*感應丸・律鼓心のテーブル*/
.senso{
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
}
.senso td{
	vertical-align: middle;
}
td.sayou_1{
	text-align: center;
}
.senso td:nth-child(3n+1) {
	text-align: center;
}
.senso td:nth-child(3n+2) {
	text-align: center;
}
.senso td p{
	padding-bottom: 0px;
}
/*感應丸・律鼓心のテーブルここまで*/
p.mannaka {
	text-align: center;
}
.tonos {
	margin-right: auto;
	margin-left: auto;
}
.tonos td {
	text-align: center;
}
.rinkuru {
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
}
.rinkuru td{
	text-align: center;
}
#rinkuru1{
	text-align: center;
	margin-top: 1em;
}
.tousen td {
	text-align: center;
	vertical-align: middle;
	}
.tousen {
	margin-top: 1em;
	margin-right: auto;
	margin-bottom: 1em;
	margin-left: auto;
}
.table_1 {
	margin-right: auto;
	margin-left: auto;
}
.table_1 td{
	text-align: center;
}


/* ============================================================
   ハンバーガー / フッター追従メニュー（PCでは非表示）
   ============================================================ */
.nav-toggle {
	display: none;
}

.fixed-footer-nav {
	display: none;
}


/* ============================================================
   レスポンシブ（デスクトップファースト）
   ブレークポイント: 960px / 768px / 390px
   ============================================================ */

/* --- 960px 以下：流動レイアウト --- */
@media screen and (max-width: 960px) {
	#wrapper,
	.inner {
		width: auto;
		max-width: 960px;
		padding-left: 15px;
		padding-right: 15px;
		box-sizing: border-box;
	}

	#content {
		width: 72%;
		box-sizing: border-box;
	}

	#sidebar {
		width: 25%;
		box-sizing: border-box;
	}

	#banners img {
		max-width: 100%;
	}

	#mainImg img,
	#mainImg iframe {
		max-width: 100%;
		height: auto;
	}

	.ul_topbnr li {
		margin-right: 2%;
	}

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

	.thumbWrap {
		width: auto;
		margin: 20px 0;
	}

	.thumbWrap li {
		width: 30%;
		margin-right: 3%;
		box-sizing: border-box;
	}

	nav#mainNav ul li a {
		padding-left: 18px;
		padding-right: 18px;
	}

	.post table {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

/* --- 768px 以下：1カラム・ナビ縦並び --- */
@media screen and (max-width: 768px) {
	#wrapper,
	.inner {
		padding-left: 12px;
		padding-right: 12px;
	}

	#content,
	#sidebar {
		float: none;
		width: 100%;
		padding: 10px 0;
	}

	#header h1,
	#header p {
		float: none;
		display: block;
		text-align: center;
		padding: 4px 8px;
	}

	#header p {
		padding-right: 8px;
	}

	#header h2 {
		float: none;
		text-align: center;
		padding: 16px 0 8px;
	}

	#header h2 img {
		max-width: 70%;
		height: auto;
	}

	/* サブナビ・電話/案内ボタンはフッター追従メニューと重複するため非表示 */
	#header .ul_hmenu,
	#header .ul_button {
		display: none !important;
	}

	/* ハンバーガーボタン */
	nav#mainNav .inner {
		position: relative;
		padding-top: 8px;
		padding-bottom: 8px;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}

	.nav-toggle {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		margin: 0;
		padding: 10px 12px;
		border: 1px solid rgba(255, 255, 255, 0.45);
		border-radius: 4px;
		background: #602525;
		color: #fff;
		cursor: pointer;
		z-index: 220;
	}

	.nav-toggle__bars {
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		gap: 4px;
		width: 22px;
	}

	.nav-toggle__bar {
		display: block;
		width: 100%;
		height: 2px;
		background: #fff;
		transition: transform 0.2s ease, opacity 0.2s ease;
	}

	.nav-toggle__label {
		font-size: 12px;
		line-height: 1;
	}

	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(2) {
		opacity: 0;
	}

	.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	/* ドロワーメニュー */
	.global-menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		z-index: 210;
		background: #663333;
		box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
		max-height: calc(100vh - 120px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.global-menu.is-open {
		display: block;
	}

	body.is-nav-open {
		overflow: hidden;
	}

	nav#mainNav ul {
		text-align: left;
	}

	nav#mainNav ul li {
		float: none;
		border-right: 0;
		border-bottom: 1px dotted #ccc;
	}

	nav#mainNav ul li:first-child {
		border-left: 0;
	}

	nav#mainNav ul li a {
		height: auto;
		line-height: 1.4;
		padding: 14px 16px;
		text-align: left;
	}

	/* ドロワー内は子メニューをインデント表示 */
	nav#mainNav ul li ul,
	nav#mainNav ul li:hover ul {
		display: block;
		position: static;
		width: 100%;
		background: #502828;
	}

	nav#mainNav ul li li {
		width: 100%;
		height: auto;
		line-height: 1.4;
		padding: 0;
		background: transparent;
		border-bottom: 1px dotted rgba(255, 255, 255, 0.2);
	}

	nav#mainNav ul li li a {
		color: #fff;
		padding: 12px 16px 12px 28px;
		height: auto;
		line-height: 1.4;
	}

	nav#mainNav ul li li a:hover,
	nav#mainNav ul li li.current-menu-item a {
		color: #f48009;
	}

	/* フッター追従メニュー */
	.fixed-footer-nav {
		display: block;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 300;
		background: #4e2931;
		border-top: 1px solid rgba(255, 255, 255, 0.15);
		box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.2);
		padding-bottom: env(safe-area-inset-bottom, 0);
	}

	.fixed-footer-nav ul {
		display: flex;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.fixed-footer-nav li {
		flex: 1;
		margin: 0;
		padding: 0;
		background: none !important;
		border-right: 1px solid rgba(255, 255, 255, 0.15);
		text-align: center;
	}

	.fixed-footer-nav li:last-child {
		border-right: 0;
	}

	.fixed-footer-nav a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		min-height: 64px;
		padding: 8px 4px;
		color: #fff !important;
		text-decoration: none;
		font-size: 11px;
		line-height: 1.3;
		box-sizing: border-box;
	}

	.fixed-footer-nav a:hover,
	.fixed-footer-nav a:active {
		background: #602525;
		color: #fff !important;
		opacity: 1;
	}

	.fixed-footer-nav__icon {
		display: block;
		width: 22px;
		height: 22px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
	}

	.fixed-footer-nav__icon--tel {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1.1-.2 1.2.4 2.5.6 3.8.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1C10.6 21 3 13.4 3 4c0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.6.6 3.8.1.4 0 .8-.3 1.1l-2.2 2.2z'/%3E%3C/svg%3E");
	}

	.fixed-footer-nav__icon--mail {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4-8 5L4 8V6l8 5 8-5v2z'/%3E%3C/svg%3E");
	}

	.fixed-footer-nav__icon--access {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M12 2C8.1 2 5 5.1 5 9c0 5.3 7 13 7 13s7-7.7 7-13c0-3.9-3.1-7-7-7zm0 9.5c-1.4 0-2.5-1.1-2.5-2.5S10.6 6.5 12 6.5s2.5 1.1 2.5 2.5S13.4 11.5 12 11.5z'/%3E%3C/svg%3E");
	}

	.fixed-footer-nav__label {
		display: block;
	}

	/* 追従メニュー分の余白 */
	body {
		padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px));
	}

	#copyright {
		padding-bottom: 20px;
	}

	#mainImg {
		margin-top: 15px;
		margin-bottom: 10px;
	}

	/* SPでも3バナーは横並び（画像220px固定幅でも縮小して1行に収める） */
	#content .ul_topbnr,
	ul.ul_topbnr {
		display: table !important;
		width: 100% !important;
		table-layout: fixed !important;
		border-collapse: separate !important;
		border-spacing: 4px 0 !important;
		margin: 0 0 16px !important;
		padding: 0 !important;
		list-style: none !important;
	}

	#content .ul_topbnr > li,
	#content .ul_topbnr > li.last,
	ul.ul_topbnr > li,
	ul.ul_topbnr > li.last {
		display: table-cell !important;
		float: none !important;
		width: 33.333% !important;
		max-width: 33.333% !important;
		margin: 0 !important;
		padding: 0 !important;
		vertical-align: top !important;
		box-sizing: border-box !important;
	}

	#content .ul_topbnr > li > a,
	ul.ul_topbnr > li > a {
		display: block !important;
		width: 100% !important;
		line-height: 0 !important;
	}

	#content .ul_topbnr > li img,
	#content .ul_topbnr > li a img,
	ul.ul_topbnr > li img,
	#content a .ul_topbnr img {
		display: block !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.dl_info {
		height: auto;
		max-height: 220px;
	}

	.thumbWrap li {
		float: none;
		width: 100%;
		margin: 0 0 20px;
		padding-bottom: 20px;
	}

	#footer > .inner > ul {
		text-align: center;
		padding: 10px 0 20px;
	}

	#footer > .inner > ul > li {
		display: block;
		margin: 0 0 8px;
		text-align: center;
		background-position: center 12px;
	}

	#footer > .inner > ul > li > a {
		display: inline-block;
		padding-left: 12px;
	}

	#footer > .inner > ul ul {
		display: none;
	}

	.post {
		padding: 15px;
	}

	#content a img {
		max-width: 100%;
		height: auto;
	}

	/* バナー画像は親幅に合わせて縮小（上記 table-cell 内） */
	#content .ul_topbnr a img {
		max-width: 100% !important;
		width: 100% !important;
	}
}

/* --- 390px 以下：小型スマホ向け微調整 --- */
@media screen and (max-width: 390px) {
	#wrapper,
	.inner {
		padding-left: 8px;
		padding-right: 8px;
	}

	#header h1,
	#header p {
		font-size: 70%;
		line-height: 1.4;
	}

	#header h2 {
		padding: 12px 0 6px;
	}

	#header h2 img {
		max-width: 85%;
	}

	nav#mainNav ul li a {
		padding: 14px 12px;
	}

	nav#mainNav ul li a span {
		font-size: 65%;
	}

	#content .ul_topbnr,
	ul.ul_topbnr {
		border-spacing: 3px 0 !important;
		margin-bottom: 12px !important;
	}

	.dl_info {
		font-size: 0.85em;
		padding: 8px;
		max-height: 200px;
	}

	.dl_info dt {
		float: none;
		width: auto;
	}

	.dl_info dd {
		padding: 0 0 10px 0;
	}

	.post {
		padding: 12px;
	}

	h2.title {
		padding: 5px 10px;
		font-size: 0.95em;
	}

	#copyright {
		font-size: 65%;
		padding: 8px 6px;
		line-height: 1.4;
	}
}