/*
Theme Name:20200917resposive2_side_install_pack
*/

@charset "utf-8";
@import url(option.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");

/* --------------------------------------
ブラウザスタイル初期化
--------------------------------------*/
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,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
b,
u,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
}
/* --------------------------------------
背景＆基本設定
--------------------------------------*/
html {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	overflow-y: scroll;
}
body {
	color: #303030;
	background-color: #FFF;
	line-height: 1;
	/* background-image: url("img/bg.png"); */
	/*font-family: "MS PGothic", Arial, "Hiragino Kaku Gothic ProN", "Osaka", sans-serif;*/
	-webkit-text-size-adjust: none;
	min-width: 980px;
	/* background-position:center top; */
	/* background-repeat:no-repeat; */
	/* background-repeat:repeat-x; */
	/* background-repeat:repeat-y; */
	/* font-family:'MS UI 明朝','MS UI mincho','MS明 朝','MS mincho'; */
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
*,
::before,
::after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
}

img {
	border: none;
}
a {
	color: #000;
	text-decoration: underline;
}
a:link {
	color: #000;
}
a:hover {
	color: #666666;
	text-decoration: none;
}
a:visited {
	color: #000;
	text-decoration: underline;
}
p {
	margin: 0;
	padding: 0;
	line-height: 2;
}
ul {
	list-style: none;
	margin-bottom: 20px;
}
ol {
	margin-left: 25px;
}
dt {
	width: 20%;
	clear: left;
	float: left;
	padding: 10px 0;
}
dd {
	padding: 10px 0 10px 20%;
	border-bottom: 1px solid rgb(239, 239, 239);
}
hr {
	overflow: hidden;
	height: 0;
	border: #bdbdbd dotted 1px;
	margin: 5px 0 15px 0;
}
/* --------------------------------------
webアイコン定義
--------------------------------------*/

.fa-home {
	font-size: 12px !important;
}
.fa-window-restore {
	margin-left: 3px;
}
/* --------------------------------------
レイアウト定義
--------------------------------------*/
/* 20201102追加 */
.tokutyo_ttl_parent {
	height: auto;
	min-height: 150px !important;
	display: table;
	width: 100%;
}

.tokutyo_ttl_child {
	display: table-cell;
	vertical-align: middle;
}

#privacy-area {
	width: 100%;
	max-width: 640px;
	height: 240px;
	overflow: scroll !important;
	overflow-x: hidden !important;
	margin: 0 0 20px;
	border: 1px solid #dddddd;
	padding: 8px;
}

/* 20201104追加 */
.table-scroll1 table,
.table-scroll2 table,
.table-scroll3 table {
	table-layout: fixed;
}

.table-scroll1 table th,
.table-scroll2 table th{
	background-color: unset;
	vertical-align: middle;
}

.table-scroll3 table th,
.table-scroll3 table td {
	vertical-align: middle;
}

.bg-blue1{
	background-color: #BEE0ED !important;
}

.bg-blue2{
	background-color: #A3C0CC !important;
}

.bg-yellow{
	background-color: #fffacd !important;
}

.bg-green{
	background-color: #DDEEAA !important;
}

.bg-red{
	background-color: #FFBBBB !important;
}

.table-scroll1 {
	overflow: auto !important;
	white-space: nowrap;
	width: 100%;
	height: auto;
	min-height: 970px !important;
}

.table-scroll2 {
	overflow: auto !important;
	white-space: nowrap;
	width: 100%;
	height: auto;
	min-height: 350px !important;
}

.table-scroll3 {
	overflow-x: auto !important;
	white-space: nowrap;
	width: 100%;
	height: auto;
	min-height: 350px !important;
}

/*スクロールバー*/
.table-scroll::-webkit-scrollbar{　　
 height: 5px;
}
.table-scroll::-webkit-scrollbar-track{
 background: #333;
}
.table-scroll::-webkit-scrollbar-thumb {
 background: #999;
}

/*tableの指定 */
.table-scroll table{
	border-collapse:collapse;
	border-spacing:0;
	border-top:#ccc solid 1px;
	border-left:#ccc solid 1px;
}
.table-scroll table th,
.table-scroll table td{
	padding:10px 15px;
	font-weight:normal;
	border-right:#ccc solid 1px;
	border-bottom:#ccc solid 1px;
}



.table-scroll table td{
	width: 100px;
}

#base {
/*background-image:url("img/bg_s.png");
background-repeat:repeat;
width:100%;*/
}
#bg {
}
.wrapper {
	padding: 0;
	z-index: 1;
	position: relative;
	padding-top: 0px;
}
.wrapper_head {
	margin: 0px auto;
	padding: 0;
	width: 100%;
	z-index: 1000;
	position: relative;
}
#simplegallery1 {
	clear: both;
	margin-bottom: 10px;
	z-index: 2;
}
.simplegallery {
	margin: 0 auto;
	width: 100%;
	margin-bottom: 30px;
}
.simplegallery img {
	width: 100%;
}
#ibox {
	height: 460px;
	width: 100%;
    background-image: url(img/main1.png);
    background-size: cover;
    background-position: center center;
}
.ibox_p {
	width: 1000px;
	margin: 0 auto;
	position: relative;
	height: 460px;
}
.ibox_p h1 {
	position: absolute;
	bottom: 50px;
	left: 0px;
	padding: 16px 30px;
	color: white;
	background-color: rgba(0, 0, 0, 0.71);
	font-size: 32px;
	font-style: italic;
}
/*キャッチを画像にする場合*/
.ibox_p img {
  position: absolute;
  bottom: 30px;
  left: 30px;
}
#imagebox {
	clear: both;
	z-index: 2;
	width: 100%;
	height: 500px;
	overflow: hidden;
}
#imagebox img {
	width: 100%;
}
#imagebox3 {
	clear: both;
	z-index: 2;
	text-align: center;
	height: 506px;
	background-color: #f6f7fa;
	padding-top: 40px;
	margin-bottom: 0px;
	background-position: center;
	background-image: url("img/main.png");
	position: relative;
	background-size: cover;
}
#base #bg #imagebox3 h1 {
	font-size: 54px;
	font-weight: bold;
	padding: 0;
	letter-spacing: 1px;
	margin-bottom: 20px;
	line-height: normal;
	color: #FFFFFF;
}
#base #bg #imagebox3 h1 .fs {
	font-size: 25px;
}
.imagebox_p {
	width: auto;
	height: auto;
	padding: 50px 100px;
	background-color: rgba(0, 0, 0, 0.42);
}
.imagebox_p p {
	line-height: normal;
	color: white;
	font-size: 20px;
}
.imagebox_p span.c_2 {
	font-size: 23px;
}
.imagebox_p span.c_3 {
	font-size: 30px;
	text-shadow: 1px 1px 0px white;
	/* font-weight: bold; */
	color: rgb(255, 80, 80);
}
#top_wrap{
	width: 1000px;
	margin: 0px auto;
}
.free{
	background: url(img/free.png) no-repeat center center;
		background-size: auto;
	background-size: cover;
	padding: 40px 0px 20px 0px;
	margin: 50px 0px 70px 0px;
}
#content #main .free p{
	color:#fff;
	text-align:center;
}
#content #main .free h2{
	background:none;
	border:none;
	text-align:center;
}
#content {
    background-color: white;
    padding: 20px 0;
    /* padding-bottom: 30px; */
    width: 1000px;
    margin: 0px auto;
    z-index: 10;
    position: relative;
}
.page-id-2 #content {
    background-color: white;
    padding: 20px 0;
    /* padding-bottom: 30px; */
    width: 100%;
    margin: 0px auto;
    z-index: 10;
    position: relative;
}
#content img {
}
#pan {
	font-size: 10px;
	font-family: 'Arial', 'Helvetica', sans-serif;
	margin: 0px auto 0px;
	width: 1000px;
}
#pan i{
	display:none;
}
#pan_wrap{
	background:#f4f6ed;
	padding: 13px 0px;
}
#pan a {
background:transparent;
color:#2e4882;
}
#content #main {
	line-height: 1.8;
	font-size: 16px;
	margin: 0 auto;
}
.sec {
	width: 1000px;
	margin: 0 auto;
	text-align: center;
}
#content .sec h2:first-child, #content .sec h3:first-child, #content .sec h4:first-child {
	margin-top: 0 !important;
}
/* --------------------------------------
各ページタイトル
--------------------------------------*/

#content #main .singletitle a, #content #main .title a {
	color: #ff6000;
	text-decoration: none;
}
/* --------------------------------------
マウスオーバー設定
--------------------------------------*/
#content #main a:hover img {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
#content #side a:hover img {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
#content #side li:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60);/* ie */
	-ms-filter: "alpha( opacity=60 )";
	background: #FFF;/* border-left:#ff6000 2px solid; */
}
a:hover img {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
/* --------------------------------------
ヘッダー定義
--------------------------------------*/
#header {
	width: 100%;
	/* background-image: url("img/bg_header.png"); */
	background-repeat: no-repeat;
	background-position: left top;
	z-index: 1000;
	margin: 0 auto;
	background-color: #fff;
	height: auto;
	margin: 0px auto;
	position:relative;
	/* box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-moz-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-webkit-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-o-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-ms-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	box-shadow: 2px 2px 2px rgb(227, 230, 234); */
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
/*ロゴ　スクロール時非表示*/
#header.fixed .header_l img {
	display: none;
}
#header .header_l img {
	margin-top: 30px;
}
header h1.title {
    padding: 0;
    text-align: inherit;
    display: inline-block;
}
.header_tel {
	float: none;
	line-height: 40px;
	background-color: #8fafdb;
	color: #fff;
	height: 40px;
}
.header_tel p {
	width: 1000px;
	margin: 0 auto;
	line-height: 40px;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 2px;
}
.header_l {
	width: 20%;
	float: left;
	display: none;
}
#pagetop {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
}
a#pagetop:hover {
	opacity: 0.6;
}

.header_l_pc {
	float: left;
	width:;/*ここにlogo.pngの横幅を指定*/
	padding:24px 0px 0px 0px;
}
.header_r_pc {
	float: right;
	padding:28px 0px 0px 0px;
	width:;/*ここにtel.pngの横幅を指定*/
}
.header_r_pc_left{
	float:left;
	margin:0 22px 0px 0px;
}
.header_r_pc_right{
	float:left;
}
.header-contact-btn,
.header-contact-btn:hover {
  text-decoration: none;
}
/* --------------------------------------
サイドタイトル
--------------------------------------*/

#content #side {
}

#content #side h3 {
      background: url("img/btn_title_side.png") 10px center no-repeat,url("img/bg_title_side.png") left top repeat-x;
  width: 210px;
    height: auto;
    padding: 7px 0 6px 12px;
    color: #ffffff;
    font-size: 14px;
    font-weight: normal;
    background-color: #000000;
    text-align: left;
    border: none;
    margin: 20px 0 0 0;
text-indent: 10px;
/*上部角丸の場合コメントアウト外す
border-top-right-radius: 4px;
border-top-left-radius: 4px;
*/
}

#content #side div:first-child h3 {
    margin: 0 0 0 0;
}

/* --------------------------------------
サイドメニューリスト
--------------------------------------*/

#content #side ul {
margin:0;
list-style:none;
}

#content #side li{
	background-image: url("img/btn_side.png");
	background-repeat: no-repeat;
	background-position: left 16px;
font-size:13px;
border-bottom:#c9c1b9 1px dotted;
text-align:left;
/* border-top:#FFF 1px solid; */
/* border-bottom:#e4e4e4 1px dotted;*/
vertical-align:middle;
}

#content #side li a{
display:block;
color:#080808;
text-decoration:none;
  padding: 10px 10px 10px 20px;
}

/* --------------------------------------
フッター定義
--------------------------------------*/
#footer {
	clear: both;
	text-align: center;
	font-size: 13px;
	padding-bottom: 0px;
	border-bottom: 0px solid #ff6000;
	/* background-image: url("img/footer.png"); */
	background-repeat: repeat-x;
	background-position: bottom;
	_margin-bottom: 0px;
