@charset "utf-8";

/* =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{
/*font: 14px/1.8 "Lucida Sans Unicode", "Lucida Grande","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
background:url(../images/bg.png);*/
    /* font: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Helvetica, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; */
    font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color:#333;
    font-size: 14px;
    line-height: 1.8;
	-webkit-text-size-adjust: none;
}



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

a:hover, a:active{
outline: none;
color:#ae0000;
}

a img:hover{opacity:.8;}


/**** Clearfix ****/
#wrapper:after,nav#mainNav ul:after, nav#mainNav .inner:after, .newsTitle:after, .post:after,.inner:after,ul.news:after{content:""; display: table;clear:both;}
#wrapper,nav#mainNav ul,.newsTitle, .post, nav#mainNav .inner,ul.news{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"], 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"], p.readon a{
vertical-align:top;
padding:0 10px;
background: #ffb154;
background: -moz-linear-gradient(top, #ffb154 0%, #ae0000 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffb154), color-stop(100%,#ae0000));
background: -webkit-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: -o-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: linear-gradient(to bottom, #ffb154 0%,#ae0000 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb154', endColorstr='#ae0000',GradientType=0 );
border:0;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
line-height:28px;
height:28px;
font-size:120%;
color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover,p.readon a:hover{
background: #ae0000;
background: -moz-linear-gradient(top, #ae0000 0%, #ffb154 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ae0000), color-stop(100%,#ffb154));
background: -webkit-linear-gradient(top, #ae0000 0%,#ffb154 100%);
background: -o-linear-gradient(top, #ae0000 0%,#ffb154 100%);
background: linear-gradient(to bottom, #ae0000 0%,#ffb154 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ae0000', endColorstr='#ffb154',GradientType=0 );
cursor:pointer;
}
*:first-child+html input[type="submit"]{padding:3px;}


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

#wrapper{
padding:30px 10px 0;
background:#fff;
border-radius:10px 10px 0 0;
box-shadow:0 0 3px #ccc;
background:#fff;
}

#content{
float:right;
width:690px;
padding:20px 0 50px;
}

#toppage #content{
width:100%;
}

#sidebar{
float:left;
width:220px;
padding:10px 0 50px;
}

#footer{
clear:both;
padding:0 10px;
border-radius:0 0 10px 10px;
box-shadow:0 0 3px #ccc;
color:#fff;
background:#ae0000;
}


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


/* サイト説明文
----------------------------------*/
#header h1{
padding:5px 0;
font-size:80%;
color:#fff;
font-weight:normal;
}


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

/* SNS
----------------------------------*/
.sns{
float:right;
padding:0;
}

.sns img{margin-left:5px;}

/* コンタクト
----------------------------------*/
header .contact {
  float: right;
  padding: 15px 0 0;
  text-align: right;
  color: #000;
  font-size: 90%;
}

header .contact img {
  width: 100%;
  max-width: 236px;
}

header .contact .tel {
  margin-bottom: -3px;
  font-size: 26px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  background: none!important;
}
header .contact p {
  background: none!important;
	font-size: 100%;
    font-family: Arial, Helvetica, sans-serif;
}
header .contact .tel a {
  color: #bc0c0c;
}
header .contact .tel img {
    width: 100%;
    margin-right: 2px;
    margin-bottom: -1px;
}
@media only screen and (max-width: 620px){
header .contact {
    padding: 0;
	text-align: center;
	float: none;
}
header .contact p {
    padding: 0;
}
}

/* トップページ　メイン画像
----------------------------------*/
#mainImg{
clear:both;
margin-top:20px;
line-height:0;
text-align:center;
z-index:0;
}

.post{
margin:0 0 20px 0;
}

.toppage h4{
margin:0 0 10px;
font-size:16px;
font-weight:normal;
color:#333;
}


/* 記事ループ
*****************************************************/
.list{
padding:10px 0;
border-bottom:1px dashed #e4e4e4;
}

.list:last-child{border:0;}

.post .list p{padding:0;}

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


