@charset "utf-8";
/*==========================================
@media (min-width: 768px) {	　  （ PC環境 ）
	width: 963px ;
===========================================*/
body {
	margin: 0;
	padding: 0;
	font-size: 15px;
	line-height: 1.5em;
	letter-spacing: 0.05em;
	font-family:"メイリオ",  Meiryo,"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*	font-family: 'Noto Serif JP', serif !important;	*/
}
@media (min-width: 768px) {	/* PC時 */
	body {
	line-height: 1.8em;
	letter-spacing: 0.05em;
	font-size: 17px;
	}
}
.clear {
	clear:				both;
	display:			block;
	width:				0px;
	height:				0px;
}
*, *: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;
}
/*==========================================
 Font
===========================================*/
.fontSize50{ font-size: 50%; line-height: normal; }
.fontSize80{ font-size: 80%; line-height: normal; }
.fontSize90{ font-size: 90%; line-height: normal; }
.fontSize110{ font-size: 110%; line-height: normal; }
.fontSize120{ font-size: 120%; line-height: normal; }
.fontSize130{ font-size: 130%; line-height: normal; }
.fontSize150{ font-size: 150%; line-height: normal; }
.fontSize180{ font-size: 180%; line-height: normal; }
.fontSize200{ font-size: 200%; line-height: normal; }
.fontSize250{ font-size: 250%; line-height: normal; }
.fontSize280{ font-size: 280%; line-height: normal; }
.f_FFFFFF{ color: #FFFFFF; }	/* 白色 */
.f_red{ color: red; }			/* 赤色 */
.f_F15B5B{ color: #F15B5B; }	/* 赤色 */
.f_ffff66{ color: #ffff66; }	/* 黄色 */
.f_00b500{ color: #00b500; }	/* 緑色 */
.f_00558f{ color: #00558F; }	/* 青藍色 */
.f_b89400{ color: #b89400; }	/* 黄金色 */
.f_932e40{ color: #932e40; }	/* 海老色 */
.f_ff8500{ color: #ff8500; }	/* オレンジ色 */
.f_20ac84{ color: #20ac84; }	/* エメラルドグリーン 2*/
.f_236eba{ color: #236eba; }	/* 濃い青色 */
.f_884898{ color: #884898; }	/* 紫色 */
.f_f08200{ color: #f08200; }	/* 黒色背景に見出し色とする（黄土色） */
.f_bold{ font-weight: bold; }
.txt_cl{	/* PCではcenter。スマホではtxt_left。	*/
	text-align: left !important;
	}
	@media (min-width: 768px) {	/* PC時 */
	.txt_cl{ text-align: center !important; }
	}
.txt_center{ text-align: center !important; }
.txt_left{ text-align: left !important; }
.txt_right{ text-align: right !important; }
.float_right{ float: right !important; }
.txt_justify {					/* 均等割り付け */
  text-align: justify;
  text-justify: inter-ideograph;
}
.txt_XYcenter {		/* 上下中央位置にて表示（ zoomslider ） */
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  -webkit-transform: translate(-50%, -50%); /* Safari用 */
  transform: translate(-50%, -50%);
}
/* 蛍光ペン */
.marker_yellow { background: linear-gradient(transparent 60%, #ffff66 60%); }	/* 黄色 */
.marker_lime { background: linear-gradient(transparent 60%, #66FFCC 60%); }		/* 黄緑色 */
.marker_water { background: linear-gradient(transparent 60%, #66ccff 60%); }	/* 水色 */
.marker_pink { background: linear-gradient(transparent 60%, #ff66ff 60%); }		/* 桃色 */
.marker_b700b7 { background: linear-gradient(transparent 60%, #b700b7 60%); }		/* 紫色 */

/* フォント */
.font-family01{ font-family:"HG明朝E","ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝","ＭＳ 明朝",serif !important; }
/*  Google Font */
.wf-ptserif{ font-family: "Amiri","HG明朝E","ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝","ＭＳ 明朝",serif !important; }
/*==========================================
 背景色
===========================================*/
.bkc_FFFFFF { background: #FFFFFF; }	/* 白色 */
.bkc_000000 { background: #000000; }	/* 黒色 */
.bkc_f7f6f0 { background: #f7f6f0; }	/* 薄い象色 */
.bkc_f3f3f3 { background: #f3f3f3; }	/* 薄い灰色 */
.bkc_ffffe8 { background: #ffffe8; }	/* 明るい象色 */
.bkc_F4F2ED { background: #F4F2ED; }	/* 明るい象色 */
.bkc_00aa6e { background: #00aa6e; }	/* エメラルドグリーン 1*/
.bkc_20ac84 { background: #20ac84; }	/* エメラルドグリーン 2*/
.bkc_f0f8ff { background: #f0f8ff; }	/* 薄い青色 */
.bkc_236eba { background: #236eba; }	/* 濃い青色 */
.bkc_fbf9f2 { background: #fbf9f2; }	/* 薄い黄みの橙 */
.bkc_884898 { background: #884898; }	/* 紫色 */
.bkc_ffe4cc { background: #ffe4cc; }	/* 濃い肌色 */

/*　Point１～								*/
.bkc_point1 { background: #c26679; }	/* Point3 */
.bkc_point2 { background: #facb02; }	/* Point2 */
.bkc_point3 { background: #bdcc64; }	/* Point3 */
/*==========================================
 ボーダースタイル
===========================================*/
.bdr_top-mline{ border-top: 1px solid #be9756; }
.bdr_bottom-mline{ border-bottom: 1px solid #be9756; }
	
.bdr_top-a{ border-top: 1px solid #cccccc; }
.bdr_left-a{ border-left: 1px solid #cccccc; }
.bdr_right-a{ border-right: 1px solid #cccccc; }
.bdr_bottom-a{ border-bottom: 1px solid #cccccc; }

/* シアン */
.bdr_top-b{ border-top: 1px solid #6cb4e4; }
.bdr_left-b{ border-left: 1px solid #6cb4e4; }
.bdr_right-b{ border-right: 1px solid #6cb4e4; }
.bdr_bottom-b{ border-bottom: 1px solid #6cb4e4; }


/* 区切りの縦線 */
.v-line {
	margin-top: 80px;
	margin-bottom: 120px;
	display: flex;
	text-align: center;
	color: #fff;
	font-weight: bold;
}

.v-line .v-line-a {
	flex-grow: 1;
	position: relative;
	height: 140px;
	line-height: 140px;
	margin-right: 2em;
	background-color: #ffffff;
}

.v-line .v-line-a::after {
	position: absolute;
	top: 0;
	left: 100%;
	margin: 0 1rem;
	content: "";
	width: 1.5px;
	height: 100%;
	background-color: #333;
}

.v-line .v-line-b {
	flex-grow: 1;
	height: 140px;
	line-height: 140px;
	background-color: #ffffff;
}
/*==========================================
 インデントを指定する
===========================================*/
p.indentfront{
	text-indent: 1em;
}
/*==========================================
 インラインのブロック（改行が入らず横に並ぶ）
===========================================*/
d_iblock{
	display: inline-block;
}
/*==========================================
 画像（IMG）を中央揃えにする
===========================================*/
.imgBox_center{
 	display: block;
 	margin-left: auto;
 	margin-right: auto;
	!important;
}
/*==========================================
 PC SP 切り替え
===========================================*/
	.idx-Major_PC{ display: none; }
	.idx-Major_SP{ display: block; }

@media (min-width: 768px) {	/* PC時 */
	.idx-Major_PC{ display: block; }
	.idx-Major_SP{ display: none; }
}
/*==========================================
 画像（IMG）サイズを自動で合わせる（トップページのイメージで使用）
===========================================*/
.resizeimage img{
 	width: 100%;
}
/*==========================================
 画面幅いっぱいに要素を広げて配置する
===========================================*/
.full-width {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
}
.full-img {
    width: 100vw;
    height: auto;
    margin-left: calc(-50vw + 50%);
}
/*==========================================
 角を丸くする
===========================================*/
.b_radius{
	border-radius: 5px;
	line-height: 1.5em;
	padding: 10px 10px 10px 10px;
	border: 1px solid #999;
}
/*==========================================
 Bootstrap を使用せずに画像を横並びにする
===========================================*/
.top-banner{
	display: flex;
	flex-wrap:wrap;
}
.top-banner li {
	width: calc(100%/2);/*←画像を横に2つ並べる場合*/
	padding:0 5px;/*←画像の左右に5pxの余白を入れる場合*/
	box-sizing:border-box;
}
.top-banner li img {
	max-width:100%; /*画像のはみだしを防ぐ*/
	height: auto; /*画像の縦横比を維持 */
	border:solid 1px #ccc; /*←画像を1pxのグレーの枠線で囲む指定の場合*/
}
/*==========================================
 space
===========================================*/
.mt00 { margin-top: 0px !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt50 { margin-top: 50px !important; }
.mt70 { margin-top: 70px !important; }

.mr00 { margin-right: 0px !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }

.mb00 { margin-bottom: 0px !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb50 { margin-bottom: 50px !important; }

.ml00 { margin-left: 0px !important; }
.ml05 { margin-left: 5px !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; }

.pt00 { padding-top: 0px !important; }
.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt50 { padding-top: 30px !important; }

.pr00 { padding-right: 0px !important; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }

.pb00 { padding-bottom: 0px !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }

.pl00 { padding-left: 0px !important; }
.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }

/*==========================================
 PC SP 切り替え
===========================================*/
.major_PC{ display: none; }
.major_SP{ display: block; }

@media (min-width: 768px) {	/* PC時 */
	.major_PC{ display: block; }
	.major_SP{ display: none; }
}

/*==========================================
 ol, ul
===========================================*/
.olsts {		/*	算用数字	*/
	list-style-type: decimal !important;
	margin: 10px 10px 10px 30px;
	text-align: justify;			/* 行文字均等割り 1/2 */
	text-justify: inter-ideograph;	/* 行文字均等割り 2/2 */
}
.ulsts_1 {		/*	黒ポチ	*/
	list-style-type: disc !important;
	margin: 10px 10px 10px 30px;
	text-align: justify;			/* 行文字均等割り 1/2 */
	text-justify: inter-ideograph;	/* 行文字均等割り 2/2 */
}

/*==========================================
 bootstrap 補助
===========================================*/
.btn {		/*	ボタンからテキスト文字がはみ出る事を防ぐ	*/
	white-space: normal;
}
/*==========================================
 マウスオーバーで画像を拡大する
===========================================*/
.moimg1 {
	overflow: hidden;
	/*	width: 350px;
		height: 240px;	*/
}
.moimg1 img {
    /*	width: 350px;	*/
	display: block;
	transition: 0.5s;
}
.moimg1 img:hover {
	transform: scale(1.1, 1.1);
}
/*==========================================
 <header>
===========================================*/
header {
	text-align: left;
	padding: 10px 0px 0px 0px;
	margin-bottom: 0px;
}
.logo-wrapper {
	margin: 0 auto ;
	padding: 10px 10px 20px 0px;
	text-align: center;
}
/* ロゴ	*/
.logo {
	max-width: 80%;
	height: auto ;
	margin: 0 auto ;
}
@media (min-width: 768px) {	/* PC時 */
.logo {
	max-width: 450px;
	height: auto ;
	margin: 0 auto ;
	}
}
/*==========================================
 <h1～>
===========================================*/
h1{font-family: "HG明朝E","ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝","ＭＳ 明朝",serif !important; }
@media screen and (max-width: 559px) {	/* スマホサイズのみ対応 */
	h1{ font-size: 150%; }
}
.h1_bkc1{ background: #efefef; }
.h1_fcolor{ color: #400040; }


h2{
	width: auto;
	font-size: 120%;
	/*	font-family: "HG明朝E","ヒラギノ明朝 Pro W3","ＭＳ Ｐ明朝","ＭＳ 明朝",serif !important;	*/
}
h4{
	font-size: 100%;
}
@media (min-width: 768px) {	/* PC時 */
	h2{
	width: auto;
	font-size: 150%;
	}
}

.h_Line{
	border-bottom: 1px solid #b23653;
	text-align: center;
	padding: 0 0 10px 0;
	line-height: 1.3em;
}

/*==========================================
 インパクトある見出し
===========================================*/
.index_m1{
	font-size: 130%;
	font-weight: bold;
	color: #932e40;			/* 海老色 */
}
@media (min-width: 768px) {	/* PC時 */
	.index_m1{
		font-size: 180%;
	}
}
/*==========================================
 Static navbar
===========================================*/
.navbar-default{			/* 背景色 */
	background: #f2eee2;
}
.navbar .nav {
margin: 0;
display: table;
width: 100%;
}

@media (min-width: 768px) {	/* PC時 */
	.navbar .nav li {
	font-size: 100%;
	display: table-cell;	/* 要素を横並びにする */
	float: none;
	}

	.navbar .nav li a {
	text-align: center;
	border-left: 1px solid rgba(255, 255, 255, .75);
	border-right: 1px solid rgba(0, 0, 0, .1);
	}
 
	.navbar .nav li:last-child a {
	border-right: 0;
	border-radius: 0 3px 3px 0;
	}
	
	.navbar .nav li a:hover {
	text-decoration: none;
	background: #fffacd;
	}

	.navbar .dropdown-menu li{	/* 子階層メニュー設定 */
	display: block;
	}

	.navbar .dropdown-menu li a {	/* 子階層メニュー設定 */
	text-align: left;
	}
}
/*==========================================
 Bootstrapのパンくずリスト
===========================================*/
.breadcrumb {
  background: transparent;
  margin: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  font-size: 77%;
}
.breadcrumb li+li:before {
  content:'»';
}
#breadcrumbs{
	background: #bf0000;
}
/*==========================================
 クロールしたら「トップへ戻るボタン」を表示
===========================================*/
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
}
#page-top a {
	background: #666;
	text-decoration: none;
	color: #fff;
	width: 100px;
	padding: 30px 0;
	text-align: center;
	display: block;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
	background: #999;
}
/*==========================================
 <footer>
===========================================*/
.footer {
  /*	background: #f2eee2;	*/
  border-top: 2px solid #e1d4b9;
  border-bottom: 5px solid #e1d4b9;
}

.footer .container {
  padding: 10px 0;
}

.footer-nav {
  margin: 0;
  color: #f22000;
}

@media screen and (min-width: 768px) {
  .footer-nav>div {
    float: left;
    max-width: 50%;
  }
}

@media screen and (min-width: 992px) {
  .footer-nav>div {
    max-width: 25%;
    text-align: left;
  }
}

.footernav-title {
  font-size: 16px;
  margin: 0;
  padding: 10px 0;
  border-bottom: 1px solid #cccccc;
}

.footernav-title .glyphicon-chevron-down:before {
  margin-right: 10px;
}

@media screen and (min-width: 768px) {
  .footernav-title .glyphicon-chevron-down:before {
    display: none;
  }
}

.list-group {
  margin-bottom: 0;
}

.list-group a {
  font-size: 90%;
  position: relative;
  display: block;
  padding: 3px 10px;
  color: #b13b2f;
}
@media (min-width: 768px) {	/* PC時 */
	.list-group a {
	padding: 1px 10px;
	}
}

.list-group a:hover {
  text-decoration: none;
  color: #6aaae6;
}

.footer-logo {
  margin-top: 20px;
}
.footer-address{
	color: #000000;
	font-size: 90%;
}
.footer-address-info{
  	margin-top: 5px;
	font-size: 90%;
	line-height: 1.3em;
	letter-spacing: 0.05em;
}

.footer-icon .container {
  list-style-type: none;
}

.copyright {
	padding: 10px 0px 0px 0px;
  	text-align: center;
  	color: #726f55;
	font-size: 90%;
}


.footer-logo {
	margin: 0 auto ;
	padding: 0px 0px 0px 0px;
	text-align: center;
	line-height: 1.4em;
}
.footer-logo-img {
	max-width: 60%;
	height: auto ;
	margin: 10px auto ;
}
.footer-logo-address{
	padding: 0px 5px 0px 5px;
	font-size: 90%;
}
@media (min-width: 768px) {	/* PC時 */
	.footer-logo-img {
	max-width: 25%;
	height: auto ;
	margin: 10px auto ;
	}
	.footer-logo-address{
	}
}
/*==========================================
 table Section
===========================================*/
.bdr_sNone{ border-style: none; }		/* Table 枠線を消す */
.prTbl{
	margin:				10px 0px 20px 0px;
	padding:			0px 0px 0px 0px;
	width:				100%;
}
.prTbl-td1, .prTbl-td2, .prTbl-td3, .prTbl-th3{
	margin:				0px 0px 0px 0px;
	line-height:		1.5em;
	letter-spacing:		0.1em;
	/*	vertical-align:	*/		middle;		/* TBL 中央揃え */
	vertical-align:		top;			/* TBL 上詰め */
}
.prTbl-td1, .prTbl-td2{
	border: none;						/* Table 枠線を消す */
}
.prTbl-td1, .prTbl-td3, .prTbl-th3{
	text-align: center;
}
.prTbl-th3{
  background-color: #eee;
}

/*==========================================
 table-ve(vertically：縦に)
===========================================*/
.table-ve {
  border-collapse: collapse;
  width: 100%;
}
.table-ve th,
.table-ve td {
  padding: 10px;
  border: 1px solid #999;
  background: #ffffff
}
.table-ve th {
  background-color: #eee;
  text-align: center;
  width: 20%;
}

@media screen and (max-width: 400px) {
  .table-ve {
    border-top: 1px solid #999;
  }
  .table-ve td {
    display: block;
    text-align: left;
  }
  .table-ve th {
    display: block;
    border-top: none;
    border-bottom: none;
    width: 100%;
  }
}
/*==========================================
 <section class="***">
===========================================*/
.wrapper0 {
	/*	background-color: #eee;	*/
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.wrapper {
	padding: 0 10px;
}
.wrapper, .wrapper2, .wrapper3 {
	font-size: 90%;
	width: auto;
	margin: 0 auto;
	box-sizing: border-box;
}
@media (min-width: 768px) {	/* PC時 */
.wrapper {
	font-size: 100%;
	width: 1024px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	}
}
.wrapper2, .wrapper3 {
	font-size: 100%;
	margin: 0px 0px 30px 0px;
	padding: 0px 0px 0px 0px;
	border-top: 1px solid #be9756;
	border-bottom: 1px solid #be9756;
}
.wrapper2{ background: #f7f6f0; }
.wrapper3{ background: #000000; }
/*==========================================
 スクロールに合わせてふわっと表示させる
 ■使用方法　<div class="fadein">
===========================================*/
.fadein {
    opacity : 0;
    transform : translate(0px, 100px);
    transition : all 600ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}
/*==========================================
 インフレーム 対応
===========================================*/
.gmap-css-responsive {
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
}
@media (min-width: 768px) {	/* PC時 */
  .gmap-css-responsive {
  	height: 500px;
  }
}
.gmap-css-responsive iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}