*margin-bottom:0px;
}
/* フッター文字色定義 */
#footer, #footermenu ul a, #copyright a {
}
.f_telbtn {
	display: inline-block;
}
.f_telbtn a {
	background-color: #467de3;
	display: inline-block;
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	font-weight: bold;
	width: auto;
	margin: 5px 10px 5px 10px;
	color: #fff;
	text-decoration: none;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	padding: 0 30px;
}
footer svg path {
	fill: rgb(152, 152, 152);
}
#logo_footer {
	text-align: left;
	display: block;
	margin-bottom: 12px;
}
#logo_footer img {
	width: 210px;/*フッターのロゴ横幅*/
}
#logo_footer svg {
	margin-bottom: 12px;
	width: 80px;
	float: left;
}
p.cinfo {
	text-align: left;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 6px;
}
p.urls {
	text-align: left;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 18px;
}
a#logo_footer:hover {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}
.footer_com {
	height: auto;
	padding-bottom: 40px;
	padding-top: 40px;
	background-color: rgb(255, 255, 255);
	border-top:1px solid #2e4882;
}
.footer_com, .footer_com a:visited, .footer_com a:link {
	color: rgb(51, 51, 51);
}
.footer_btm {
	width: 1000px;
	margin: 0px auto;
}
.footer_btm_wrap {
	width: auto;
	float: none;/*margin-top: 26px;*/
}
.footer_tel {
	background-color: #303030;
	color: #fff;
	font-size: 15px;
	height: 74px;
	line-height: 74px;
}
.footer_tel p {
	width: 1000px;
	margin: 0 auto;
	text-align: left;
	position: relative;
	line-height: 74px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
}
#footermenu {
	margin: 0px 0px 20px 0;
	text-align: left;/* float: right; */
}
#footermenu ul {
	float: left;
	margin: 0 60px 0 0;
}
#footermenu ul li {
	font-size: 13px;
	width: auto;
	white-space: nowrap;
	line-height: 2;
	padding: 0 0 0 13px;
	background:url(img/f_navi_bg.png) no-repeat left 10px;
}
.f_left{
	float:left;
	width: 700px;
}
.f_right{
	float:right;
}
.f_tel{
	margin:0 0 12px 0px;
}
#footermenu ul li:first-child {
	padding: 0 0 0 13px;
}
#footermenu ul a {
	text-decoration: none;
	font-size: 13px;
	color:#333333;
}
#footermenu ul a:hover {
	opacity: 0.60;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
}
#copyright {
	padding: 0;
	font-size: 12px;
	text-align: center;
	color: #2e4882;
	margin: 20px 0px 0px 0px;
}
#copyright a {
	text-decoration: none;
	color: #2e4882;
}
/* --------------------------------------
コンテンツ共通パーツ
--------------------------------------*/
/* お客様編集時のためにここは変えない */
#content #main p {
	margin-bottom: 20px;
}
#content #main .singleline {
	overflow: hidden;
}
#submain {
	height: 140px;
	background: #fcfdf8; /* Old browsers */
	background: -moz-linear-gradient(top,  #fcfdf8 0%, #f9fbf4 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #fcfdf8 0%,#f9fbf4 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #fcfdf8 0%,#f9fbf4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfdf8', endColorstr='#f9fbf4',GradientType=0 ); /* IE6-9 */
	background-size: cover;
	position: relative;
	overflow: hidden;
}
#submain img {
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 0;
	top: -550px;
	/*
  -webkit-filter: brightness(0.7);
  -moz-filter: brightness(0.7);
  -o-filter: brightness(0.7);
  -ms-filter: brightness(0.7);
  filter: brightness(0.7);
*/
	opacity: 0.5;
}
#submain .h1wrap {
	width: 1000px;
	margin: 0 auto;
	text-align: left;
}
#submain h1 {
	color: #2e4882;
	text-align: center;
	padding: 10px 30px;
	font-size: 32px;
	font-weight: bold;
	margin-top: 45px;
}

.dotted {
	border-bottom: 1px dotted #ccc;
	margin-bottom: 15px;
}
/* --------------------------------------
ブログ系
--------------------------------------*/

.blog-eyecatch {
	float: left;
	margin: 0 20px 20px 0;
}

.blog-eyecatch img {
	width: 100px;
	height: 100px;
}

.prev-next {
    text-align: center;
    margin: 30px 0;
    overflow: visible !important;
    font-size: 16px;
}

.wp-pagenavi {
    overflow: visible !important;
}

.wp-pagenavi span.pages {
    font-size: 80%;
}

.wp-pagenavi a, .wp-pagenavi span {
    padding: 6px 8px;
    color: #585858;
    border-radius: 2px;
}

.wp-pagenavi span.current {
    background: #bdbdbd;
    color: black;
    border-color: #5f5f5f;
}

/*newarchivephp*/

.post .s-time,
.single .s-time {
	font-size: 12px;
	color: #666;
	padding-bottom: 10px;
}

blockquote {
	position: relative;
	padding: 20px 60px 10px 60px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-style: italic;
	background: #efefef;
	color: #555;
}

blockquote:before {
	display: inline-block;
	position: absolute;
	top: 28px;
	left: 15px;
	vertical-align: middle;
	content: "\f10d";
	font-family: FontAwesome;
	color: #cfcfcf;
	font-size: 30px;
	line-height: 1;
}

blockquote p {
	padding: 0;
	margin: 10px 0;
	line-height: 1.7;
}

blockquote cite {
	display: block;
	text-align: right;
	color: #888888;
	font-size: 0.9em;
}

/* archives.php 202007_add */
#content #main .post_box p.more {
	padding: 5px 20px 5px 40px;
	position: relative;
	text-decoration: none;
}

#content #main .post_box p.more:before {
	content: " \f054";
	font-family: FontAwesome;
	color: #ccc;
	position: absolute;
	left: 15px;
	top: 5px;
	transition:.3s;
}

#content #main .post_box a:hover p.more:before {
	transform: translateX(4px);
}

.post_wrap{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
	padding:0 0 20px;
}

.post_box {
    width: calc(50% - 10px);
    margin-bottom: 20px;
    position: relative;
    border: 1px solid #ccc;
}
.post_box a, .post_box a:visited, .post_box a:link {
    text-decoration: none;
}
.post_box a.post_link {
    display: block;
    width: 100%;
    height: 100%;
    transition-duration: .3s;
}
.post_box a.post_link:hover {
    transform: translateY(-4px);
}
.posttitle{margin-bottom: 5px;}
#content #main .post_wrap h3 {
    clear: both;
    height: auto;
    background: none;
    padding: 0;
    margin: 5px 10px 0;
	font-size: 18px;
    font-weight: bold;
	color: #333333;
    letter-spacing: 2px;
    line-height: normal;
    text-align: left;
	border-bottom:none;
}
#content #main .post_box p.date {
    display: block;
    padding: 10px;
    margin: 0;
}
#content #main p.date i {
    margin: 0 10px 0 0;
}
.post_box img {
    width: 100%;
    height: auto;
    /*max-height: 245px;*/
}
#content #main .post_box p {
    padding: 10px;
    line-height: 1.5;
}

/* single.php */
.article_img img{
	width: 100%; 
	height: 100%;
}
.cat_list li{display: inline-block;}
.cat_list li a{
	display: flex;
    align-items: center;
    height: 3.2em;
	color: #666;
    font-size:12px;
    font-weight: bold;
	text-decoration: none;
    padding: .6em 1em;
	margin:0 1em 0 0;
    border: 1px solid #666;
    border-radius: 2px;
    background-color: #fff;
    transition: color, background-color .1s ease-out;
}
.cat_list li a:hover{background:#666;color:#fff;}


/* --------------------------------------
見出し設定
--------------------------------------*/


/* h1共通部分 */
#content #main h1.singletitle, #content #main h1 {
	clear: both;
	height: auto;/*改行時崩れ防止のため必須。高さはpaddingで調整お願い致します。*/
	color: #054594;
	font-size: 38px;
	font-weight: bold;
	background-repeat: no-repeat;
	background-position: left bottom;
	letter-spacing: 2px;
	line-height: normal;
	text-align: center;
	position: relative;
	z-index: 10;
	padding: 112px 0 10px 0;
}
/* コンテンツ中のh1上margin */
#content #main h1.title {
	margin-top: 0px;
}
#content #main h2, h2 {
	clear: both;
	height: auto;/*改行時崩れ防止のため必須。高さはpaddingで調整お願い致します。*/
	color: #fff;
	background:#2e4882;
	border-top:5px solid #b2cf70;
	text-align:center;
	font-size: 28px;
	margin: 60px 0 25px 0;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: normal;
	padding: 8px 0px 6px 0px;
}
#content #main h2:first-child, h2:first-child {
	margin-top: 0;
}
#content #main h2 a {
	text-decoration: none;
}
.page-id-9 #content #main .three_box h3,.page-id-2 #content #main .three_box h3{
	font-size: 18px;
	margin: 15px 0px;
	padding: 0 0 5px 0;
}
#content #main h3, h3 {
	clear: both;
	height: auto;/*改行時崩れ防止のため必須。高さはpaddingで調整お願い致します。*/
	color: #333333;
	border-bottom: #2e4882 solid 1px;
	font-size: 24px;
	margin: 40px 0 25px 0;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: normal;
	text-align:center;
	padding: 8px 0px 12px 0px;
}
#content #main h4, h4 {
	clear: both;
	height: auto;/*改行時崩れ防止のため必須。高さはpaddingで調整お願い致します。*/
	color: #000000;
	font-size: 20px;
	margin: 30px 0 25px 0;
	border-bottom:1px solid #c9c9c9;
	font-weight: bold;
	letter-spacing: 2px;
	line-height: normal;
	text-align:center;
	padding: 8px 0px 12px 0px;
}
/*special css*/


/*end special css*/

/*新着情報*/
ul.newsblog {
	margin-bottom: 60px;
	letter-spacing: 1px;
}
ul.newsblog li {
	height: auto;
	border-bottom: 1px solid #E4E4E4;
	padding: 5px 0;
}
ul.newsblog .date {
	font-size: 13px;
	line-height: 1.3;
	color: #7C7C7C;
	display: block;
}
ul.newsblog .title {
	line-height: 1.3;
	font-size: 16px;
}
/*end 新着情報*/

/* --------------------------------------
パーツ
--------------------------------------*/
.kyouzai_box{
	width:49%;
	float:left;
}
.kyouzai_box:nth-child(2n){
	width:49%;
	float:right;
}
.eyecatch_box {
	border: 2px solid #2e4882;
	padding:20px 20px 20px 60px;
	margin-bottom: 30px;
}.page-id-17 img.alignnone.size-full.wp-image-168 {
    float: right;
}
.page-id-2 #content #main .eyecatch_box p,.page-id-17 #content #main .eyecatch_box p,.page-id-13 #content #main .eyecatch_box p,.page-id-11 #content #main .eyecatch_box p{
	margin-bottom:0px;
}
.page-id-2 .eyecatch_box .ttl_wrap,.page-id-17 .eyecatch_box .ttl_wrap,.page-id-13 .eyecatch_box .ttl_wrap,.page-id-11 .eyecatch_box .ttl_wrap{
	float:none;
	width: auto;
}
.page-id-2 .eyecatch_box .txt_wrap,.page-id-17 .eyecatch_box .txt_wrap,.page-id-13 .eyecatch_box .txt_wrap,.page-id-11 .eyecatch_box .txt_wrap{
	float: none;
	width: auto;
	padding: 1% 0px 0px 0px;
}
.page-id-2 .eyecatch_box .ttl_wrap,.page-id-17 .eyecatch_box .ttl_wrap,.page-id-13 .eyecatch_box .ttl_wrap,.page-id-11 .eyecatch_box .ttl_wrap {
    font-size: 20px;
}
.page-id-2 .eyecatch_box_left,.page-id-17 .eyecatch_box_left {
    width: 706px;
    float: left;
    margin: 0 30px 0 0;
}
.page-id-13 .eyecatch_box_left,.page-id-11 .eyecatch_box_left {
    width: 600px;
    float: left;
    margin: 0 30px 0 0;
}
ul.bunner li img{
	width:100%;
	height:auto;
}
ul.bunner li{
	width:48%;
	float:left;
}
ul.bunner li:nth-child(2n){
	width:48%;
	float:right;
}
.eyecatch_box .ttl_wrap {
	font-size: 26px;
	font-weight: bold;
	color:#000000;
	margin: 10px 0px 0px 0px;
}
.eyecatch_box_left{
	width: 586px;
	float: left;
	margin: 0 30px 0 0;
}
.eyecatch_box .ttl {
	font-size: 20px;
	font-weight: bold;
	color: #009751;
}
.eyecatch_box .ttl_wrap span{
	padding:0px 0px 4px 0px;
	border-bottom:3px solid #2e4882;
}
.eyecatch_box .txt_wrap {
}