/* タイポグラフィ
*****************************************************/
.heading{
clear:both;
margin:0 0 15px;
background:url(../images/headingBg.png) repeat-x;
}

h2.title{
    padding: 10px 10px 5px;
    font-size: 150%;
    font-weight: bold;
    /*color: #666;*/
    border-bottom: 5px solid#bc0c0c;
    margin-bottom: 25px;
	font-family: "Noto Sans JP";
}
.toppage h2.title{
    margin-bottom: 15px;
}
.dateLabel{
text-align:right;
font-family:Georgia, "Times New Roman", Times, serif;
}

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

.post ul{margin: 0 0 10px 10px;display: table;}

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

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

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

.post h1{
margin:20px 0;
padding:5px 0 10px;
font-size:150%;
background:url(../images/headingBg.png) repeat-x 0 100%;
}

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

.post h3{
margin:10px 0 15px;
font-size:120%;
font-weight:bold;
border-bottom:1px solid #ae0000;
}

.post h4 {
    background: #fff2eb;
    padding: 5px 10px;
    display: table;
    min-width: 160px;
    text-align: center;
    margin: 0 0 10px;
    font-weight: bold;
}
.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 #bc0c0c solid;
border-collapse: collapse;
border-spacing: 0;
margin:10px 0 20px;
}

.post table th{
  padding: 10px;
  /* color: #fff; */
  border: 1px #bc0c0c solid;
  border-width: 0 0 1px 1px;
  background: #ae0000;
  width: 22%;
  color: #fff;
  border-bottom: 1px solid #f2cece6b;
}
.post table tr:last-child th{
  border-bottom: 1px solid #ae0000;
}

.post table td{
padding:10px;
border: 1px #bc0c0c solid;
border-width: 0 0 1px 1px;
background:#fff;
}

@media screen and  ( max-width : 767px ) {
  .post table th, .post table td {
      width: 100%;
      display: block;
      border-left: 0;
      box-sizing: border-box;
      padding: 5px;
  }
}


.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{
margin: 0 0 15px 15px;
display:inline;
}

img.alignleft{margin:0 15px 15px 0;}

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

#gallery-1 img{
border:1px solid #eaeaea !important;
padding:5px;
background:#fff;
}

#gallery-1 img:hover{background:#fffaef;}



/* サイドバー　ウィジェット
*****************************************************/
.widgetWrap, section.widget ul{
margin:10px 0 20px 0;
padding:10px 10px 0 10px;
}

section.widget ul ul{
border:0;
margin:0;
padding:0 0 0 10px;
}

#sidebar ul#banners{
width:228px;
margin:10px 0;
}

#sidebar ul#banners li{
float:none;
margin:0 0 10px;
width: 100%;
}

section.widget h3{
clear:both;
margin:0 0 -5px;
padding:5px 0 10px;
font-size:110%;
background:url(../images/border.png) repeat-x 0 100%;
}

section.widget li a{
display:block;
padding:3px 0 3px 12px;
background:url(../images/arrow2.png) no-repeat 0 12px;
border-bottom:1px dashed #e4e4e4;
}

section.widget li a:hover{background-position:2px 12px;}

section.widget li:last-child a{border:0;}

#searchform input[type="text"]{
width:120px;
line-height:22px;
height:22px;
margin-right:3px;
}

#searchform{padding:20px 0;}

/* カレンダー */
#calendar_wrap table{margin:0 auto;width:90%;}
#calendar_wrap table caption{padding:10px 0;text-align:center;font-weight:bold;}
#calendar_wrap table th, #calendar_wrap table td{padding:3px;text-align:center;}
#calendar_wrap table th:nth-child(6){color:#0034af;}
#calendar_wrap table th:nth-child(7){color:#950000;}
#calendar_wrap a{color:#ffb154;font-weight:bold;font-weight:bold;border-bottom:1px solid #fff;}
#calendar_wrap table td#prev{text-align:left;}
#calendar_wrap table td#next{text-align:right;}
#calendar_wrap table td#prev a{text-align:left;border:0;}
#calendar_wrap table td#next a{text-align:right;border:0;}


