﻿@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,input,textarea, legend, table.table, caption, tbody, tfoot, thead, tr, th, td {border: 0px;font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: top;border-collapse: collapse;}
:focus {outline: 0;}
ol, ul {list-style: none;}
table.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;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */
body {color:#333;background-color:#fffaf3;font-size:14px;font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;line-height:1.8;-webkit-text-size-adjust: none;}
.page-top { position: fixed; bottom: 150px; right: 10px; padding: 10px; border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; font-size: 16px; -ms-filter: "alpha(opacity=80)"; -moz-opacity: 0.8; -khtml-opacity: 0.8; opacity: 0.8;}
.text-narrow-100percent { transform: scale(0.9, 1); transform-origin: top left; width: 125%;}
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@900&display=swap');.maru {  font-family: "M PLUS Rounded 1c", sans-serif;  font-weight: 900;  font-style: normal;   font-size: 21px;   color: #ff4500;}
/* リンク設定------------------------------------------------------------ */
a{color: #00a0e9;text-decoration: none;text-align: left;}
a:hover{color:#ff6347;}
a:active, a:focus {outline: 0;font-family: inherit;text-align: left;}
/* 全体------------------------------------------------------------ */
#wrapper{margin: 0 auto;padding: 0 1%;width: 100%;position: relative;background: #fffaf3;}
.inner{float:center;margin:0 auto;width: 100%;}
/*************
/* ヘッダー
*************/
#header{height:125px;}
#header h1{padding: 25px 0 5px 10px;font-size: 14px;font-weight: normal;color: #333333;}
#headerbg {background-image: url(../img/bg-top.jpg);width:100%;background-color: #fff;max-width:100%;}
@media print, screen and (min-width: 960px) {
	#header{position: relative;}
	#header ._ins_icon{position: absolute;top:10px;right: 0;}
}
@media print, screen and (max-width: 959px) {
  #header ._ins_icon{display: inline-block;margin: 20px 0 10px;}
}
/*************
/*  ロゴ
*************/
.logo{float:left;margin-left:0px;}
.logo span{display:block;}
/*************
/*  電話番号
*************/
.info{margin-top: 0px;float: right;padding-right: 0;text-align: right;margin-right: 0px;margin-bottom: 10px;}
.info .open{font-size:12px;}
/*************
/*  ロゴ+電話番号
*************/
.logo,.info .tel{margin-top: 0px;color: #333;font-size: 12px;font-weight: bold;margin-bottom: 10px;}
/**************************
/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner{margin: 0 auto;margin-bottom: 0;width: 100%;position: relative;line-height: 0;}
#mainBanner img{margin: 0 auto;max-width:100%;height:auto;border:0px solid #ebebeb;}
.slogan{position:absolute;max-width:100%;height:auto;bottom:10px;left:10px;padding:5px 10px;line-height:1.4;background-color: rgba(0,0,0,0.4);color:#fff;}
.slogan h2{padding-bottom:5px;font-size:20px;color:#fff;}
a.overwhite{background-color: #fffaf3;display: block;font-weight: inherit;}
a.overwhite:hover img{ cursor:pointer; filter: alpha(opacity=60);  /* ie lt 8 */
 -ms-filter: "alpha(opacity=60)";  /* ie 8 */
 -moz-opacity:0.6;     /* FF lt 1.5, Netscape */
 -khtml-opacity: 0.6;     /* Safari 1.x */
 opacity:0.6; zoom:1;}
p.resizeimage img {max-width:100%;height:auto}
img{display:block;margin-left:auto;margin-right:auto;padding-bottom:0px;max-width:100%;}
.img-sp { display: none;}
@media screen and (max-width:560px) { 
	.img-pc {  display: none; }
	.img-sp {  display: block; }
}
/**************************
/* グリッド
**************************/
.gridWrapper{padding-bottom:20px;overflow: hidden;max-width:100%;}
* html .gridWrapper{height:1%;}
.grid{float: left;border-radius: 5px;background: #fff;}
.box{margin:0 0px;padding:0px;border:0px solid #ebebeb;}
.box15 { padding: 10px 10px; margin: 10px 10px 30px 10px; color: #565656; background: #ffeaea; box-shadow: 0px 0px 0px 10px #ffeaea; border: dashed 2px #ffc3c3; border-radius: 8px;}
.box15 p { margin: 0;  padding: 0;}
.box img{margin: 0 auto;max-width:100%;height:auto;border:0px solid #ebebeb;padding-bottom:10px;}
.box h3{padding:10px 0 5px;}
.box h3, .box p{text-align:left;}
.box p.readmore{padding:10px 5px 5px;text-align:right;}
.movie-wrap {  position: relative;  padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/  height: 0;  overflow: hidden;}
 .movie-wrap iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}
/*************
 * メイン コンテンツ
*************/
section.content article{padding: 10px;margin-bottom: 20px;border: 0px solid #ebebeb;overflow: hidden;font-weight: lighter;}
* html section.content article{height:1%;}
section.content p{margin-bottom: 5px;font-size: 26px;font-weight: lighter;text-align: center;}
h3.heading{font-weight: bold;padding: 0 10px;line-height: 36px;color: #333;background: #f1f1f1;font-size: 14px;}
h2.heading{font-weight: bold;line-height: 30px;font-size: 15px;color: #ff4500;text-align: left;}
h2.heading-1{font-weight: bold;line-height: 30px;font-size: 15px;color: #00568d;text-align: left;}
h2.heading-2 {  font-weight: bold;  padding: 0 10px;  font-size: 18px;  line-height: 40px;  color: #000;  border-left: solid 7px #669203;  background: #bde06f;margin-bottom:10px;}
h2.heading-3{font-weight: bold;color: #ff4500;font-size: 24px;margin-bottom:5px;}
h2.heading-4{font-weight: bold;color: #333;font-size: 20px;margin-bottom:3px;}
h2.heading-5{font-weight: bold;color: #ef845c;font-size: 15px;margin-top:5px;}
h3.heading-b{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #7dcdf3; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-y{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #ffd700; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-blue{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #89a3d4; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-orange{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #ef845c; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-green{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #a8cf61; padding: 0.5em;font-size: 16px;margin-bottom:30px;}
h3.heading-pink{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #f09ec1; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-purple{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #cd92bf; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-grey{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #d3cac5; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-brown{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #cf9176; padding: 0.5em;font-size: 16px;margin-bottom:10px;}
h3.heading-red{font-weight: bold;padding: 0 10px;line-height: 20px; background-color: #eee; border-left: 10px solid #e80f00; padding: 0.5em;font-size: 15px;margin-bottom:10px;}
h3.heading-dot {  font-weight: bold;  background: #dfefff;  box-shadow: 0px 0px 0px 5px #dfefff;  border: dashed 2px white;  margin: 0.5em 0;  padding: 0.2em 0.5em;}
section.content img{max-width:100%;height:auto;}
.alignleft{float:left;clear:left;margin:5px 0 10px 0;}
.alignright{float:right;clear:right;margin:3px 0 10px 10px;}
#gallery .grid img,.border,ul.list img{border:4px solid #ebebeb;}
hr {border-top: 1px dashed #bbb;}
/*************
 * inline
*************/
.iframe-wrap {  position: relative;  width: 100%;  padding-top: 100%;  overflow:auto;   -webkit-overflow-scrolling:touch;  border:1px solid #ccc; }
.iframe-wrap iframe { position:absolute; top:0; left:0; width:100%; height:100%; border:none; display:block;}
/*************
 * テーブル
*************/
table.table{border-collapse:collapse;margin:5px auto 15px auto;}
table.table td{border-collapse: collapse;background-color: #fff;text-align: left;padding: 10px;border: 0px solid #D6D6D6;border-bottom: 1px solid #D4D4D4;line-height: 20px;font-weight: normal;text-transform: none;}
@media screen and (max-width:640px) {table.table td{padding: 0;}}
table.table th{background-color: #F5F5F5;text-align: center;padding: 10px;white-space: nowrap;color: #151515;border-top: 0px solid #D4D4D4;border-right: 0px solid #D4D4D4;border-bottom: 1px solid #D4D4D4;border-left: 0px solid #D4D4D4;font-size: 14px;font-weight: normal;letter-spacing: 1px;background-repeat: repeat-x;background-position: top;}
/* 青色の枠　*/.blue{ padding: 17px; margin: 0px 0px; width: 95%; background: #fff; border-radius: 12px; color: #333;}
tablearea{   width:100%;   height:30%;}
.my-parts {  border-collapse: collapse;  border-top: 1px solid; border-color: #666;  border-bottom: 1px solid; border-color: #666;  table-layout: fixed;  width: 100%;}
.my-parts th, .my-parts td {  border-top: 1px solid; border-color: #666;  border-bottom: 1px solid; border-color: #666;  border-right: 1px solid; border-color: #666;  border-left: 1px solid; border-color: #666;  padding: .5em;  text-align: center;}
.my-parts th {  background: #ff8c00;  color: #fff;  font-weight: bold;}
/*************
/*  サイドバー
*************/
#sidebar ul{padding:10px;}
#sidebar li{margin-bottom:10px;padding-bottom:10px;list-style:none;border-bottom:0px dashed #ebebeb;}
#sidebar li:last-child{border:0;margin-bottom:0px;}
#sidebar li a{display:block;}
#sidebar ul.list li{clear:both;margin-bottom:5px;padding:5px 0;overflow:hidden;border:0;}
ul.list li{height:1%;}
ul.list li img{float:left;margin-right:10px;}
ul.list li{font-size:14px;line-height:1.5;}
/*************
/* ｍｅｎｕ
*************/
.menu ul li {list-style: none;margin: 0;padding: 0;font-size: 14px;float: left;position: relative;width: 120px;/*親メニューの幅*/height: 30px;/*親メニューの高さ*/line-height: 20px;background: #fff;/*親メニューの背景色*/color: #fff;/*親メニューの文字色*/text-align: center;font-weight: bold;}
.menu ul li a {color: #333;display: block;text-decoration: none;}
.menu ul li:hover, .menu ul li a:hover {  background:#ef845c;/*ホバー時の親メニューの背景色*/  color:#fff;/*ホバー時の親メニューの文字色*/}
.menu ul li ul {position: absolute;top: 42px;/*親メニューの高さと同じにする*/left: 0px;width: 160px;}
.menu ul li ul li {visibility: hidden;overflow: hidden;width: 120px;/*サブメニューの幅*/height: 30px;background: #00a0e9;/*サブメニューの背景色*/}
.menu ul li ul li:hover, .menu ul li ul li a:hover {background:#00a0e9;/*ホバー時のサブメニューの背景色*/}
.menu ul li:hover ul li, .menu ul li a:hover ul li{visibility: visible;overflow: visible;height:40px;/*サブメニューの高さ*/z-index: 1000;}
.menu * {  -webkit-transition: 0.5s;  -moz-transition: 0.5s;  -ms-transition: 0.5s;  -o-transition: 0.5s;  transition: 0.5s;}
/*************
/*  フッター
*************/
#footer{clear:both;overflow:hidden;padding:0px 20px 200px 10px;background-image: url(../img/footer-back.png);background-position:center bottom;background-repeat:repeat-x;max-width:100%;}
* html #footer{height:1%;}
#footer .grid{padding: 10px 0 5px;margin: 0;background: transparent;width: 40%;}
#footer #info .logo, #footer #info .info{float:none;}
#footer #info .info{clear: both;padding: 10px 0 0 15px;text-align: left;width: auto;}
#footer .logo{font-size:24px;}
#footer .info .tel,#footer .info .tel span,#footer #info .open{color: #333;font-size: 14px;}
ul.footnav{float:right;width:540px;padding:30px 0;}
ul.footnav li{float:left;margin-bottom:10px;padding:0 8px 0 20px;font-size:12px;border-right:0px solid #b6b6b6;}
#footer a{color:#333;}
#footer a:hover{color: #ff6347;}
address{clear:both;padding:5px;text-align:center;font-style:normal;font-size:10px;color:#fff;background:#5fb658;}
/* PC用------------------------------------------------------------ */
@media print, screen and (min-width: 960px){
	#header,#wrapper,.inner{width: 930px;padding-top: 0;padding-right: 0;padding-left: 0;padding-bottom: 0;margin: 0 auto;max-width: none;}
	#wrapper{padding-bottom:30px;}
	nav#mainNav{clear: both;position: relative;background: #ef845c;overflow: visible;text-align: center;background-color: #fff;}
	nav#mainNav .inner{width: 840px;padding: 0 14px;height: 42px;}
	nav#mainNav ul li{float: left;position: relative;overflow: visible;text-align: center;padding-right: 0px;background-color: #fff;}
	nav#mainNav li.last{border-right: 1px solid #696969;text-align: center; }
	nav#mainNav ul li a{display: block;text-align: center;_float:left;font-size:13px;width:119px;height:30px;padding-top:12px;color:#000;background:#fff;border-left:1px solid #696969;border-right:1px solid #696969;}
	nav#mainNav ul li a span,nav#mainNav ul li a strong{display:block;}
	nav#mainNav ul li a span{color:#000;font-size:10px;}
	nav div.panel{display:block !important;float:left;}
	a#menu{display:none;}
	nav#mainNav li.active a, nav#mainNav li a:hover{color:#fff;  background:#ff6600;padding-top:12px;}
	#mainBanner{ margin: 0 auto;margin-top: 0;margin-bottom: 0px;}
	#subpage #mainBanner{margin:0 auto;}
	#main{float:left;width:650px;padding:15px 0px 15px 0px;}
	#sidebar{float:right;width:260px;padding:0px 0 20px 15px;overflow:hidden;}
	#sidebar article{padding-top: 5px;padding-right: 5px;padding-left: 5px;padding-bottom: 5px;margin-bottom: 10px;border: 0px solid #ebebeb;overflow: hidden;}
	.gridWrapper{width:930px;margin:0 0 0 0px;}
	#gallery article{padding:5px 5px 5px 5px;}
	.grid{float: left;width: 30%;margin-left: 20px;}
	#subpage .grid{width:auto;}
	#gallery .grid{width: auto;margin:10px 0 2px 10px;}
}
@media only screen and (max-width:959px){
	*{ -webkit-box-sizing: border-box;    -moz-box-sizing: border-box;   -o-box-sizing: border-box;  -ms-box-sizing: border-box;   box-sizing: border-box;}
	nav#mainNav{clear:both;width:100%;margin:0 auto;padding:0;background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #f5f5f5), color-stop(0.5, #f0f0f0), color-stop(0.00, #f7f7f7));background: -webkit-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background: -moz-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background: -o-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background: -ms-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);background: linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);  border:1px solid #e4e4e4;}
	nav#mainNav a.menu{width:100%;display:block;height:40px;line-height:40px;font-weight: bold;text-align:left;}
	nav#mainNav a#menu span{padding-left:10px;}
	nav#mainNav a.menu span:before{content: "→ ";}
	nav#mainNav a.menuOpen span:before{content: "↓ ";}
	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 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 dashed #ccc;}
	nav#mainNav ul li a span{padding-left:10px;}
	nav#mainNav ul li:last-child a{border:0;}
	nav#mainNav ul li.active a{color:#006699;}
	nav div.panel{float:none;}
	#subpage #mainBanner{max-width:668px;}
	#sidebar{padding-bottom:30px;}
	#sidebar article{padding:7px 0;}
	#footer .grid,#footer ul.footnav{float:none;width:100%;text-align:center;}
	ul.footnav li{float:none;display:inline-block;}
	.grid{width:32%;margin:10px 0 0 1%;}
	#gallery .grid{float:left;width:31%;margin:0 0 0 1%;}
	#footer .grid img, #footer .info{float:none;}
	#footer .grid p{display:block;}
	#footer #info .info{float:none;text-align:center;}
	#footer.logo,#footer .info{width: 100%;float: none;text-align: left;font-weight: inherit;}
}
/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
	#header{height:auto;padding-bottom:0px;}
	#header h1,.logo,.info{text-align:center;}
	.logo,.info{clear:both;width:100%;float:none;margin:0;}
	.box img{float:left;margin-right:5px;}
	.box h3{padding-top:0;}
	.alignleft,.alignright{float:none;display:block;margin:0 auto 10px;}
	#gallery .grid{float:left;}
	#formWrap {width:96%;margin:0;padding: 15px 2%;}
	table.formTable,table.formTable *{box-sizing: border-box;}
	table.formTable th, table.formTable td {width:100%;display:block;padding: 10px 0;}
	table.formTable th {margin-top:5px;border-bottom:0;}
	input[type="text"],input[type="tel"],input[type="email"], textarea {width:80%;padding:5px;font-size:110%;display:block;border: solid 1px #646464;}
	input[type="submit"], input[type="reset"], input[type="button"] {display:block;width:100%;height:40px;}
}
.wpcf7-form-control.wpcf7-text,.wpcf7-form-control.wpcf7-textarea {
  border: solid 1px #646464;
  padding: 0.25em;
  max-width: 250px;
  font-size: 12px;
}
#formWrap input[type="submit"],#formWrap input[type="reset"]{
	padding: 0.25em;
  border-radius: 6px;
  border: solid 1px #666;
}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){
	.logo{width:80%; margin:0 auto;}
	.grid{width:80%;}
	.box img{max-width:80px;}
	#mainBanner h2,#mainBanner p{font-size:80%;}
}
._color-red{color: red;}
._mt10{margin-top: 10px;}
._mt15{margin-top: 15px;}
._mt20{margin-top: 20px;}
._mt30{margin-top: 30px;}
._mb10{margin-bottom: 10px;}
._mb15{margin-bottom: 15px;}
._mb20{margin-bottom: 20px;}
._mb30{margin-bottom: 30px;}
._txtr{text-align: right;}
._txtl{text-align: left;}
._txtc{text-align: center;}
._fs80{font-size: 80%;}
._fs90{font-size: 90%;}
._fs140{font-size: 140%;}
.wp-pagenavi {  display: flex;  flex-wrap: wrap;  justify-content: center;  grid-column-gap: 1%;}
.wp-pagenavi span,.wp-pagenavi a {  display: block;  line-height: 1;  padding: 0.5em;  border: solid 1px #ddd;  text-decoration: none;  border-radius: 3px;}
.wp-pagenavi span{  background-color: #fff;  color: #343434;}
.wp-pagenavi a { background-color: #00a0e9; color: #FFFFFF;}
._txtc{text-align: center;}
#inline-content {  height: 10em;  overflow: scroll;  border: solid 1px #343434;  padding: 0.5em;  margin: 1rem 0;  line-height: 170%;  border-radius: 6px;}
/*report*/ul#newsList{margin:0 0 15px;padding:0;}
ul#newsList li{color:#666;margin:0;padding:5px 0;margin-bottom:3px;border-bottom:1px dotted #ccc;line-height:120%;list-style-type:none;}
.catName{display:inline-block;padding:3px 8px;border:1px solid #ccc;border-radius:6px;font-size:80%;line-height:100%;margin:0 0.25em;}
ul#newsList li a{color:#36F;text-decoration:underline;}
@media screen and (min-width:980px){ul#newsList li a:hover;{color:#039;text-decoration:none;}}
.comment{display:block;padding:3px 0;overflow:hidden;}
.newMark{display:inline-block;border:1px solid #F00;padding:1px 4px;font-size:11px;line-height:100%;background:#F00;color:#fff;box-shadow:1px 1px 1px #999;border-radius:8px;font-style:italic;}

/*accordion*/
@media only screen and (max-width:640px){
	.toggle{display: none;}
	.Label {padding: 1em;display: block;color: #00a0e9;background: -moz-linear-gradient(top, #f7f7f7 0%, #f0f0f0 50%, #f5f5f5 100%);border: 1px solid #e4e4e4;font-weight: bold;}
	.__content {/*本文*/height: 0;padding:0 20px;overflow: hidden;}
	.toggle:checked + .Label + .__content {/*開閉時*/height: auto;padding:20px ;transition: all .3s;}
	.toggle:checked + .Label::before {transform: rotate(-45deg) !important;}
}
@media only screen and (min-width:641px){._SPblock{display: none;}}

@media only screen and (max-width:767px) {._sp-pd{padding: 0 2%;}}
@media only screen and (max-width:479px){
	._fb-box{width: 100%;height:auto;overflow-x: scroll;}
/*	._fb-box iframe{width: 100%;height: 100%;}*/
}