.eyecatch_box .txt:not(:last-child) {
	margin-bottom: 5px;
}

.eyecatch_box img {
	-ms-flex-item-align: center;
	align-self: center;
}


.voice .ttl_wrap {
	background: #2e4882;
	border-bottom:5px solid #b2cf70;
}
.voice .ttl_wrap h3 {
	color:#fff!important;
	margin: 7px 0 1px 0!important;
}
.voice .sqred{
	margin: 0px 0px 30px 0px;
	padding:40px 40px 20px 40px;
}
.voice .sqred .clearfix{
	text-align: left;
	margin:0 0 20px 0;
}
.voice .sqred .box_wrap {
	margin:0;
}
.voice .sqred .two_box{
	width:65%;
	margin:0 5% 0 0;
	border:none;
	text-align:center;
}
.voice .sqred .two_box:nth-child(even){
	width:30%;
	margin:0;
}
.voice .sqred .two_box img{
	width: auto;
	height:200px;
	object-fit:cover;
}
.voice_name {
	width:200px;
	margin: 7px auto 0 auto ;
	background:#2e4882;
	color:#fff;
}
.voice_name p{
	padding:10px 0 4px 0;
	border-bottom: 3px solid #2e4882;
}
.voice_ttl p{
	margin:0 0 18px 0;
}
.voice_ttl span{
	padding:0 0 10px 0;
	font-weight:bold;
	font-size:20px;
	border-bottom: 3px solid #2e4882;
}
.teacher_box{
	background:#fff;
	border: 1px solid #f89e00;
}
.teacher_ttl{
	background:#f89e00;
	color:#fff;
	text-align:center;
	font-weight:bold;
	font-size:20px;
}
.teacher_ttl p{
	margin:10px 0 10px 0!important;
}
.teacher_txt{
	padding:20px 30px 0 30px;
}

.wpsm_panel-group h4, h4{
	border-bottom:none!important;
	padding:0!important;
}

.qa_banner{
	margin-bottom:30px;
}
.qa_banner .two_box{
	border:none;
}
.qa_banner p{
	margin-top:10px!important;
	margin-bottom:15px!important;
}
.qa_banner .qaBtn{
	background: #9bcb2b;
    width: 80%;
    height: 60px;
    line-height: 60px;
    margin: 0 auto;
    text-align: center;
	border-radius: 5px;
}
.qa_banner .qaBtn:hover{
	opacity:0.6;
}
.qa_banner .qaBtn a{
	display:block;
	text-decoration: none;
	color: #fff;
	font-weight:bold;
}


/* --------------------------------------
WordPress FCKEditor table
--------------------------------------*/

table {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 30px;
	background: white;
}

th {
	border: 1px solid #aaaaaa;
	padding: 10px;
	background: #def2fd;
	font-weight: bold;
	text-align:center;
}

td {
	border: 1px solid #aaaaaa;
	padding: 10px;
}

.table2 {
	border: 2px solid #bfbfbf;
}

.table2 th {
	vertical-align: middle;
}

.table2 th.groupbg {
	background: #cfdeae;
}

#content #main .table2 .tableh4 {
	clear: both;
   height: auto;
   color: #2e4882;
   border-bottom: #aaa solid 1px;
   font-weight: bold;
   line-height: normal;
   text-align: center;
	padding:0 0 12px 0;
	margin: 0 2% 12px;
}


/* --------------------------------------
テーブル
--------------------------------------*/

.tablestyle {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 5px;
}

.tdstyle {
	background-color: #F5F3F3;
	border: 1px solid #d2d2d2;
	padding: 8px 10px;
	width: 30%;
	text-align: center;
}

.tdstyle_none {
	background-color: #F5F3F3;
	border: 1px solid #d2d2d2;
	padding: 8px 10px;
	text-align: center;
}

/* 左寄せ */

.tdstyle2 {
	border-color: #d2d2d2;
	border-style: solid;
	border-width: 1px;
	padding: 8px 10px;
	text-align: left;
}

/* 右寄せ */

.tdstyle3 {
	border-color: #d2d2d2;
	border-style: solid;
	border-width: 1px;
	padding: 8px 10px;
	text-align: right;
}

/* 中央寄せ */

.tdstyle4 {
	border-color: #d2d2d2;
	border-style: solid;
	border-width: 1px;
	padding: 8px 10px;
	text-align: center;
}

/*special css*/
/*end special css*/

/* --------------------------------------
<div class="cd?"></div>での 飾り設定
--------------------------------------*/

.cd0 {
	background-color: white;
	padding: 60px 0 40px;
}
.cd1 {
	background-color: #F3F3F3;
	padding: 60px 0;
}
.cd2 {
	background-color: #6191db;
	padding: 60px 0 40px;
	color: #fff;
}
.cd3 {
	background-color: #8FAFDB;
	padding: 60px 0 40px;
	color: white !important;
}
.cd3 h2, .cd3 h3, .cd3 h4, .cd3 a {
	color: white !important;
}
.cd4 {
	background-color: #F4F9FF;
	padding: 40px 0 20px;
}
/* --------------------------------------
<div class="sq?"></div>での 飾り設定
--------------------------------------*/
/* 色:グレー */

.sq1 {
	border: 1px solid #f89e00;
	background-color: #ffffff;
	margin: 10px 0px 30px 0px;
	padding: 20px 20px 0 20px;
}

/* 囲み:グレー */

.sq2 {
	border: 1px solid #2e4882;
	background-color: #f9fdff;
	margin: 10px 0px 30px 0px;
	padding: 20px 20px 0 20px;
}

/* 囲み：赤 */

.sqred {
	border: 1px solid #c9a25e;
	background-color: #fefff3;
	margin: 10px 0px 30px 0px;
	padding: 20px 20px 0 20px;
}

/* 囲み：二重線 */

.nizyuu {
	border-width: 4px;
	border-style: double;
}

/* 囲み：点線 */

.tensen {
	border-width: 3px;
	border-style: dotted;
}

/* 囲み：角丸 */

.radious {
	border-radius: 5px;
}

/*special css*/
/*end special css*/

.plan_box{
	width:49%;
	float:left;
}
.plan_box:nth-child(2n){
	width:49%;
	float:right;
}
.catch_box {
	width:60%;
	float:left;
}
.catch_box:nth-child(2n){
	width:38%;
	float:right;
}
.circle {
	position: relative;
	height:240px;
}
.circle li {
	position: absolute;
	right:5px;
	top:0;
}
.circle li:nth-child(2n){
	position: absolute;
	left:0;
	top:70px;
}
.circle img {
	width: 180px;
	height: 180px;
	object-fit: cover;
	border-radius: 50%;
	border:1px solid #c9a25e;
	box-shadow: 5px 3px 0px 0 rgb(153, 191, 66);
}
/* --------------------------------------
便利ボタン
--------------------------------------*/
.page-id-2 .three_box .btn-round1 {
    border-radius: 6px;
	background:#2e4882;
    width: 95%;
    height: auto;
    margin-bottom: 20px;
    color: white !important;
    text-decoration: none !important;
    display: inline-block;
    padding: 10px 40px 10px 40px;
    position: relative;
	font-size:90%;
	text-align: center;
}

.btn-round1 {
    border-radius: 6px;
	background:#2e4882;
    width: auto;
    height: auto;
    margin-bottom: 20px;
    color: white !important;
    text-decoration: none !important;
    display: inline-block;
    padding: 10px 40px 10px 40px;
    position: relative;
	text-align: justify;
}

.btn-round1:after {
    content: '';
    position: absolute;
    right: 18px;
    top: 50%;
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid white;
    border-right: 2px solid white;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}

.btn-round1:hover {
	opacity: 0.8;
}

.btn-round2 {
    border-radius: 6px;
	background:#c9a25e;
    color: white !important;
    width: auto;
    height: auto;
    margin-bottom: 20px;
    position: relative;
    text-decoration: none !important;
    display: inline-block;
    padding: 10px 40px 10px 40px;
	text-align: justify;
}

.btn-round2:after {
    content: '';
    position: absolute;
    right: 18px;
    top: 50%;
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid white;
    border-right: 2px solid white;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
}

.btn-round2:hover {
	background:#acc96a;
}

.btn-list1 {
    border-radius: 4px;
    width: auto;
    height: auto;
	border:1px solid #2e4882;
    background: #fff;
    margin-bottom: 20px;
    text-decoration: none !important;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    display: inline-block;
    padding: 10px 40px 10px 40px;
    position: relative;
    text-align: justify;
}

.btn-list1:before {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #0d88cc;
    border-right: 2px solid #0d88cc;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
    position: absolute;
    top: 50%;
    right: 16px;
}

