@charset "UTF-8";
/* CSS Document */

/*-------------------------------------------*/
/*	初期化
/*-------------------------------------------*/


*        { margin: 0px; padding: 0px; font-size: 100%; }
ul{ list-style: none; }
/*body,h1, h2, h3, h4, h5,p,
ul, ol, li, dl, dt, dd,
table,
form, input {margin:0;padding:0; }
*/

body,h1, h2, h3, h4, h5,p, dl, dt, dd,
table,
form, input {margin:0;padding:0; }

hr  { display: none; }
th	{ font-weight:lighter; }
img { border: none; vertical-align: bottom; }
/*iphone 用*/
input[type="submit"],input[type="button"]{
-webkit-appearance: none;
}


.clearfix:after { /*float解除*/
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	min-height: 1px; /*IE6、7対策*/
}
* html .clearfix {
	height: 1px;
	 /*¥*//*/ /*MAC IE5.x対策*/
	height: auto;
	overflow: hidden;
 /**/
}
a img.image_hover{
	transition:all 0.5s ease; 
}
a:hover img.image_hover{
	opacity: 0.7;/*要素の透明度*/
	filter: alpha(opacity=70); /*ie6、7*/
	-ms-filter: "alpha(opacity=70)";/*ie8*/
}
a:hover img,
#pagetop img:hover{
	opacity: 0.7;/*要素の透明度*/
	filter: alpha(opacity=70); /*ie6、7*/
	-ms-filter: "alpha(opacity=70)";/*ie8*/
}

a:hover{
	opacity: 0.7;/*要素の透明度*/
	filter: alpha(opacity=70); /*ie6、7*/
	-ms-filter: "alpha(opacity=70)";/*ie8*/
}

table td{border-bottom: none !important;}


body{
	background-image: url("images/body-bg.jpg");
	background-position:0px 0px !important;
	background-repeat:repeat-x !important;
	z-index: 99999 !important;
}

a img.image_hover{
	transition:all 0.5s ease; 
}
a:hover img.image_hover{
	opacity: 0.7;/*要素の透明度*/
	filter: alpha(opacity=70); /*ie6、7*/
	-ms-filter: "alpha(opacity=70)";/*ie8*/
}
a:hover img,
#pagetop img:hover{
	opacity: 0.7;/*要素の透明度*/
	filter: alpha(opacity=70); /*ie6、7*/
	-ms-filter: "alpha(opacity=70)";/*ie8*/
}

.ul-flex{
	list-style-type: disc;
	margin-left: -10px;
	display:flex;justify-content:
  	flex-start; flex-wrap: wrap;}
.ul-flex li{padding-left: 0px; margin-left: 22px;margin-right: 10px;}
.exp{
	display: none;
	visibility: visible;
	height: 1px;
}

.link a:hover{
	text-decoration: none !important;
}

.breadcrumbs{padding: 0 !important;margin: 0 !important;}

#nv-primary-navigation-bottom{display: flex !important;justify-content: center;flex-wrap: nowrap;align-items: center;}
#nv-primary-navigation-bottom > li {width: 228px;margin: 0 auto;}
#nv-primary-navigation-bottom > li > a{
	padding-top: 0px; 
	text-align: center !important;
	border-left:1px solid #B4BEC4 !important;display: block;vertical-align: middle !important;}

#nv-primary-navigation-bottom > li > a > span{text-align: center !important;display: block;vertical-align: middle !important;}

#nv-primary-navigation-bottom > li:nth-of-type(5){border-right:1px solid #B4BEC4 !important;}

@media only screen and (max-width: 1134px) {
	#nv-primary-navigation-bottom > li {width: 220px;margin: 0 auto;}
}

@media only screen and (max-width: 1078px) {
	#nv-primary-navigation-bottom > li {width: 205px;margin: 0 auto;}
}
@media only screen and (max-width: 1039px) {
	#nv-primary-navigation-bottom > li {width: 195px;margin: 0 auto;}
}
@media only screen and (max-width: 963px) {
	#nv-primary-navigation-bottom > li {width: 185px;margin: 0 auto;}
	
}