/* お知らせ　
-------------*/
.newsTitle{
clear:both;
margin:0;
padding:7px 10px 10px 0;
font-size:110%;
background:url(../images/border.png) repeat-x 0 100%;
}

#toppage .newsTitle{
  /*padding: 20px 10px;
  color: #666;*/
  background: none;
  border-bottom: 5px solid#bc0c0c;
}

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

#toppage .newsTitle h3{
  font-size: 120%;
      padding: 10px 10px 5px;
      font-size: 150%;
      font-weight: bold;
      font-family: "Noto Sans JP";
}

.newsTitle p{
float:right;
padding:0 0 0 10px;
font-size:80%;
background:url(../images/arrow2.png) no-repeat 0 5px;
}

#toppage .newsTitle p{
padding:5px 0 5px 10px;
background-position:0 50%;
}

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

.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:#ab0000;}
.news time {
    color: #ae0000;
    font-style: normal;
}

/* トップページ
#content .newsTitle h3{font-size:120%;}*/


/* フッター
*****************************************************/
#footer a{color:#fff;}

#footer .boxWrap{
width:980px;
margin-right:-40px;
}

#footer .box{
float:left;
width:450px;
margin-right:40px;
padding:20px 0;
}

.box .widgetWrap, .box section.widget ul{
padding:0 0 0 7px;
margin-top:0;
background:transparent;
border:0;
}

.box section.widget li a{
background:url(../images/arrowWhite.png) no-repeat 0 12px;
border:0;
}

.box section.widget li a:hover{background-position:2px 12px;}

#footer h3{
padding:5px;
margin-bottom:10px;
font-size:120%;
font-weight:bold;
background:url(../images/border2.png) repeat-x 0 100%;
}

.contact p{
padding:0 0 0 32px;
margin-bottom:3px;
font-size:110%;
background:url(../images/iconHome.png) no-repeat 4px 4px;
}

.contact p.mail{background-image:url(../images/iconMail.png);}
.contact p.tel{background-image:url(../images/iconTel.png);}
.contact p.free{background-image:url(../images/iconFree.png);}
.contact p.fax{background-image:url(../images/iconFax.png);}
.contact p.tw{background-image:url(../images/iconTW.png);}
.contact p.fb{background-image:url(../images/iconFB.png);}
.contact p.URL{background-image:url(../images/iconURL.png);}
.contact p.time{background-image:url(../images/iconTime.png);}

#copyright{
clear:both;
padding:10px 0;
text-align:center;
font-size:90%;
}


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

.prev{float:left}

.next{float:right;}

#pageLinks{
clear:both;
color:#4f4d4d;
text-align:center;
}


/* トップページ 最新記事4件
------------------------------------------------------------*/
ul#banners,ul.post{
width:940px;
margin-right:-20px;
padding-bottom:20px;
}

ul#banners li,ul.post li{
float: left;
    width: 24.26%;
    margin-right: 0.98%;
}
ul#banners li:last-child {
    margin-right: 0;
}
ul#banners li img {
    width: 100%;
}

ul.post{
padding:0;
background:transparent;
border:0;
}

ul.post img{
max-width:220px;
height:auto;
}

ul.post h3{
margin:10px 0;
padding-bottom:5px;
font-size:14px;
font-weight:normal;
color:#333;
border:0;
}

p.readon a{
padding:3px 10px;
font-size:95%;
}

ul#banners:after{content:""; display: table;clear:both;}
ul#banners{zoom: 1;}


/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
div.panel{
display:block !important;
}

a#menu{display:none;}

nav#mainNav{
margin:0 -10px;
width:960px;
background:#bc0c0c;
}
nav#mainNav .inner {
    width: 100%;
}
nav#mainNav ul{
clear:both;
position:relative;
z-index:200;
	display: flex;
    flex-wrap: wrap;
}