.btn-list1:hover {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.btn-list2 {
    border-radius: 4px;
    width: auto;
    height: auto;
    background: -webkit-gradient(linear, left top, left bottom, from(#fffbf2), to(#f6efd5));
    background: linear-gradient(180deg, #fffbf2, #f6efd5);
    -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2), -1px -1px 1px rgba(0, 0, 0, 0.2);
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2), -1px -1px 1px rgba(0, 0, 0, 0.2);
    margin-bottom: 20px;
    text-decoration: none !important;
    display: inline-block;
    padding: 10px 40px 10px 40px;
    position: relative;
    text-align: justify;
}

.btn-list2:after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #b58d5a;
    border-right: 2px solid #b58d5a;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
    position: absolute;
    top: 50%;
    right: 18px;
}

.btn-list2:hover {
	-webkit-box-shadow: 1px 1px rgba(0, 0, 0, 0.05), -1px -1px rgba(0, 0, 0, 0.05);
	box-shadow: 1px 1px rgba(0, 0, 0, 0.05), -1px -1px rgba(0, 0, 0, 0.05);
}


.btn-list-arc {
width: auto;
    height: auto;
    background: #fff;
    margin-bottom: 20px;
    text-decoration: none !important;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    display: inline-block;
    padding: 7px 40px 7px 40px;
    position: relative;
    text-align: justify;
    font-size: 13px;
    background-color: #f1f1f1;
    margin-top: 10px;
    border-radius: 4px;
}

.btn-list-arc:before {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #bdbdbd;
    border-right: 2px solid #bdbdbd;
    -webkit-transform: translate(0, -50%) rotate(45deg);
    transform: translate(0, -50%) rotate(45deg);
    position: absolute;
    top: 50%;
    right: 16px;
}

.btn-list-arc:hover {
opacity:0.6;
}
/*special css*/

/*end special css*/


/* --------------------------------------
テキスト飾り設定
--------------------------------------*/

.hosoku {
	color: #5a5a5a;
	font-size: 90%;
	line-height: 1.7;
}
.datetxt {
	color:gray;
	font-size:90%;
	margin-right:10px;
}
.fs2 {
	font-size: 114.2857%;
}
.fs3 {
	font-size: 130%;
}
.fs4 {
	font-size: 160%;
	line-height: 1.5;
}
.fs5 {
	font-size: 200%;
	line-height: 1.5;
}
.mt0 {
	margin-top: 0px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt70 {
	margin-top: 70px !important;
}
.mt80 {
	margin-top: 80px !important;
}
.mb0 {
	margin-bottom: 0px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb70 {
	margin-bottom: 70px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml15 {
	margin-left: 15px !important;
}
.ml20 {
	margin-left: 20px !important;
}
.ml25 {
	margin-left: 25px !important;
}
.ml30 {
	margin-left: 30px !important;
	;
}
.pt10 {
	padding-top: 10px !important;
}
.yellow {
	background-color: #FFFF85;
	padding: 4px 5px 2px 5px;
	font-weight: normal;
}
/*テキスト装飾*/
.tk1 {
	color: #eb5300;
}
.tk2 {
  font-weight: bold;
  background: linear-gradient(transparent 60%, rgba(215, 241, 255, 1) 40%);
  text-shadow: 0px 2px 0px rgb(255, 255, 255);
  padding-bottom: 3px;
  color: #000000;
}
.tk3 {
  font-weight: bold;
  background: linear-gradient(transparent 70%, #dcff8c 20%);
  text-shadow: 0px 2px 0px rgb(255, 255, 255);
  padding-bottom: 3px;
  color: #000000;
}
.tk4 {
	color: #ffc35a!important;
	text-shadow: 0px 0px 4px rgb(0, 50, 80);
}
/*電話番号装飾*/
.telarea {
  border: 1px solid #CECECE;
  margin: 0 0 10px 0;
  padding: 20px 20px 0 20px;
  display: inline-block;
}
.teltext {
  font-size: 26px;
}
.freedial {
  text-align: left;
}
.uline {
	color: #F00;
	text-decoration: underline;
	font-style: italic;
}
.round {
	border-radius: 100px;
}
.blue {
	color: #4485e9;
}
/*電話番号装飾*/

.telarea {
	border: 1px solid #CECECE;
	margin: 0 0 10px 0;
	padding: 20px 20px 0 20px;
	display: inline-block;
}

.teltext {
	font-size: 26px;
}

.freedial {
	text-align: left;
}

/*チェックボックスの付くリスト*/

ul.arrow li {
	background-image: url(img/arrow.png);
	padding-left: 21px;
	background-repeat: no-repeat;
	background-position: left 2px;
	margin: 2px 0;
	min-height: 15px;
}

ul.arrow2 li {
	background-image: url(img/arrow2.png);
	padding-left: 21px;
	background-repeat: no-repeat;
	background-position: left 2px;
	margin: 2px 0;
	min-height: 13px;
}

.check_list-border li {
	position: relative;
}

.check_list-border li:before {
	content: '';
	border: 1px solid #999;
	border-radius: 0px;
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
}

.check_list-border li:after {
	position: absolute;
	right: calc(100% - 12px);
	top: 5px;
	content: '';
	width: 9px;
	height: 14px;
	display: block;
	border-top: 3px solid #f89e00;
	border-left: 3px solid #f89e00;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	left: 6px;
}

.check_list li {
	position: relative;
	padding-left: 22px;
}

.check_list li:after {
	position: absolute;
	right: calc(100% - 12px);
	top: 5px;
	content: '';
	width: 9px;
	height: 14px;
	display: block;
	border-top: 3px solid #f89e00;
	border-left: 3px solid #f89e00;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}

/*special css*/

/*end special css*/



/* --------------------------------------
Q&A
--------------------------------------*/
.q {
	background-color: #F3F3F3;
	color: #ff6000;
	padding: 4px;
	font-weight: bold;
}
.a {
	padding: 7px 4px;
	border-bottom: #CCC 1px dotted;
	margin: 5px 0 20px 1em;
	text-indent: -1em;
}
/* --------------------------------------
WordPress 画像貼付け用
--------------------------------------*/
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.alignright {
	float: right;
	margin: 0 0 20px 20px;
	display: inline;
}
.alignleft {
	float: left;
	margin: 0 20px 20px 0;
	display: inline;
}
/* --------------------------------------
youtube・googlemap 埋め込み用
--------------------------------------*/
.yt {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.yt iframe,
.yt object,
.yt embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* --------------------------------------
汎用クラス定義
--------------------------------------*/
.clearfix:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;/*\*//*/
  height:  auto;
  overflow: hidden;
  /**/
}
.fixmargin {
	margin-top: -23px;
}
/*-------------------------------------
グローバルナビ定義（gnavi・グロナビ）
------------------------------------- */

#head_pull {
	display: none;
	position: fixed;
	top: 0;
	z-index: 1000;
	width: 1000px;
	margin: 0 auto;
	background-color: white;
}
#head_pull a {
}
#header.fixed {
	position: relative;
	width: 100%;
	background-color: rgba(255, 255, 255, 1);
	top: 0;
	height: auto;
}

nav {
	width: 1000px;
	margin: 0 auto;
}
#header.fixed .menu_navi {
	float: right;
}
#header.fixed .menu_logo {
  float: left;
  width: auto;
}


/*横ならびメニュー部分*/
#menu {
	margin: 10px 0px;
	padding: 0;
	list-style-type: none;
	text-align: center;
}
#menu li {
	float: left;
	position: relative;
}
#menu li a {
	display: block;
	height: 50px;/*ナビの高さ*/
	text-decoration: none;
	background-repeat: no-repeat;
	background-position: 0 0;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.3;
}
#menu li a:hover {
    background-position: 0 0px;/*ナビの高さ*/
    opacity:0.8;
}
#menu li a#head_navi1 {
	background-image: url(img/gloval_navi1.png);/*ナビの背景画像1*/
	width: 50px;/*ナビの幅を調整*/
}
#menu li a#head_navi2 {
	background-image: url(img/gloval_navi2.png); /*ナビの背景画像2*/
	width: 120px;/*ナビの幅を調整*/
}
#menu li a#head_navi3 {
	background-image: url(img/gloval_navi3.png); /*ナビの背景画像3*/
	width: 140px;/*ナビの幅を調整*/
}
#menu li a#head_navi4 {
	background-image: url(img/gloval_navi4.png); /*ナビの背景画像4*/
	width: 110px;/*ナビの幅を調整*/
}
#menu li a#head_navi5 {
	background-image: url(img/gloval_navi5.png); /*ナビの背景画像5*/
	width: 170px;/*ナビの幅を調整*/
}
#menu li a#head_navi6 {
	background-image: url(img/gloval_navi5.png); /*ナビの背景画像6*/
	width: 110px;/*ナビの幅を調整*/
}
#menu li a#head_navi7 {
	background-image: url(img/gloval_navi7.png); /*ナビの背景画像7*/
	width: 110px;/*ナビの幅を調整*/
}
#menu li a#head_navi8 {
	background-image: url(img/gloval_navi7.png); /*ナビの背景画像7*/
	width: 100px;/*ナビの幅を調整*/
}
#menu li a#head_navi9 {
	background-image: url(img/gloval_navi7.png); /*ナビの背景画像7*/
	width: 180px;/*ナビの幅を調整*/
}
/*仕切り線*/
#menu li a::after {
    content: "";
	width: 1px;
    height: 20px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: #aaa;
}
#menu li:first-child a::before {
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0;
}
/*仕切り線*/

#m_logo {
}
#m_logo svg {
	width: 66px;
	height: 31px;
	margin-top: 10px;
	margin-left: 10px;
}
 @-webkit-keyframes rotateplane {
 0% {
-webkit-transform:perspective(200px) rotateX(90deg)
}
 100% {
-webkit-transform:perspective(200px) rotateX(0deg)
}
}
/*--ここまで--*/

.headnav {
	position: relative;
	height: auto;
}
#header.fixed .headnav {
	position: relative;
	height: auto;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#overlay {
	z-index: 1000 !important;
}
#lightbox {
	z-index: 9999 !important;
}
/*++++++++++++++++ nav button set ++++++++++++++++*/
.button a {
	float: left;
	border-right: 1px solid #7A0114;   /* 上部メニューボタンの区切り線の色が設定できます */
	background: #C58D9A;   /* 上部メニューボタンの背景色が設定できます */
	height: 30px;
	margin: 0;
	padding: 7px 15px 7px 15px;
	text-decoration: none;
	font-family: Verdana, Arial, sans-serif;
	font-size: x-small;
	font-weight: bold;
	color: #fff; /* 上部メニューボタンの文字色が設定できます */
	display : block;
}
html>body .button a {
	height: 16px;
	font-size: small;
}
.button a.active, .button a:hover {
	background: #fff;   /* 上部メニューボタンの背景色（マウスオンの状態）が設定できます */
	color: #C58D9A;   /* 上部メニューボタンの文字色（マウスオンの状態）が設定できます */
}
.button a.selected {
	background: #fff;   /* 上部メニューボタンの背景色（セレクト時）が設定できます */
	color: #C58D9A;   /* 上部メニューボタンの文字色（セレクト時）が設定できます */
}
.button a:active.selected, .button a:hover.selected {
	background: #fff;   /* 上部メニューボタンの背景色（セレクト時のマウスオンの状態）が設定できます */
	color: #C58D9A;   /* 上部メニューボタンの文字色（セレクト時のマウスオンの状態）が設定できます */
}
.button a.nolink {
	background: #C58D9A;   /* 上部メニューボタンの背景色（リンクなし）が設定できます */
	color: #ccc;   /* 上部メニューボタンの文字色（リンクなし）が設定できます */
}
/* --------------------------------------
コンテンツ部分のdiv&pにおけるimg飛び出しの解除
--------------------------------------*/

#main div {
	overflow: hidden;
}