/* mobile menu*/
.content-mneu li{line-height: 2.5em;}
.content-mneu li a:hover{color: #1b99e8 !important;}
.icon-bar {
	transition: all .1s ease;
	position: relative;
	display: block;
	border-radius: 2px;
	width: 15px;
	height: 2px;
	background-color: #fff !important;
}
@media only screen and (max-width: 748px) {

}
@media only screen and (max-width: 959px) {

}

.navbar-toggle {
  border-radius: 5px !important;
  cursor: pointer;
  padding: 15px 15px!important;
  display: flex;
  align-items: center;
  border: 0px solid #fff !important;
	background-color: #B8646B !important;
}

#logo-toggle-wrap{padding-bottom: 10px;margin-bottom: 10px;}
#header-menu-sidebar .close-sidebar-panel{padding-top: 20px;float: right;width: 30%}

#logo-mobi{float: left;width: 70%;padding-top: 20px;padding-left: 10px;z-index: 999;}
#logo-mobi img{width: 70%;height: auto;}

.menu-mobile .navbar-toggle {
  border-radius: 5px !important;
  cursor: pointer;
  padding: 15px 15px!important;
  display: flex;
  align-items: center;
  border: 0px solid #fff !important;
	background-color: #fff !important;
}

/*top news*/
.news-block li{display: flex; border-bottom: 1px solid #707070;padding-bottom: 20px;margin-bottom: 20px;}
.news-block li h4{font-weight: 400 !important;}
.news-block li h4 a{color:#3C3C3C !important;}
.news-block li h4 a:hover{color:#2386BE !important;}
.news-block li h4:nth-of-type(1){padding-right: 50px;}

.noto-serif{font-family: 'Noto Serif JP', sans-serif !important;}


/*post　archive #80A0B2*/

.nivo-caption{padding: 15px 0 !important; text-align: center !important;font-size: 25px !important; font-weight: 400 !important;}


figure.swiper-slide-inner{position: relative;}
figcaption.elementor-image-carousel-caption{
	width: 100% !important;
	position: absolute;
	bottom: 0;
	background-color: rgba(0,0,0,0.7) !important;padding: 10px 0 !important;}

@media only screen and (max-width: 957px) {
	.nivo-caption{padding: 5px 0 !important; text-align: center !important;font-size: 20px !important; font-weight: 400 !important;}
	
.swiper-slide{height: 300px !important;}
	.swiper-slide img{width: 100vw !important;height: 300px !important;object-fit: cover;}
}
/*topics arcvhives*/
.archive-container .nv-page-title{padding-bottom: 20px;}

/*single*/
#recent-posts-2 ul{list-style:disc !important;margin-left: 20px;}

.cela-table{}
.cela-table td{padding: 0 !important;margin: 0 !important;}
.cela-table td:nth-of-type(1){vertical-align: top !important;}

.grey-td{width: 100 !important;}
.grey-td td{padding: 3px !important;border-bottom: 1px solid #BEBCBC !important;}
.grey-td td:nth-of-type(1){background-color: #F2F2F2;vertical-align: top !important;width:10%}

.main-table td{padding: 0 !important;margin: 0 !important;}


/*contact*/
table.contact-table{padding-bottom: 40px;width: 100%;}
table.contact-table a{color:#C92B33; }
table.contact-table tr th{padding:10px 20px; text-align: left;vertical-align: top;width: 30%;background-color: #F2F2F2;}
table.contact-table tr td{padding:10px 20px;vertical-align: top;}

table.contact-table td,
table.contact-table th
{border-bottom: 1px solid #9B9B9B !important; }


.margintop{margin-top: -30px;}
.list-block .wpcf7-list-item { display: block; margin-top: 0px;}

.wpcf7-form-control-wrap.phone-area input{ime-mode: disabled;}
.wpcf7-form-control-wrap.phone-city input{ime-mode: disabled;}
.wpcf7-form-control-wrap.phone-num input{ime-mode: disabled;}

.wpcf7-radio,.wpcf7-checkbox,.wpcf7-acceptance{margin-left:-15px !important;}
.wpcf7 input[type="checkbox"]{color:#000;width: 20px;border:solid 2px #000;}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="select"],#pref,
.wpcf7 input[type="tel"],
.wpcf7 textarea{background-color: #FFFFFF;}
.wpcf7 input[type="text"]#event-title{padding: 10px 0;width: 50%;}
.wpcf7 input:hover[type="text"],
.wpcf7 input:hover[type="email"],
.wpcf7 input:hover[type="tel"],
.wpcf7 textarea:hover{background-color: #F2F2F2;}

.wpcf7 input:focus[type="text"],
.wpcf7 input:focus[type="email"],
.wpcf7 input:focus[type="tel"],
.wpcf7 textarea:focus{
    background-color: #FFFF;
}


.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 textarea{width:100%;}
.wpcf7 input[type="text"].name{width:35%;}
.wpcf7 input[type="tel"].phone{width:12%;}
.wpcf7 input[type="text"]#zip{width:30%;}

.hissu{
	display: inline-block;text-align: right;
	background-color: #D84277;
	color: #ffffff;
	font-size: 11px;
	padding: 0px 2px;
	margin-left: 10px;
	font-weight: 500;}
.small{font-size:12px;}

input#btn_send,
input#btn_conf{background-color:#3992C4 !important;font-size: 18px;
	;color:#fff; border-radius: 5px;margin-left: 0px;
	text-align: center;border:solid 2px #07A2E0;padding:0px;}

input#btn_send:hover,input#btn_conf:hover{background-color:#d84277 !important;border:solid 2px #d84277;}
input#btn_back{background-color:#A3A3A3 !important;font-size: 18px;margin-left: 20px;margin-right: 20px;border:solid 2px #A3A3A3; border-radius: 5px;color:#505050;padding:0px;}
input#btn_back:hover{background-color:#F2F2F2 !important;}

input#btn_conf{width:300px;height: 70px; margin-left: 0px;}
input#btn_back,
input#btn_send{width:300px;height: 70px; }

/*.wpcf7 span.wpcf7-not-valid-tip {
    display: none;
}
*/
.wpcf7 .wpcf7-not-valid {
    background: pink !important;;
}
.wpcf7 .wpcf7-not-valid:hover,
.wpcf7 .wpcf7-not-valid:focus{
    background: #fff !important;;
}
@media only screen and (max-width: 764px) {
	.wpcf7 input[type="tel"].phone{width:30%;}
	table.contact-table tr th{background-color: #F5F5F9;}
	table.contact-table tr th,
	table.contact-table tr td{display:block;width: 100%;text-align: left;}
	
}

#div-submit{
	text-align: center;width:100%;
	margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 500px) {
	#div-submit{text-align: center;width:100%;margin: 0 auto;padding-left: 0px;}
	input#btn_conf{width:300px;height: 40px; margin-left: 0px;}
	.your-appli,.your-soudan{display: block; margin-top: -20px !important;}
	.wpcf7-radio .wpcf7-list-item,.wpcf7-checkbox .wpcf7-list-item  {
    margin-top:0px;
    display: block;
}
	
}
.wpcf7c-conf {
    background-color: #F5F5F5 !important; /* 背景色 */
    color: black; /* 文字色 */
    border: 1px solid #AEAEAE; /* 周りの線: 太さ　線種 線の色 */
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
	border-color: #ffb900; /* Yellow */
	color:red;
	text-align: center;
}

/*確認画面 テーブル */
#wpcf7cpcnf table {
    border: none;
}
#wpcf7cpcnf table th {
    width: 30%;background-color: #F2F2F2;
    border-bottom: 1px solid #ccc;
    text-align: left;
}
#wpcf7cpcnf table td {
    border-bottom: 1px solid #ccc !important;
}

/* ボタン */
#wpcf7cpcnf button {
    background-color:#3992C4;
    color: #fff;border-radius: 5px;
}
#wpcf7cpcnf button:hover {background-color:#d84277 !important;}

#wpcf7cpcnf .hissu{
	display: inline-block;text-align: right;
	background-color: #D84277;
	color: #ffffff;
	font-size: 11px;
	padding: 0px 2px;
	margin-left: 10px;
	font-weight: 500;}
/*---------- contact ----------*/
.tooltip3{
    position: relative;
    cursor: pointer;
    display: inline-block;
}
.tooltip3 .wpcf7-tel{
    margin:0;
    padding:5px;
}
.description3 {
    display: none;
    position: absolute;
    padding: 10px;
    font-size: 12px;
    line-height: 1.6em;
    color: #fff;
    border-radius: 5px;
    background: #000;
    width: 70px;
}
.description3:before {
    content: "";
    position: absolute;
    top: -24px;
    right: 60%;
    border:0px solid transparent;/*15*/
    border-top: 15px solid #000;
    margin-left: -15px;
    transform: rotateZ(180deg);
}
.tooltip3:hover .description3{
    display: inline-block;
    top: 40px;
    left: 0px;
}

/*ページ内リンク*/

/**/
ol.MaruSuji  {
  position: relative;
  margin: 0;
  padding: 0
}
ol.MaruSuji li  {
  list-style: none;
  list-style-position: outside;
  margin: 0;
  padding-left: 1.25em
}
ol.MaruSuji li span {
  position: absolute;
  left: 0;
  margin: 0
}

ol.MaruNum {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
  margin: 0;
}
ol.MaruNum li {
  font-size: 1em;
  line-height: 1.5;
  padding-left: 30px;
  position: relative;
}
ol.MaruNum li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #ffffff;
  border: 1px solid #000000;
  border-radius: 50%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 15px;
  width: 15px;
  color: #000000;
  font-size: 65%;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
}

ol.numA{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
}
ol.numA li{
	position: relative;
	padding-left: 35px;
	margin: 0 0 10px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
}
ol.numA li:before{
	position: absolute;
	top: 0;
	left: 0;
	color: red;
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: "※"counter(li);
}

ul.numB{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
	margin-left: -20px;
}
ul.numB li{
	position: relative;
	padding-left: 25px;
	margin: 0 0 10px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
}
ul.numB li::before{
	position: absolute;
	top: 0;
	left: 0;
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: counter(li)". ";
}

ul.numKakko{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
	margin-left: -20px;
}
ul.numKakko li{
	position: relative;
	padding-left: 25px;
	margin: 0 0 10px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
}
ul.numKakko li::before{
	position: absolute;
	top: 0;
	left: 0;
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: counter(li)"）";
}

ul.numMaru1{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
	margin-left: -20px;
}
ul.numMaru1 li{
	position: relative;
	padding-left: 15px;
	margin: 0 0 5px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
}
ul.numMaru1 li:before{
	position: absolute;
	top: 3px;
	left: 0px;
	color:#2E2E2E;
	font-size: 0.7em;	
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: "●";
	
}

ul.numMaru{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
	margin-left: -20px;
}
ul.numMaru li{
	position: relative;
	padding-left: 15px;
	margin: 0 0 5px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
}
ul.numMaru li:before{
	position: absolute;
	top: 0px;
	left: 0px;
	color:#2E2E2E;
	font-size: 0.7em;	
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: "●";
	
}
ul.numMaru li .maru-sub {padding-top: 5px;}
ul.numMaru li .maru-sub li{
	padding-left: 0px;
	margin: 0 0 5px -5px;}
ul.numMaru > li > .maru-sub > li:before{content: "";}


ul.rect{
	/*要素の連番（カウンタ）の値をリセットする*/
	counter-reset: li;
	margin-left: 0px;
	background-color: #F8F8F8;
}
ul.rect li{
	position: relative;
	padding-left: 40px;
	/*デフォルトのスタイルを非表示にする*/
	list-style: none;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0px;
	margin-left: 0;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
ul.rect li:last-child{
	border-bottom-width: 0px;
	border-bottom-style: none;
	border-bottom-color: #fff;
}

ul.rect li:before{
	position: absolute;
	top: 17px;
	left: 25px;
	color: #12519A;
	font-size: 1.2em;
	/*要素の連番（カウンタ）の値を進める*/
	counter-increment: li;
	/*自動連番を付ける関数*/
	content: "\f105";
	font-family: FontAwesome;
	font-weight: bold;
}

ul.maru{margin-left: 0px;}
ul.maru li{
  position: relative;
  padding-left: 20px;
 padding-bottom: 15px;
}
 
ul.maru li:before {
  content: "";
  position: absolute;
  top: .4em;
  left: 0;
  width: 15px;
  height: 15px;
  background-color: #AF4078;
  border-radius: 50%;
}
ul.maru_b{margin-left: 0px;}
ul.maru_b li{
  position: relative;
  padding-left: 20px;
 padding-bottom: 15px;
}
 
ul.maru_b li:before {
  content: "";
  position: absolute;
  top: .4em;
  left: 0;
  width: 15px;
  height: 15px;
  background-color: #324E8F;
  border-radius: 50%;
}


ul.maru-o{margin-left: 0px;}
ul.maru-o li{
  position: relative;
  padding-left: 20px;
 padding-bottom: 15px;
}
 
ul.maru-o li:before {
  content: "";
  position: absolute;
  top: .4em;
  left: 0;
  width: 15px;
  height: 15px;
  background-color: #E44726;
  border-radius: 50%;
}
ul.ul-dot{list-style: disc !important;margin-left: 10px;}
ul.ul-dot li{padding-bottom: 5px;}

ul.case{list-style: disc !important;}

	.darky{color: #D69F52;}
	.green{color: #30A084;}
	.red{color: #D56363;}
	.grey{color: #777777;}
	.f12{font-size:12px !important;}
	.f14{font-size:14px !important;}
	.f16{font-size:16px !important;}
	.f18{font-size:18px !important;}
	.f20{font-size:20px !important;}
	.f22{font-size:22px !important;}
	.f25{font-size:25px !important;}
	.f30{font-size:30px !important;}
	.bold{font-weight:500 !important;color:#0C2939 !important;	
font-family: 'Noto Serif JP', sans-serif !important;}
	.normal{font-weight:normal !important;}

@media only screen and (max-width: 764px) {
.nobr br{display:none;}
}