nav#mainNav ul li{
float: left;
position: relative;
/*background:url(../images/sep.png) no-repeat 100% 50%;*/
flex: 1;
}

nav#mainNav ul li:last-child{background:none;}

nav#mainNav ul li a{
display: block;
text-align: center;
height:48px;
line-height:48px;
font-size:100%;
/*font-weight:bold;*/
padding:0;
color:#fff;
letter-spacing: 0.05em;
	border-right: 1px solid #fff;
}
nav#mainNav ul li:last-child a{
	border-right: 0;
}
nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-parent a{
text-shadow:0 -1px 1px #4b4b4b;
background: #ae0000;
}

nav#mainNav ul ul{width:100%;}

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

nav#mainNav ul li:hover ul{
display: block;
position: absolute;
top:48px;
left:0;
z-index:500;
background:url(../images/bgDark.png);
border-radius:0 0 6px 6px;
}

nav#mainNav ul li li{
margin:0;
float: none;
height:35px;
line-height:35px;
width:100%;
background:none;
}

nav#mainNav ul li li a, nav#mainNav ul li.current-menu-parent li a,nav#mainNav ul li.current-menu-item li a{
width:100%;
padding:0;
height:35px;
line-height:35px;
font-size:95%;
}

nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li.current-menu-parent li a{
color:#fff;
text-shadow:1px 1px 1px #000;
}

nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover{
text-shadow:0 -1px 1px #4b4b4b;
background-position:0 100%;
}

}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
nav#mainNav{
clear:both;
width:100%;
margin:0 0 20px;
padding:0;
}

nav#mainNav a.menu{
width:100%;
display:block;
height:40px;
line-height:40px;
font-weight: bold;
text-align:center;
color:#fff;
border-radius:6px;
background: #ae0000 url(../images/menuOpen.png) no-repeat 5px 8px;
background: url(../images/menuOpen.png) no-repeat 5px 8px, -moz-linear-gradient(top, #ffb154 0%, #ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px 8px, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffb154), color-stop(100%,#ae0000));
background: url(../images/menuOpen.png) no-repeat 5px 8px, -webkit-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px 8px, -o-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px 8px, -ms-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px 8px, linear-gradient(to bottom, #ffb154 0%,#ae0000 100%);
}

nav#mainNav a#menu span{padding-left:0;}

nav#mainNav a.menuOpen{
color:#fff;
border-radius:6px 6px 0 0;
background: #ae0000 url(../images/menuOpen.png) no-repeat 5px -34px;
background: url(../images/menuOpen.png) no-repeat 5px -34px, -moz-linear-gradient(top, #ffb154 0%, #ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px -34px, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffb154), color-stop(100%,#ae0000));
background: url(../images/menuOpen.png) no-repeat 5px -34px, -webkit-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px -34px, -o-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px -34px, -ms-linear-gradient(top, #ffb154 0%,#ae0000 100%);
background: url(../images/menuOpen.png) no-repeat 5px -34px, linear-gradient(to bottom, #ffb154 0%,#ae0000 100%);
}

nav#mainNav a#menu:hover{cursor:pointer;}

nav .panel{
display: none;
width:100%;
position: relative;
right: 0;
top:0;
z-index: 1;
}

nav#mainNav ul{
	margin:0 0 20px;
	padding:0;
	border-top: 1px solid #fff;
}

nav#mainNav ul ul{margin:0;}

nav#mainNav ul li{
float: none;
clear:both;
width:100%;
height:auto;
line-height:1.2;
}

nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
display: block;
padding:15px 10px;
text-align:left;
border-bottom:1px solid #ccc;
}

nav#mainNav ul li.current-menu-item a,nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:active,nav#mainNav ul li a:hover,nav#mainNav ul li.current-menu-item li a:hover{
color:#fff;
background: #ae0000 url(../images/sep.png) no-repeat 97% 50%;
}

nav#mainNav li.current-menu-item li a, nav#mainNav li.current-menu-parent li a{
color:#ae0000;
background: none;
}

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

nav#mainNav ul li li{
float:left;
border:0;
}