/* --------------------------------------
RSS用
--------------------------------------*/
#feed_new {
	background-color: #F5F3F3;
	font-size: 11px;
	color: #ff6000;
	padding: 5px 10px 0 10px;
	_padding: 5px 10px 0 10px;
	margin: 0px;
	line-height: 130%;
}
#feed_new li {
	border-bottom: #CCCCCC dotted 1px;
	list-style: none;
	padding-bottom: 5px;
}
#feed_new a {
	font-size: 13px;
}
/* --------------------------------------
コンテンツ部分のdiv&pにおけるimg飛び出しの解除
--------------------------------------*/
/* -------
div
----------*/
#main div:after {
	content: ".";/* 新しい要素を作る */
	display: block;/* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
#main div {
	min-height: 1px;
}
* html #main div {
	height: 1px;
}


/* -------
fontcontrol
----------*/
#control {
	position: absolute;
	top: 5px;
	right: 5px;
}
#control a {
	color: white;
	text-decoration: none;
}
#control a:hover {
	text-decoration: underline;
}
span#intro {
	font-size: 13px;
	margin-right: 5px;
}
span#f-big {
	background-color: black;
	padding: 2px 4px;
	margin-right: 2px;
}
span#f-medium {
	background-color: black;
	padding: 2px 4px;
	margin-right: 2px;
}
span#f-small {
	background-color: black;
	padding: 2px 4px;
}
/* --------------------------------------
中央寄せ・右寄せ
--------------------------------------*/
.ac {
	text-align: center;
}
.ar {
	text-align: right;
}
.al {
	text-align: left;
}
/* --------------------------------------
リスト（FontAwesome)
--------------------------------------*/
ul {
	text-align: left;
}
ul.li_1 {
	margin-bottom: 20px;
}
ul.li_1 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_1 li:before {
	content: " \f14a";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_2 {
	margin-bottom: 20px;
}
ul.li_2 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_2 li:before {
	color: #008600;
	content: " \f046";
	font-family: FontAwesome;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_3 {
	margin-bottom: 20px;
}
ul.li_3 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_3 li:before {
	content: " \f058";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_4 {
	margin-bottom: 20px;
}
ul.li_4 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_4 li:before {
	content: " \f05d";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_5 {
	margin-bottom: 20px;
}
ul.li_5 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_5 li:before {
	content: " \f0a9 ";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_6 {
	margin-bottom: 20px;
}
ul.li_6 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_6 li:before {
	content: " \f18e";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_7 {
	margin-bottom: 20px;
}
ul.li_7 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_7 li:before {
	content: " \f138";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_8 {
	margin-bottom: 20px;
}
ul.li_8 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_8 li:before {
	content: " \f152";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_9 {
	margin-bottom: 20px;
}
ul.li_9 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_9 li:before {
	content: " \f0da";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_10 {
	margin-bottom: 20px;
}
ul.li_10 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_10 li:before {
	content: " \f069";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_11 {
	margin-bottom: 20px;
}
ul.li_11 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_11 li:before {
	content: " \f111";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_12 {
	margin-bottom: 20px;
}
ul.li_12 li {
	position: relative;
	margin-bottom: 5px;
	padding-left: 1.5em;
}
ul.li_12 li:before {
	content: " \f192";
	font-family: FontAwesome;
	color: #008600;
	position: absolute;
	font-weight: normal;
	left: 0;
}
ul.li_maru li {
	margin-bottom: 10px;
	text-indent: -1.3em;
	margin-left: 1.3em;
	font-weight: bold;
}
ul.li_maru li:before {
	content: "● ";
	color: #5077c2;
}
ul.li_kome li {
	margin-bottom: 10px;
	text-indent: -1.3em;
	margin-left: 1.3em;
}
ul.li_kome li:before {
	content: "※ ";
	color: #5077c2;
}
ul.b_gray li:before {
	color: #D9D8D8;
}
ul.b_pink li:before {
	color: #F79698;
}
ul.b_green li:before {
	color: #CAFDB1;
}
ul.b_skyblue li:before {
	color: #A0DFF3;
}
ul.b_blue li:before {
	color: #608AEB;
}
ul.b_gold li:before {
	color: #D9B087;
}
ul.b_orange li:before {
	color: #FB8230;
}
ul.b_yellow li:before {
	color: #F8EE6D;
}
ul.b_azuki li:before {
	color: #731F21;
}
ul.b_purple li:before {
	color: #AA79E7;
}
/* --------------------------------------
レイアウトbox(2列・3列・4列)
--------------------------------------*/

.box_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

.two_box {
	width: calc((100% - 30px) / 2);
	margin: 0 30px 15px 0;
	border: 1px solid #959595;
	overflow: hidden;
}

.two_box:nth-child(even) {
	margin: 0 0 15px 0;
}

.two_box .ttl_wrap {
	background: #2e4882;
	border-bottom:5px solid #b2cf70;
}

.two_box .ttl {
	padding: 2% 3% 1.5% 3%;
	font-weight: bold;
	font-size: 20px;
	color:#fff;
	margin-bottom: 0 !important;
}

.two_box .txt {
	padding: 3%;
}

.two_box .more {
	float: right;
	text-decoration: none;
	margin: 0 3% 3% 0;
	position: relative;
}

.two_box .more:before {
	position: absolute;
	top: 50%;
	right: calc(100% + 10px);
	content: '';
	width: 8px;
	height: 8px;
	border-top: 2px solid #2e4882;
	border-right: 2px solid #2e4882;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.two_box .more:hover:before {
	-webkit-transform: translate(5px, -50%) rotate(405deg);
	transform: translate(5px, -50%) rotate(405deg);
}

.three_box {
	width: calc((100% - 40px) / 3);
	margin-bottom: 20px;
	border: 1px solid #959595;
	background: white;
	overflow: hidden;
}

.three_box:nth-child(3n-1) {
	margin: 0 20px 20px;
}

.three_box .ttl_wrap {
	background: #c9a25e;
}
.page-id-11 .three_box .ttl_wrap {
    background: #c9a25e;
    min-height: 83px !important;
    width: 100%;
    display: table;
}
.page-id-11 .three_box .ttl_wrap p.ttl {
    display: table-cell;
    vertical-align: middle;
}
.three_box .ttl {
	padding: 3%;
	line-height: 1.6;
	font-weight: bold;
	font-size: 20px;
	color:#fff;
	margin-bottom: 0 !important;
}

.three_box .txt {
	padding: 3%;
}

.three_box .more {
	float: right;
	text-decoration: none;
	margin: 0 3% 3% 0;
	position: relative;
}

.three_box .more:before {
	position: absolute;
	top: 50%;
	right: calc(100% + 10px);
	content: '';
	width: 8px;
	height: 8px;
	border-top: 2px solid #2e4882;
	border-right: 2px solid #2e4882;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.three_box .more:hover:before {
	-webkit-transform: translate(5px, -50%) rotate(45deg);
	transform: translate(5px, -50%) rotate(45deg);
}

.four_box {
	width: calc((100% - 30px) / 4);
	margin: 0 10px 10px 0;
	border-top: 3px solid #2e4882;
	border-left: 1px solid #959595;
	border-right: 1px solid #959595;
	border-bottom: 1px solid #959595;
	background: white;
	overflow: hidden;
}

.four_box:nth-child(4n) {
	margin: 0 0px 10px 0;
}

.four_box .ttl_wrap {
}

.four_box .ttl {
	padding: 5% 3% 0 3%;
	font-weight: bold;
	font-size: 18px;
	color: #000000;
	margin-bottom: 0 !important;
}

.four_box .txt {
	padding: 3% 6%;
}

.four_box .more {
	float: right;
	text-decoration: none;
	margin: 0 3% 3% 0;
	position: relative;
}

.four_box .more:before {
	position: absolute;
	top: 50%;
	right: calc(100% + 10px);
	content: '';
	width: 8px;
	height: 8px;
	border-top: 2px solid #2e4882;
	border-right: 2px solid #2e4882;
	-webkit-transform: translate(0, -50%) rotate(45deg);
	transform: translate(0, -50%) rotate(45deg);
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.four_box .more:hover:before {
	-webkit-transform: translate(5px, -50%) rotate(45deg);
	transform: translate(5px, -50%) rotate(45deg);
}
/*clearfixと組み合わせて使用*/
.six_four_r {
  float: right;
  width: 580px;
}
.six_four_l {
  float: left;
  width: 400px;
}
.seven_three_r {
  float: right;
  width: 680px;
}
.seven_three_l {
  float: left;
  width: 300px;
}

/* 20201102追加 */

/* TOP特徴部分調整 
.tokutyo_ttl {
	min-height: 88px !important;
	padding-top: 42px;
}
*/

/* --------------------------------------
電話番号エリア
--------------------------------------*/
.responsedevise {
	text-align: center;
	margin: 30px auto 0;
}
/* --------------------------------------
リンクボタン
--------------------------------------*/

.link_green {
	border: 1px solid #A8BF75;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #cee6b3);
	background-image: -moz-linear-gradient(top, #ffffff, #cee6b3);
	background-image: -ms-linear-gradient(top, #ffffff, #cee6b3);
	background-image: -o-linear-gradient(top, #ffffff, #cee6b3);
	background-image: linear-gradient(to bottom, #ffffff, #cee6b3);
	display: inline-block;
	margin: 10px 0;
}
.link_green a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #496F31;
	padding: 0px 15px;
}
.link_green a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_pink {
	border: 1px solid #F4B1B2;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #FFF0F1);
	background-image: -moz-linear-gradient(top, #ffffff, #FFF0F1);
	background-image: -ms-linear-gradient(top, #ffffff, #FFF0F1);
	background-image: -o-linear-gradient(top, #ffffff, #FFF0F1);
	background-image: linear-gradient(to bottom, #ffffff, #FFF0F1);
	display: inline-block;
	margin: 10px 0;
}
.link_pink a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #E37677;
	padding: 0px 15px;
}
.link_pink a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_skyblue {
	border: 1px solid #9EDDF8;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #EDFBFF);
	background-image: -moz-linear-gradient(top, #ffffff, #EDFBFF);
	background-image: -ms-linear-gradient(top, #ffffff, #EDFBFF);
	background-image: -o-linear-gradient(top, #ffffff, #EDFBFF);
	background-image: linear-gradient(to bottom, #ffffff, #EDFBFF);
	display: inline-block;
	margin: 10px 0;
}
.link_skyblue a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #4593D4;
	padding: 0px 15px;
}
.link_blue {
	border: 1px solid #9EB0CF;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #E4F2FD);
	background-image: -moz-linear-gradient(top, #ffffff, #E4F2FD);
	background-image: -ms-linear-gradient(top, #ffffff, #E4F2FD);
	background-image: -o-linear-gradient(top, #ffffff, #E4F2FD);
	background-image: linear-gradient(to bottom, #ffffff, #E4F2FD);
	display: inline-block;
	margin: 10px 0;
}
.link_blue a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #22418B;
	padding: 0px 15px;
}
.link_skyblue a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_gold {
	border: 1px solid #C0AA8D;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #FCEDD9);
	background-image: -moz-linear-gradient(top, #ffffff, #FCEDD9);
	background-image: -ms-linear-gradient(top, #ffffff, #FCEDD9);
	background-image: -o-linear-gradient(top, #ffffff, #FCEDD9);
	background-image: linear-gradient(to bottom, #ffffff, #FCEDD9);
	display: inline-block;
	margin: 10px 0;
}
.link_gold a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #886A50;
	padding: 0px 15px;
}
.link_gold a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_orange {
	border: 1px solid #EF963E;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #F7BB6F, #FCA26D);
	background-image: -moz-linear-gradient(top, #F7BB6F, #FCA26D);
	background-image: -ms-linear-gradient(top, #F7BB6F, #FCA26D);
	background-image: -o-linear-gradient(top, #F7BB6F, #FCA26D);
	background-image: linear-gradient(to bottom, #F7BB6F, #FCA26D);
	display: inline-block;
	margin: 10px 0;
}
.link_orange a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #fff;
	padding: 0px 15px;
}
.link_orange a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_yellow {
	border: 1px solid #E3DEA2;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #F8FDC3);
	background-image: -moz-linear-gradient(top, #ffffff, #F8FDC3);
	background-image: -ms-linear-gradient(top, #ffffff, #F8FDC3);
	background-image: -o-linear-gradient(top, #ffffff, #F8FDC3);
	background-image: linear-gradient(to bottom, #ffffff, #F8FDC3);
	display: inline-block;
	margin: 10px 0;
}
.link_yellow a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #5F4E39;
	padding: 0px 15px;
}
.link_yellow a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_azuki {
	border: 1px solid #BC8F90;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #AF5C5D, #7C2829);
	background-image: -moz-linear-gradient(top, #AF5C5D, #7C2829);
	background-image: -ms-linear-gradient(top, #AF5C5D, #7C2829);
	background-image: -o-linear-gradient(top, #AF5C5D, #7C2829);
	background-image: linear-gradient(to bottom, #AF5C5D, #7C2829);
	display: inline-block;
	margin: 10px 0;
}
.link_azuki a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #fff;
	padding: 0px 15px;
}
.link_azuki a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_purple {
	border: 1px solid #EECCF3;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #ffffff, #F7E5FD);
	background-image: -moz-linear-gradient(top, #ffffff, #F7E5FD);
	background-image: -ms-linear-gradient(top, #ffffff, #F7E5FD);
	background-image: -o-linear-gradient(top, #ffffff, #F7E5FD);
	background-image: linear-gradient(to bottom, #ffffff, #F7E5FD);
	display: inline-block;
	margin: 10px 0;
}
.link_purple a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #B251C3;
	padding: 0px 15px;
}
.link_purple a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}
.link_red {
	border: 1px solid #F96062;
	background: #ffffff;
	background-image: -webkit-linear-gradient(top, #F47B7D, #D85658);
	background-image: -moz-linear-gradient(top, #F47B7D, #D85658);
	background-image: -ms-linear-gradient(top, #F47B7D, #D85658);
	background-image: -o-linear-gradient(top, #F47B7D, #D85658);
	background-image: linear-gradient(to bottom, #F47B7D, #D85658);
	display: inline-block;
	margin: 10px 0;
}
.link_red a {
	text-decoration: none;
	display: block;
	font-size: 110%;
	color: #ffffff;
	padding: 0px 15px;
}
.link_red a:hover {
	opacity: 0.60; /* opera  firefox safari */
	filter: alpha(opacity=60); /* ie */
	-ms-filter: "alpha( opacity=60 )";
}


/* --------------------------------------
フォームボタン
--------------------------------------*/
div.sbtn_1 input[type="submit"] {
	isplay: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 250px;
    height: 50px;
    border-radius: 25px;
	background: #409FDB;
	font-weight: bold;
    letter-spacing: .075em;
    box-shadow: 0 1px 7px rgba(0,0,0,0.2);
    transition: background-color .1s ease-out, box-shadow .1s ease-out;
    margin: auto;
    font-weight: bold;
    font-size: 1em;
	font-family:'Noto Sans JP', sans-serif;
	text-indent: 1em;
}
div.sbtn_2 input[type="submit"] {
	display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 250px;
    height: 50px;
    border-radius: 25px;
	background: #ec802e;
    font-weight: bold;
    letter-spacing: .075em;
    box-shadow: 0 1px 7px rgba(0,0,0,0.2);
    transition: background-color .1s ease-out, box-shadow .1s ease-out;
    margin: auto;
    font-weight: bold;
    font-size: 1em;
	font-family:'Noto Sans JP', sans-serif;
	text-indent: 1em;
}
div.sbtn_3 input[type="submit"] {
	display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 250px;
    height: 50px;
    border-radius: 25px;
	background: #ee6d6d;
	font-weight: bold;
    letter-spacing: .075em;
    box-shadow: 0 1px 7px rgba(0,0,0,0.2);
    transition: background-color .1s ease-out, box-shadow .1s ease-out;
    margin: auto;
    font-weight: bold;
    font-size: 1em;
	font-family:'Noto Sans JP', sans-serif;
	text-indent: 1em;
}
div.sbtn_4 input[type="submit"] {
	cdisplay: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 250px;
    height: 50px;
    border-radius: 25px;
	background: #b38746;
	font-weight: bold;
    letter-spacing: .075em;
    box-shadow: 0 1px 7px rgba(0,0,0,0.2);
    transition: background-color .1s ease-out, box-shadow .1s ease-out;
    margin: auto;
    font-weight: bold;
    font-size: 1em;
	font-family:'Noto Sans JP', sans-serif;
	text-indent: 1em;
}
div.sbtn_5 input[type="submit"] {
	display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 250px;
    height: 50px;
    border-radius: 25px;
	background: #bbb6af;
	font-weight: bold;
    letter-spacing: .075em;
    box-shadow: 0 1px 7px rgba(0,0,0,0.2);
    transition: background-color .1s ease-out, box-shadow .1s ease-out;
    margin: auto;
    font-weight: bold;
    font-size: 1em;
	font-family:'Noto Sans JP', sans-serif;
	text-indent: 1em;
}
div.maru input[type="submit"] {
	-webkit-border-radius: 30;
	-moz-border-radius: 30;
	border-radius: 30px;
	padding: 8px 20px 8px 20px;
	text-shadow: 1px 1px 3px #666666;
	box-shadow: 0px 0px 6px 3px #e6e6e6;
	-moz-box-shadow: 0px 0px 6px 3px #e6e6e6;
	-webkit-box-shadow: 0px 0px 6px 3px #e6e6e6;
	width: auto;
}
div.sbtn_1 input:hover {
	background: #96cff5;
}
div.sbtn_2 input:hover {
	background: #fac871;
}
div.sbtn_3 input:hover {
	background: #f0a3a3;
}
div.sbtn_4 input:hover {
	background: #ebd3b0;
}
div.sbtn_5 input:hover {
	background: #f0ece4;
}

/* mail_icon表示用 */
.sbtn_1.action,
.sbtn_2.action,
.sbtn_3.action,
.sbtn_4.action,
.sbtn_5.action{
	position:relative;
	width: 270px;
    height: 60px;
	margin:auto;
}

.sbtn_1.action img,
.sbtn_2.action img,
.sbtn_3.action img,
.sbtn_4.action img,
.sbtn_5.action img{
	position: absolute;
    top: 1.2em;
    left: 80px;
}

/* ページ内スライド制御 */
.sliderbox {
	width: 500px;
	height: auto;
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
/*  special css*/


/*end special css*/

/* ---------------------
H レスポンシブ用
------------------------*/

/* PC用とモバイル用のロゴを出し分ける */

#pc_logo {
	display: inline;
}
#pc_logo img {
	margin: 0 auto;
}
#mobile_logo {
	display: none;
}
#mobile_button {
	display: none;
}
.mobile_menu {
	display: none;
}
#mobile_main {
	display: none;
}
/* デスクトップでは非表示にする */
#panel, #mobile_side, .mobile_only, #mobile_tel, #mobile_main {
	display: none;
}
#content #main p.wp-caption-text {
	margin-top: 2px;
	font-size: 14px;
	text-align: center;
	margin-right: 10px;
	padding: 10px 10px 0;
	line-height: 17px;
}
#content #main h2.spe {
	padding: 0;
	margin: 0 0 30px;
	background-color: #fff;
	border: 0;
	display: inline-block;
	color: #444;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 1px;
	text-align: left;
}
.rightbox {
	float: right;
}
.leftbox {
	float: left;
}
.w40 {
	width: 40%;
}
.w60 {
	width: 60%;
}
/* コンタクトフォーム */

.wpcf7-form{
	color:#333;
}
input.wpcf7-form-control {
	width: 100%;
    height: 52px;
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 5px 15px;
    background-color: #fff;
	font-size: .9em;
	font-family:'Noto Sans JP', sans-serif;
}

textarea.wpcf7-form-control {
	width: 100%;
	display: block;
	border: 1px solid #ddd;
	border-radius:3px;
    padding: 15px;
	background-color: #fff;
	font-size: .9em;
	font-family:'Noto Sans JP', sans-serif;
}
textarea.wpcf7-form-control::placeholder{color:#999;}

/*プルダウンメニュー*/
select.wpcf7-form-control {
	max-width: 100%;
	margin-bottom: 5px;
	height: auto;
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px 10px 5px 10px;
	font-size: .9em;
	font-family:'Noto Sans JP', sans-serif;
}
/*ラジオボタン*/
.wpcf7-radio .wpcf7-list-item{
	display: inline-flex;
    margin: 7.5px;
}
.wpcf7-form-control input[type="radio"]{
    width: 20px;
    height: 20px;
    border: 1px solid #ddd;
    border-radius: 50%;
    outline: none;
    background-color: #fff;
}

/*チェックボックス*/
.wpcf7-checkbox .wpcf7-list-item{
	display: inline-flex;
    margin: 7.5px;
}
.wpcf7-list-item-label{
	display: inline-flex;
    align-items: center;
	padding-left: 7.5px;
    color: #555;
}
.wpcf7-form-control input[type="checkbox"]{
    width: 20px;
    height: 20px;
    border: 1px solid #ddd;
    border-radius: 2px;
    outline: none;
    background-color: #fff;
}
input.wpcf7-submit {
	border-radius: 6px;
	background: #c9a25e;
	color: white !important;
	width: auto;
	height: auto;
	margin-bottom: 20px;
	position: relative;
	text-decoration: none !important;
	display: inline-block;
	padding: 15px 40px 15px 40px;
	text-align: justify;
    cursor: pointer;
    border: none;
}


/*フォーム幅の調整*/
.field_wrap{
	font-family:'Noto Sans JP', sans-serif;
	width: 100%;
	display: table;
    margin-bottom: 30px;
}
.field_wrap.first{margin-top: 30px;}
.field_name{
	display: table-cell;
	width: 200px;
    padding: 0 0 30px 30px;
    font-weight: bold;
    border-bottom: 2px solid #666;
    color: #555;
	vertical-align:middle;
}

.field{
	display: table-cell;
	padding: 0 0 30px 30px;
    border-bottom: 2px solid #ddd;
}
.field_name label{font-weight: bold;}


#main div.field_name.require:after,
#main div.field_name.any:after{
    display: inline-block;
    font-size: 10px;
	line-height: normal;
    border-radius: 2px;
    padding: 0 6px 1px;
    margin: 0 0 0 10px;
    position: relative;
    bottom: 2px;
	visibility: visible;
	height: auto;
}
#main div.field_name.require:after{
	content:"必須";
	color: #ee6354;
	border: 1px solid #ee6354;
}
#main div.field_name.any:after{
	content:"任意";
	color: #999;
	border: 1px solid #999;
}
#main div.field_wrap:after{content:none;}


.mainimg {
    background: url(img/main_bg.jpg) no-repeat center top;
    height: 556px;
    margin-bottom: 20px;
	background-size: cover;
}
.mainimg img {
    width: auto;
    margin: 0px auto 0;
    text-align: center;
    display: block;
    padding-top: 0px;
}
 
@media screen and (max-width: 1000px)
{
.mainimg {
	background: url(img/main_bg_sp.jpg) no-repeat center top;
    height: auto;
    padding: 10px 0;
    background-size: cover;
}
 
.mainimg img {
	width: 86%;
	padding-top: 0px;
	padding-bottom: 0px;
}
}

@media screen and (min-width: 1000px) {
.sp{
	display:none;
}
}

/******************************
★ Media Queries タブレット・スマフォ表示の設定(1000px以下で読み込むcss)
******************************************************************************************************************************/



@media screen and (max-width: 1000px) {
.pc{
	display:none;
}
.plan_box {
    width: auto;
    float: none;
}
.plan_box:nth-child(2n) {
    width: auto;
    float: none;
}
.page-id-2 #content #main {
    width: 100%;
    float: none;
    display: block;
    margin: 0;
    padding: 0 0px;
}
.page-id-2 .responsedevise {
    text-align: center;
    margin: 0px auto 0;
	padding: 0 0px;
}
.page-id-2 .responsedevise img{
	max-width:100%;
}
.page-id-2 .eyecatch_box_left, .page-id-17 .eyecatch_box_left {
    width: auto;
    float: none;
    margin: 0 0px 0 0;
}
.page-id-2 .free {
    background: url(img/free.png) no-repeat center center;
        background-size: auto;
    background-size: auto;
    background-size: cover;
    padding: 40px 0px 20px 0px;
    margin: 50px 0px 30px 0px;
}
#top_wrap {
    width: auto;
	padding:0 10px;
    margin: 0px auto;
}
.page-id-2 .eyecatch_box .ttl_wrap,.page-id-17 .eyecatch_box .ttl_wrap,.page-id-13 .eyecatch_box .ttl_wrap,.page-id-11 .eyecatch_box .ttl_wrap {
    font-size: 18px;
}
.two_box .ttl {
    padding: 1.5% 3% 1% 3%;
    font-size: 17px;
}
.three_box .ttl {
    padding: 1.5% 3%;
	font-size: 17px;
}
.eyecatch_box {
    border: 2px solid #2e4882;
    padding: 20px 20px 20px 20px;
    margin-bottom: 30px;
}
.eyecatch_box_left {
    width: auto;
    float: none;
    margin: 0 30px 0 0;
}
.eyecatch_box .ttl_wrap {
    font-size: 20px;
    font-weight: bold;
    color: #000000;
}
.f_right {
    float: none;
}

*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	min-width: 320px;
	/*overflow-x: hidden;*/
}
.wrapper {
	z-index: 10;
	width: 100%;
	padding-top: 50px;
}
.wrapper_head, #header {
	margin: 0px auto;
	padding: 0;
	width: 100%;
	z-index: 1000;
	position: relative;
}
#header .header_l img {
	margin: 9px 0 0 5px;
	width: 90px;
	height: auto;
}
body, .home {/* 背景画像を非表示にしています */
	background: none;
	background-color: #fff;
}

.headnav, #footermenu {/* tel画像、フッターメニューを非表示にしています */
	display: none;
}
#submain .h1wrap {
	width: auto;
}
#content #side {/* スマホ用のサイドバー */
	display: block;
	margin: 20px auto 0 auto;
	float: none;
	width: 90%;
}
#content #side h3 {
	width: 100%;
}
#content #side ul.menu{
	width: 100%;
}
#content #side ul.menu li:last-child{
	border-bottom:none;
}
#header.fixed {
/*  top:auto;メニュー戻り時ズレ防止 */
}
#header.fixed .header_l img {
	display: block;
}
#content #main {
	width: 100%;
	float: none;
	display: block;
	margin: 0;
	padding: 0 10px;
}
.ibox_p {
	width: 100%;
}
#submain img {
	top: -250px;
}
#content img, #content iframe {
	max-width: 100%;
	height: auto;
}
#content {
	padding-top: 10px;
	width: auto;
}
#pan {
	width: auto;
	margin-left: 10px;
}
#content .sec {
	width: 90%;
	margin: 0 auto;
	text-align: center;
}
.mobile_only {/* モバイルにだけ表示させたいものに使用する */
	display: block;
}
.pc_only {/* pcにだけ表示させたいものに使用する */
	display: none;
}
/* ヘッダー */

.header_l img {
	width: auto;
	margin-top: 20px;/* スマフォlogo.pngの余白調整 */
	margin-left: 10px;/* スマフォlogo.pngの余白調整 */
	height: 15px;/* スマフォlogo.png高さの半分のサイズ */
}
#imagebox3 {
	margin-bottom: 0px;
}
#pc_button {
	display: none;
}
#mobile_button {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #fff;
	height: 50px;
	width: 50px;
	padding: 8px 10px 0 12px;
}
#mobile_button .menutxt {
	/* font-size: 10px; */
	text-decoration: none;
	position: relative;
	border: none;
	display: block;
}
#mobile_button .menutxt svg {
	width: 28px;
	height: auto;
}
#mobile_button .menutxt svg path {
	fill: gray;
}
.lineswrap {
	height: 20px;
}
#mobile_button .lines {
	background: #919191;
	display: inline-block;
	width: 28px;
	height: 3px;
	position: relative;
	transition: .3s;
	-o-transition: .3s;
	-ms-transition: .3s;
	-moz-transition: .3s;
	-webkit-transition: .3s;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
#mobile_button .lines:after, #mobile_button .lines:before {
	background: #919191;
	position: absolute;
	display: inline-block;
	width: 28px;
	height: 3px;
	content: '';
	transition: .3s;
	-o-transition: .3s;
	-ms-transition: .3s;
	-moz-transition: .3s;
	-webkit-transition: .3s;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
#mobile_button .lines:before {
	top: 8px;
	right: 0;
}
#mobile_button .lines:after {
	top: -8px;
	right: 0px;
}
#mobile_button a.xclose {
	display: block;
	position: relative;
	height: auto;
	padding: 10px 0;
	margin-top: 6px;
	z-index: 1020;
	cursor: pointer;
}
#mobile_button .xclose .menutxt {
	display: none;
}
#mobile_button .xclose .lines {
	background: 0 0;
}
#mobile_button .xclose .lines:before {
	top: -14px;
	right: 0px;
	transform: rotate3d(0, 0, 1, 45deg);
	-o-transform: rotate3d(0, 0, 1, 45deg);
	-ms-transform: rotate3d(0, 0, 1, 45deg);
	-moz-transform: rotate3d(0, 0, 1, 45deg);
	-webkit-transform: rotate3d(0, 0, 1, 45deg);
	transition: .3s;
	-o-transition: .3s;
	-ms-transition: .3s;
	-moz-transition: .3s;
	-webkit-transition: .3s;
}
#mobile_button .xclose .lines:after {
	top: -14px;
	right: 0px;
	transform: rotate3d(0, 0, 1, -45deg);
	-o-transform: rotate3d(0, 0, 1, -45deg);
	-ms-transform: rotate3d(0, 0, 1, -45deg);
	-moz-transform: rotate3d(0, 0, 1, -45deg);
	-webkit-transform: rotate3d(0, 0, 1, -45deg);
	transition: .3s;
	-o-transition: .3s;
	-ms-transition: .3s;
	-moz-transition: .3s;
	-webkit-transition: .3s;
}
a#sidr-menu-button {
	display: block;
	height: auto;
	text-decoration: none;
}
#mobile_main {
	display: inline-block;
}
#mobile_main img {
	max-width: 100%;
}
#header {
	background: none;
	margin-top: 0;
	height: 50px;
	background-color: #fff;
    box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-moz-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-webkit-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-o-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	-ms-box-shadow: 3px 0px 3px rgba(0,0,0,0.2);
	position: fixed;
}
#header .header_l {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}
/* ハンバーガーボタン */


#panel-btn {
	display: inline-block;
	position: relative;
	width: 50px;
	height: 50px;
	/*  margin: 20px 0 10px;*/
	background: #fff;
}
#panel-btn:hover {
	background: #fafafa;
}
#panel-btn-icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 30px;
	height: 4px;
	margin: -2px 0 0 -15px;
	background: #666;
	transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 30px;
	height: 4px;
	background: #666;
	transition: .3s;
}
#panel-btn-icon:before {
	margin-top: -10px;
}
#panel-btn-icon:after {
	margin-top: 6px;
}
#panel-btn .close {
	background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after {
	margin-top: 0;
}
#panel-btn .close:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#panel-btn .close:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
/* モバイル用のメニュー */


#panel {
	display: none;
	top: 50px;
	background-color: rgba(255, 255, 255, 0.8);
	padding: 40px;
	width: 100%;
	height: 100%;
	right: 0;
	position: absolute;
	z-index: 5;
}
#panel li a {
	text-decoration: none;
	font-size: 87%;
	line-height: 1.3;
	padding: 10px 15px;
	border-radius: 5px;
	color: white;
	width: 220px;
	display: block;
	margin: 0 auto 12px;
	font-weight: bold;
}
#panel .menu_list1 li a {/* 固定ページのリスト部分 */
	background-color: #393871;
}
#panel .menu_list2 li a {/* 投稿カテゴリのリスト部分 */
	background-color: #ccc;
	color: #333;
}
/* メイン画像　下層画像 */
#imagebox img {
	max-width: 100%;
}
#imagebox {
	margin: 0;
	text-align: center;
	height: auto;
}
#imagebox3 img {
	max-width: 80%;
	height: auto;
}
#imagebox3 {
	margin: 0;
	padding-top: 20px;
	margin-bottom: 10px;
	text-align: center;
}
.imagebox_p {
	width: 60%;
	padding: 50px 0 0 0;
	height: 50%;
}
#base #bg #imagebox3 h1 {
	font-size: 40px;
	margin-bottom: 30px;
	line-height: 20px;
	color: #566278;
}
#base #bg #imagebox3 h1 .fs {
	font-size: 25px;
}
.imagebox_p span.c_2 {
	font-size: 20px;
}
.imagebox_p span.c_3 {
	font-size: 18px;
}
#imagebox2 {
	padding: 15px 10px 10px 10px;
	font-size: 125%;
	background-size: cover;
	height: auto;
	background-position: 50% 50%;
	line-height: 1.3;
}
/* 見出し */