nav#mainNav ul li li span a{
padding-left:25px;
font-size:90%;
}

nav div.panel{float:none;}

#wrapper{padding-top:20px;}

#mainImg{margin-bottom:20px;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
.inner,#header .bg .inner{width:100%;}
#header .inner,#footer,#footer .boxWrap,#wrapper{width:95%;}
#header h1{padding:2px 0 2px 10px;}
#wrapper{padding:20px 1% 0;}

#mainImg img{width:100%;height:auto;}

#content, #sidebar{clear:both;width:95%;float:none;margin:0 auto;padding:0;}

ul.post,ul#banners,#sidebar ul#banners{width:100%;display:table-row;margin:0;}
ul.post li,ul#banners li,#sidebar ul#banners li{float:left;width:23%;margin:0 1%;padding:0 0 20px;}
ul.post img,ul#banners li img,#sidebar ul#banners img{max-width:98%;height:auto;}

#calendar_wrap table{width:260px;margin:0;}

#footer{margin-top:-20px;padding:0 1%;}
#footer .boxWrap{margin:0;padding:0;}
#footer .box{float:none;width:100%;margin:10px 0;}
}


/* 幅620px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 620px){
#wrapper,#footer,#content{width:100%;padding:0;border-radius:0;}
#header h2{float:none;padding:15px 0 0;text-align:center;width: 100%;}
.sns{padding:0 0 10px;float:none;}
nav#mainNav a.menu{border-radius:0;}
#mainImg img{width:100%;height:auto;}
.post{padding:0 10px;}
ul.post li,ul#banners li,#sidebar ul#banners li{width:100%;margin:0 auto;float: none;padding:0;}
ul.post li:nth-child(2n+1){clear:left;}
.post img{max-width:100%;height:auto;}
img.alignright, img.alignleft{display:block;margin:10px auto;max-width:100%;height:auto;}
.alignright,.alignleft{float:none;}
#footer .box{width:95%;margin:10px auto;}
#header h2 img {
    max-width: 100%;
}
ul#banners {
    text-align: center;
    display: table!important;
}
ul#banners li img {
	width: auto;
}
}

/* 追記
------------------------------------------------------------*/
/* slick-----------------*/
.slick-slide img {
    width: auto!important;/*auto or コンテンツサイズを指定*/
   /* width: 100%!important;　画面いっぱいの場合は100%指定*/
    max-width: 100%;
}
/* googlemap-----------------*/
.googlemap {
	position: relative;
	width: 100%;
	padding-top: 30%;/*ここで高さ調整*/
	min-height: 300px;
}
.googlemap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}
/* 汎用-----------------*/
a:focus,*:focus {	outline: none;}
.mb0 {	margin-bottom: 0!important;}
.mb10 {	margin-bottom: 10px!important;}
.mb15 {	margin-bottom: 15px!important;}
.mb20 {	margin-bottom: 20px!important;}
.mb25 {	margin-bottom: 25px!important;}
.mb30 {	margin-bottom: 30px!important;}
.mb40 {	margin-bottom: 40px!important;}
.mb50 {	margin-bottom: 50px!important;}
.text-right { text-align:right;}
.text-left { text-align:left;}
.text-center { text-align:center;}
.text-bold { font-weight:bold;}
.text-large {font-size:120%!important}
.text-xlarge {font-size:150%!important}
.text-small {font-size:80%!important}
.highlight {
    padding: 2%;
    background: #fff2ea;
    box-sizing: border-box;
	    border: 1px dashed #bc0c0c;
}
.highlight p {
    padding: 0;
}