#content #main h2.singletitle, #content #main h2.title, #content #main h2, #content #main h3, #content #main h4 {
	height: auto;
	line-height: 1.2;
}
#content #main h2 {
	line-height: 1.5;
	margin-top: 30px;
}
/* フッター（サイド） */

#mobile_side {
	display: block;
	width: 100%;
	margin: 0 auto;
}
.side_area img {
	display: block;
	margin: 0 auto;
}
#mobile_side .side_area h3 {
	width: 100%;
}
/* テーブル */

.tablestyle {
	border-collapse: collapse;
	width: 100% !important;
	border-top: 1px solid #dadada;
}
.tablestyle td {
	display: block;
	width: 100%;
	border-top: 0;
}
/* 固定ページ */

.alignright, .alignleft, .alignnone {
	float: none;
	display: block;
	margin: 10px auto;
}
.alignright.pc_only, .alignleft.pc_only, .alignnone.pc_only { /* caption分岐の際、余白防止 */
	display: none;
}
/* コンタクトフォーム */

textarea.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
}
.wpcf7-text {
	width: 90%;
}
.k-year .wpcf7-form-control {/*年号のテキスト*/
	width: 5rem;
}
.wpcf7 td {/* フォームの行を縦に並べる */
	/*display: block;
	width: 100%;*/
	font-weight: bold;
}
.wpcf7 .tdstyle {/* フォームの項目を左寄せ */
	text-align: left;
}
/* 電話番号タップ */

#mobile_tel {
	display: block;
	position: fixed;
	z-index: 1;
	bottom: 0;
	width: 100%;
	padding: 10px 0 5px 0;
	background-color: rgba(0, 0, 0, 0.75);
	text-align: center;
}
.mobile_tel_inner {
	width: 80%;
	margin: 0 auto;
	border-radius: 5px;
	padding: 2px;
	background: #fff;
}
.tel_name {
	padding: 5px 0;
	font-weight: bold;
	color: #333;
}
.tel_btn {
	display: block;
	border-radius: 5px;
	font-size: 150%;
	font-weight: bold;
	padding-top: 5px;
	background: #1e5799;
	background: -moz-linear-gradient(top, #1e5799 0%, #46a1e2 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #1e5799), color-stop(100%, #46a1e2));
	background: -webkit-linear-gradient(top, #1e5799 0%, #46a1e2 100%);
	background: -o-linear-gradient(top, #1e5799 0%, #46a1e2 100%);
	background: -ms-linear-gradient(top, #1e5799 0%, #46a1e2 100%);
	background: linear-gradient(to bottom, #1e5799 0%, #46a1e2 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#46a1e2', GradientType=0 );
}
.tel_btn a {
	color: #fff;
	text-decoration: none;
}
/*------------------------------------------------------
オプション用スタイル　目次

(1)スライダー
--------------------------------------------------------*/
.simplegallery {
	margin: 0 auto;
	width: 100%;
	margin-bottom: 30px;
	padding-top: 10px;
}
/*------------------------------------------------------
(1)スライダー
--------------------------------------------------------*/
/*メイン画像マージン*/
.bx-wrapper {
	margin: 0 auto 0px;
}
/*メイン画像に内余白をつける*/
.bx-wrapper .bx-viewport {
	padding: 0px;
}
/*サムネイル*/
#bx-pager {
	background-color: #●●●;/*サムネイル枠背景色*/
	background-image: url(img/bg_sliderthum.png);/*サムネイル枠背景画像*/
	/*▲どちらか一方を残しもう一方は削除▲*/

	padding: 12px 90px;
	margin-bottom: 20px;
}
#bx-pager a.last {
	margin-right: 0;
}
/*サムネイル通常時*/
#bx-pager a img {
	opacity: 0.5;
	filter: alpha(opacity=50);
}
#bx-pager a {
	display: block;
	float: left;
	margin-right: 21px;
	border: 1px solid #E1E1E3;
}
/*メインで表示されている画像に対応するサムネイル*/
#bx-pager a.active img {
	opacity: 1;
	filter: alpha(opacity=100);
}
#bx-pager a.active {
	border: 1px solid #f00;
}
/*ページ読み込み時に一瞬main2,main3がちらつくのを防ぐ*/
.img2 {
	display: none;
}
.img2.show {
	display: block;
}
.header_tel {
	display: none;
}
#pagetop {
	display: none;
}
#header.fixed {
	width: 100%;
	height: 50px;
}
.footer_btm_wrap {
	/*width: 290px;*/
	float: none;
}
.footer_com {
}
#logo_footer {
	float: none;
	display: inline-block;
}
#footer .footer_tel p {
	width: 100%;
	text-align: center;
}
p.cinfo {
	text-align: center;
	display: block;
}
p.urls {
	text-align: center;
	display: block;
}
#footer .footer_btm {
	width: 100%;
	text-align: center;
}
.footer_btm {
	margin-bottom: 10px;
}
#copyright {
	text-align: center;
}
a.link, a.link2 {
	width: 40%;
}
.cd0, .cd1, .cd2, .cd3 {
	padding: 20px 0 20px;
}
/* ページ内スライド制御 */
.sliderbox {
	float: none;
	width: 100%;
	margin-left: 0;
}
/*clearfixと組み合わせて使用*/
.six_four_r,.six_four_l,.seven_three_r,.seven_three_l {
  width: 80%;
  float: none;
  margin: 0 auto;
}
#content .circle img {
    width: 180px;
    height: 180px;
}
.circle {
	height:350px;
}
.circle li:nth-child(2n){
	top:185px;
}
}/*end*/