.clearfix {
	overflow: hidden;
	zoom: 1;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
section {
    overflow: hidden;
margin-bottom: 3%;
}
a:hover img {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity=70);
	cursor: pointer;
}
.post table { width: 100%;}
.pc { display:block!important;}
.sp { display:none!important;}
@media only screen and (max-width: 620px){
.pc { display:none!important;}
.sp { display:block!important;}
}
@media screen and (min-width: 621px) {
a[href^="tel:"] {
    pointer-events: none;
    text-decoration: none;
}
}
@media only screen and (min-width: 621px){
img.alignright, img.alignleft {
    width: 45%;
    max-width: 310px;
    height: auto;
}
}
@media only screen and (max-width: 959px) {
a#menu {
    cursor: pointer;
}
#banners p img {
    width: auto;
    max-width: 100%;
}
}
@media only screen and (max-width: 620px){
.post img, img.alignright, img.alignleft {
    width: auto;
    max-width: 100%;
    margin:10px auto;
    display:block;
}
}
/*==========================
	ブロック
==========================*/
/* 2列並び-----------------*/
.box2 {
    display: inline-block;
    margin: 0 2% 2% 0;
    width: 49%;
    box-sizing: border-box;
    vertical-align: top;
    float:left;
}
.reversal .box2 {
    display: inline-block;
    margin: 0 0 2% 2%;
    width: 49%;
    box-sizing: border-box;
    vertical-align: top;
    float:right;
}
.box2:nth-child(2n) {
    margin: 0 0 2% 0;
}
/* 3列並び-----------------*/
.box3 {
    display: inline-block;
    margin: 0 2% 2% 0;
    width: 32%;
    box-sizing: border-box;
    vertical-align: top;
    float:left;
}
.box3:nth-child(3n) {
    margin: 0 0 2% 0;
}
/* 4列並び-----------------*/
.box4 {
    float: left;
    margin: 0 2% 2% 0;
    width: 23%;
    box-sizing: border-box;
    vertical-align: top;
}
.box4:nth-child(4n) {
    margin: 0 0 2% 0;
}
/* 5列並び-----------------*/
.box5 {
    float: left;
    margin: 0 2% 2% 0;
    width: 18.4%;
    box-sizing: border-box;
    vertical-align: top;
}
.box5:nth-child(5n) {
    margin: 0 0 2% 0;
}
@media only screen and (max-width: 620px){
.box2, .box3, .box4, .box5, .reversal .box2 {
    margin: 0 0 1%;
    width: 100%;
}
}
/*ページ送り */
ul.pageNav {
	margin: 20px 0 10px;
	padding: 10px 10px 5px;
	text-align: center;
}

ul.pageNav li {
	display: inline;
	margin: 0 2px;
	padding: 0;
}

ul.pageNav li span,
ul.pageNav li a {
	display: inline-block;
	margin-bottom: 5px;
	padding: 5px 13px;
	background: #f2f3f5;
	text-decoration: none;
	vertical-align: middle;
	border: 1px solid #f2f3f5;
	color:#bc0c0c;
}
ul.pageNav li span {
	background: none;
	color: #b63d3d;
}
ul.pageNav li a:hover {
    color: #fff;
    background: #b63d3d;
    border-color: #b63d3d;
}
/*pageTOP------------------------------*/
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pageTop a {
  display: block;
  z-index: 999;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  background-color: #b63d3d;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  position: relative;
}
#pageTop a::before{
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    content: "";
    display: block;
    height: 12px;
    width: 12px;
    position: absolute;
    right: 0;
    left: 0;
    top: 45%;
    margin: auto;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/* リンクボタン */
.link_btn {
 width: 100%;
 max-width: 260px;
 margin: 10px 0 0;
    overflow: hidden;
}
.link_btn a {
    line-height: 1.4;
    display: block;
    padding: 15px 20px 13px;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    color: #fff;
	border: 1px solid #ae0000;
    border-bottom: 4px solid #bb7604;
    background: #ae0000;
    transition: all 0.5s ease 0s;
}
.link_btn a:before {
 border-top: 1px solid #fff;
 border-right: 1px solid #fff;
 content: "";
 display: block;
 height: 8px;
 margin-top: -4px;
 position: absolute;
 right: 10px;
 top: 50%;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
 -ms-transform: rotate(45deg);
 width: 8px;
	transition: all 0.5s ease 0s;
}
.link_btn a:hover {
    background: #fff ;
	color: #ae0000;
	border-bottom: 4px solid #ae0000;
}
.link_btn a:hover:before {
 border-top: 1px solid #ae0000;
 border-right: 1px solid #ae0000;
}
@media screen and (max-width: 620px) {
.link_btn {
 margin: 10px auto 0;
}
}

/* contactbox */
.contact_box {
    background: #fff;
    border: 3px solid #bc0c0c;
    padding: 10px 10px 10px;
    box-sizing: border-box;
    margin: 20px auto 0;
}
.contact_box .post {
  margin: 0;
}
.contact_box .post h2 {
    text-align: center;
    border-bottom: 2px solid #b63d3d;
    margin-bottom: 20px;
}
.contact_box .post p {
  display: table;
  margin: 0 auto;
  font-weight: bold;
  text-align: center;
  padding: 0;
	background: none;
	color: #000;
}
.contact_box img {
  max-width: 100%;
}
span.telNo {
  display: block;
  font-size: 30px;
  font-weight: bold;
  color: #1f2f54;
  font-family: Arial, Helvetica, sans-serif;
}
span.telNo {
  color: #bc0c0c!important;
}
span.telNo img {
vertical-align: middle;
    margin-top: -6px;
    margin-right: 4px;
    width: 26px;
}
span.free {
    border: 2px solid #bc0c0c;
    color: #bc0c0c;
    font-size: 16px;
    padding: 5px;
    vertical-align: middle;
    margin-left: 10px;
}
.contact_box .link_all {
	display: none!important;
}
@media screen and (max-width: 620px) {
.contact_box {
    text-align: center;
	padding: 5px 10px 10px;
	width:98%;
	position: relative;
  }
.contact_box .post h2 {
    font-size:16px;
	margin-bottom: 10px;
}
span.telNo {
    /*font-size: 160%;*/
    display: inline-block;
    padding: 0;
	margin-bottom: 0;
  }
span.telNo img {
    margin-top: 4px;
    margin-right: 4px;
    display: inline-block;
    width: 25px;
}
span.telNo a:hover {
    opacity: 0.7;
}
span.telNo a:hover img {
    opacity: 1;
}

.contact_box .link_all {
	display: block!important;
}
.contact_box .link_all a{
    position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
}
.contact_box .link_all a:hover {
    background: rgba(255,255,255,.3);
}
span.free {
    display: block;
}
}

.lead {
    font-weight: bold;
    font-size: 120%;
    color: #bc0c0c;
}
@media screen and (min-width: 768px) {
ul.float li {
	float: left;
	width: 45%;
}
}

/* time-table */
.post table.time-table thead th {
  background: #bc0c0c;
  color: #fff;
  border-right: 1px solid #fff;
}
.post table.time-table thead th:last-child {
  border-right: 1px solid #bc0c0c;
}
.post table.time-table th {
  width: auto;
  text-align: center;
  background: #f2cece6b;
    color: #bc0c0c;
}
.post table.time-table td {
  text-align: center;
}
.post table.time-table td span {
  color: #f55236;
}
.color01 {
	color: #bc0c0c;
}

/* point */
ul.point {
    margin: 0;
}
ul.point li {
    background: none;
    padding: 3px 15px;
    border: 1px solid #bc0c0c;
    text-align: center;
    display: table;
    float: left;
    margin: 0 5px 0 0;
    color: #bc0c0c;
    font-size: 90%;
}

/* arrow_box */
.arrow_box {
 position: relative;
 width: 100%;
 background: #fff2ea;
 margin-bottom: 40px;
 padding: 2%;
box-sizing: border-box;
}
.arrow_box:after {
 display: block;
 content: "";
 position: absolute;
 top: auto;
 right: 50%;
 left: 50%;
 bottom: -45px;
 margin: 0 auto 0 -60px;
 width: 0px;
 height: 0px;
 border: 30px solid transparent;
 border-top: 16px solid #fff2ea;
}
.arrow_box:last-child:after {
	content: none;
}