/******************************
★ Media Queries スマフォ表示の設定(599px以下で読み込むcss)
******************************************************************************************************************************/
@media screen and (max-width: 599px) {
	/*20201104 */
	.table-scroll1 table, .table-scroll2 table, .table-scroll3 table {
			table-layout: unset;
	}	

	.table-scroll1 {
		min-height: 905px !important;
	}

	.table-scroll2 {
		min-height: 285px !important;
	}	

	.table-scroll2 table {
		margin-bottom: 0;
	}

	.tokutyo_ttl_parent {
		min-height: 80px !important;
	}
	/*20201104 */

	/*20201120 */
	ul.bunner li{
		width:100%;
		float:none;
	}
	ul.bunner li:nth-child(2n){
		width:100%;
		float:none;
	}
	
	.table2 td.ac {
		vertical-align: middle;
	}
	/*20201120 */	
	
.page-id-17 img.alignnone.size-full.wp-image-168 {
    float: none;
}
#content #main {
	font-size: 13px;
}
#content #main h1.singletitle, #content #main h1 {
	font-size: 30px;
	padding-top: 70px;
}
#content #main h2 {
	font-size: 20px;
	margin: 20px 0px 10px 0px;
}
#content #main h3 {
	font-size: 18px;
	margin: 15px 0px 10px 0px;
}
#content #main h4 {
	font-size: 17px;
	margin: 10px 0px 10px 0px;
}
#ibox {
/* height: 250px;*/
}
.ibox_p {
	height: 300px;
}
.ibox_p h1 {
	font-size: 20px;
}
/*キャッチを画像にする場合*/
.ibox_p img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 80%;
  display: block;
  margin: auto;
}
#submain {
	height: 100px;
}
#submain img {
	top: -150px;
}
.page-id-66 #submain img {
	top: -80px;
}
#submain .h1wrap {
	margin: 0;
	text-align: center;
}
#submain h1 {
	margin-top: 30px;
	font-size: 20px;
	letter-spacing: 1px;
}
.three_box p {
	font-size: 14px;
}
.footer_tel {
	padding: 10px 0;
}
.f_telbtn {
	display: block;
}
#logo_footer {
	float: none;
	text-align: center;
	display: inline-block;
}
.footer_com {
}
#footer .footer_btm {
	margin-bottom: 0px;
}
.footer_btm_wrap {
	margin-top: 0px;
	float: none;
	/*padding-top: 25px;*/
	width: auto;
}
.telnum {
	display: none;
}
#imagebox3 {
	clear: both;
	z-index: 2;
	text-align: center;
	height: 200px;
	background-color: #f6f7fa;
	padding-top: 20px;
	margin-bottom: 0px;
	/* background-position: bottom center; */
	background-position: center;
	/*background-image: url("img/dot_black.png"),url("img/main_bg2.jpg");*/
	background-image: url("img/main_bg2.jpg");
	position: relative;
}
.imagebox_p {
	width: 95%;
	height: 60%;
	padding-top: 20px;
}
#base #bg #imagebox3 h1 {
	font-size: 22px;
	margin-bottom: 10px;
	line-height: 12px;
}
#base #bg #imagebox3 h1 .fs {
	font-size: 16px;
}
.imagebox_p span.c_2 {
	font-size: 13px;
	letter-spacing: -0.5px;
}
.imagebox_p span.c_3 {
	font-size: 18px;
}
.imagebox_p p {
	line-height: 1.3;
	font-size: 14px;
	margin-bottom: 0;
}
.footer_tel {
	height: auto;
	line-height: normal;
}
.footer_tel p {
	line-height: 45px;
}
.imagebox_p span.c_2 {
	font-size: 15px;
	line-height: 1.3;
}
.imagebox_p span.c_3 {
	font-size: 15px;
	line-height: 1.3;
}
#footer .footer_tel p {
	background-color: #303030;
	margin-bottom: 0px;
	font-size: 12px;
	line-height: normal;
}
#logo_footer img {
	margin-top: 40px;
}
.rightbox, .leftbox {
	float: none;
}
.two_box,.three_box,.four_box {
  width: 100%;
  float: none;
  margin: 0 auto;
}
a.link, a.link2 {
	width: 90%;
}
.eyecatch_box{
	display: block;
}
.eyecatch_box .ttl_wrap {
	width:100%;
}
.eyecatch_box .ttl_wrap,
.eyecatch_box .txt_wrap {
	display: block;
}
.two_box {
	margin: 0 0 15px 0;
}
.three_box,
.three_box:nth-child(3n-1),
.four_box{
    margin: 0 0 15px 0;
}
.voice .sqred {
    padding: 40px 10px 20px 10px;
}
.voice .box_wrap{
	display: flex;
}
.voice .sqred .two_box{
	width:100%;
	order:2;
}
.voice .sqred .two_box:nth-child(even){
	width:30%;
	margin:0 auto;
	order:1;
}
.voice_name {
    width: 100%;
}
.voice_ttl {
    border-bottom: 3px solid #2e4882;
}
.voice_ttl p{
	margin:0 0 5px 0!important;
	line-height: 1.5;
}
.voice_ttl span {
    border:none;
}
.voice_txt{
    margin:10px 0 0 0;
}
#wpsm_accordion_2525 .ac_title_class {
    text-align: left;
}
.youtube-box{
	display:block!important;
}
.youtube-box p{
	width:100%!important;
}

/* フォームの調整 599px以下*/
.field_wrap{

}
.field_name{
	display: block;
	width: auto;
    border: none;
    padding: 0;
    margin-bottom: 10px;
	font-size:1.1em;
}

.field{
	display: block;
	width: auto;
    border-bottom: 1px solid #ddd;
    padding: 0 0 30px;
}
input.wpcf7-form-control,
textarea.wpcf7-form-control,
select.wpcf7-form-control,
.wpcf7-list-item-label{font-size:1.2em;}
div.sbtn_1 input[type="submit"],
div.sbtn_2 input[type="submit"],
div.sbtn_3 input[type="submit"],
div.sbtn_4 input[type="submit"],
div.sbtn_5 input[type="submit"]{font-size: 1.2em;}
.sbtn_1.action img,
.sbtn_2.action img,
.sbtn_3.action img,
.sbtn_4.action img,
.sbtn_5.action img{top: 1.4em;}
	
.wpcf7 .table2 th,
.wpcf7 .table2 td {
	display: block;
	width: 100%;
}
	
/* archives.php 599px以下*/
#content #main div.post_wrap:after{content:none;}
.post_box{
	width:100%;
	margin-bottom:20px;
	position:relative;
	border:1px solid #ccc;
}
.catch_box {
	width:100%;
	float:none;
}
.catch_box:nth-child(2n) {
	width:100%;
	float:none;
	margin-top:-20px;
}
.circle {
	height:260px;
}
.circle li:nth-child(2n){
	position: absolute;
	left:0;
	top:100px;
}
#content .circle img {
	width: 160px;
	height: 160px;
}
.sp_only {
	display:block;
}
}

/* reCAPTCHAマーク非表示 */
.grecaptcha-badge {
	visibility: hidden; }

/******************************
★ Media Queries スマフォ以外の設定(600px以上で読み込むcss)
******************************************************************************************************************************/
@media screen and (min-width: 600px) {
.table2 .br-sp{
	display:none;
}
}/*end*/


/*++++++++++++++++ WooCommerce ++++++++++++++++*/
/* 一覧表示商品名スタイルリセット */
#content #main .woocommerce-loop-product__title {
    all: unset;
}

/* 商品詳細ページの「カートに追加」ボタン */
.woocommerce div.product form.cart button.single_add_to_cart_button {
    background-color: #2e4882 !important; /* ボタンの背景色 */
    color: #ffffff !important; /* ボタン内のテキスト色 */
    border: none; /* ボーダーを消す（必要なら） */
}

/* ホバー時のスタイル */
.woocommerce div.product form.cart button.single_add_to_cart_button:hover {
    background-color: #086ba1 !important; /* ホバー時の背景色 */
    color: #ffffff !important; /* ホバー時のテキスト色 */
}

/* 商品詳細ページの投稿日を非表示 */
.posted-on, .date, .entry-meta {
    display: none;
}

/* ショップページの商品一覧を非表示 */
.woocommerce.columns-4 {
	display: none;
}

/* 支払いページの商品ブロック縦並び*/
.wc-block-components-order-summary .wc-block-components-order-summary-item {
	display: block !important;
}


/* チャットボット */
.chat-button {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: #2e4882;
  color: white;
  border: none;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  transition: all 0.3s ease;
  z-index: 1000;
  -webkit-appearance: none; /* iOSでボタンが青くならないように */
}
.chat-button:hover { background: #0992da; transform: scale(1.1); }

.chat-window {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 380px;
  height: 520px;
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
  display: none;
  flex-direction: column;
  z-index: 1001;
  overflow: hidden;
}
.chat-window.active { display: flex; }

.chat-header {
  background: #2e4882;
  color: white;
  padding: 14px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: bold;
  font-size: 15px;
}
.chat-messages {
  flex: 1;
  overflow-y: auto;
  padding: 14px;
  background: #f2f8fc;
  font-size: 14px;
}
.message { margin-bottom: 12px; display: flex; align-items: flex-start; gap: 8px; }
.message.user { flex-direction: row-reverse; }
.message-content {
  max-width: 72%;
  padding: 10px 14px;
  border-radius: 10px;
  line-height: 1.5;
  word-break: break-word;
}
.message.bot .message-content {
  background: #fefefe;
  border: 1px solid #cce3f0;
}
.message.user .message-content {
  background: #2e4882;
  color: #fff;
}
.message-content a {
  color: #2e4882;
  text-decoration: underline;
}
.avatar {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}
.chat-input-area {
  padding: 10px;
  background: #fff;
  border-top: 1px solid #eee;
  display: flex;
  gap: 8px;
}
.chat-input {
  flex: 1;
  padding: 8px 14px;
  border: 1px solid #ccc;
  border-radius: 20px;
  outline: none;
}
.chat-input:focus {
  border-color: #c9a25e;
  box-shadow: 0 0 4px rgba(153,191,66,0.4);
}
.send-button {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #c9a25e;
  color: white;
  border: none;
  cursor: pointer;
  font-size: 18px;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}
.send-button:hover { background: #8ab23c; transform: scale(1.05); }

/* 📱 スマホ対応 */
@media (max-width: 600px) {
  .chat-window {
    width: 90%;
    height: 420px;
    bottom: 20px;
    right: 5%;
  }
  .chat-button {
    bottom: 20px;
    right: 20px;
    background-color: #2e4882;
    -webkit-appearance: none;
  }
  .send-button {
    line-height: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none;
  }
  input, button {
    -webkit-tap-highlight-color: transparent;
  }
}