@charset "UTF-8";

/* CSS Document */

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

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, strong, sub, sup, tt, var,
b, u, i, center,
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;	box-sizing:border-box;}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {	display: block;}
body {	line-height: 1;}
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; */}
img{vertical-align: bottom;max-width: 100%;height: auto;}


@media screen and (min-width: 768px), print {
   /* bese */
body {background-color: #fff;font-size: 16px;overflow-x: hidden;line-height: 1.6;letter-spacing: 0.8px; color: #282826;}
header{max-width: 1920px;position: relative;margin: 0 auto;z-index: 10;}
header .header-logo{position: absolute; top:0; left:-2vw;}
header .h-menu{ display: none;}

.pc-menu{position: fixed;top: 19px;right: 12px;z-index: 9999;}
.pc-menu:hover{ opacity: 0.8; cursor: pointer; cursor: hand;}

.side-fix{position: fixed;bottom: 25px;right: 0;left: 0;width: 1000px;z-index: 50;margin: 0 auto; display: none;}
.side-fix ul{width: 1100px;margin: 0 auto;-ms-flex-wrap: wrap;flex-wrap: wrap;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;justify-content: center;}
.side-fix ul li{margin: 0 80px 0 -20px;}
.side-fix ul li img{width: 430px;filter: drop-shadow(3px 3px 10px rgba(0, 0, 0, 0.4));}

#pc-menu-open{ display: none; background: #f8f8f8; width: 100vw; height: 100vh; position: fixed; top: 0; z-index: 10000; overflow-y: scroll; }
#pc-menu-open .open-close-01{ position: absolute; top: 0; right: 0; }
#pc-menu-open { background: #ccc; padding: 80px 0; line-height: 1.6; }
#pc-menu-open  .menu-open-Box{ width: 1100px; margin: 0 auto; font-size: 16px;}
#pc-menu-open  .f-link-Box{ width: 770px; float: left;  }
#pc-menu-open  .f-link-Box .f-home-link { margin-bottom: 40px;}
#pc-menu-open  .f-link-Box .f-home-link::before { content: "■ "; }
#pc-menu-open  .f-link-Box .parent{ font-size: 14px; color: #fff; }
#pc-menu-open  .f-link-Box .child{ font-size: 14px;}
#pc-menu-open  .f-link-Box .child::before{ content: "- "; padding-right: 5px;}
/*#pc-menu-open  .f-link-Box li::before{ content: "> "; }*/
#pc-menu-open  .f-link-Box li{ margin-bottom: 10px; }
#pc-menu-open  .f-link-l{ float: left; width: 180px; margin-right: 40px; }
#pc-menu-open  .f-link-c{ float: left; width: 180px; margin-right: 40px }
#pc-menu-open  .f-link-r{ float: left; width: 180px; }
#pc-menu-open  .menu-open-con-Box{ width: 320px; float: left; }
#pc-menu-open  .menu-open-con-Box .sns-list{display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;-webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.open-main-Box{ width: 1200px; margin: 0 auto; text-align: center; }




footer .footer-inner{
   padding: 0 0 100px;
}
footer .footer-inner .footer-logo{
   text-align: center;
}
footer .footer-inner .footer-address{width: 785px;position: relative;padding: 14px 0 0 0;margin: 0 auto;}
footer .footer-inner .footer-address .footer-name {
   text-align: center;
   position: relative;
}
footer .footer-inner .footer-address .footer-name::after {
   content: "";
   display: block;
   width: 40px;
   height: 2px;
   background-color: #927D25;
   margin: 25px auto 0;
}
footer .footer-inner .footer-address .footer-telframe {
   text-align: center;
}
footer .footer-inner .footer-address .footer-telframe .subt{
   font-size: 16px;
   font-weight: 500;
   line-height: 4.6;
   letter-spacing: 0.1em;
}
footer .footer-inner .footer-address .footer-telframe .tel{
   margin: 0 0 21px 0;
}
footer .footer-inner .footer-address .telxtxt{
   font-size: 14px;
   font-weight: 500;
   line-height: 1.71428;
   letter-spacing: 0.05em;
   text-align: center;
}
footer .footer-inner .footer-address .telxtxt .teltxt-frame{
   border: 1px solid #595656;
   text-align: center;
   width: 78px;
   display: inline-block;
   margin-right: 14px;
}
footer .copy-frame{
   background-color: #F0F0EE;
   padding: 20px 0 160px;
}
footer .copyright{display: block;font-size: 14px;line-height: 1.85714;letter-spacing: 0.05em;text-align: center;}
footer .copy-txt{display: block;font-size: 10px;line-height: 2;letter-spacing: 0.05em;text-align: center;}



/*pc・タブレットcss*/
/*pc_defaultset*/
.pc { display: block !important; }
/*pcのみ表示ブロック*/
.pc2 { display: inline-block !important; }
/*pcのみ表示ブロック*/
.sp, .sp2 { display: none !important; }
/*スマホのみ表示ブロック*/
.h_menu { display: none; }
/*スマホ用ヘッダ*/
.sp-header { display: none; }
/*スマホ用メニュー*/
#sp-global-nav { display: none; }
/*スマホ用メニュー*/
.sp-fix-list { display: none; }
/* Antialiasing ※任意　*/
     
html { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: none; overflow-x: hidden; }
 
/* WEB FONTs 游ゴシックかすれ予防*/
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }
.f-min { font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }
.f-min-02 { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3","Sawarabi Mincho","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
.f-gothic { font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
.f-gothic-02{ font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-style: normal;}

body { -webkit-text-size-adjust: 100%; }
img { vertical-align: bottom; }
a { text-decoration: none; color: #090909; }
a:hover { text-decoration: underline; }
.nobd a:hover { text-decoration: none !important; }

   
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }
/* リンク透明にしない */
.noop a img:hover { -ms-filter: "alpha( opacity=100 )"; filter: alpha(opacity=100); opacity: 1.0; }
/*---------------------------------------- 　　外部サービス ----------------------------------------*/
/* ggmap */
/* <div class="ggmap">iframeのコピーしたコード</div> */
.ggmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; }
.ggmap iframe, .ggmap object, .ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* <div class="youtube"><iframe  src="youtubeのURL?rel=0" frameborder="0" allowfullscreen></iframe></div> */
.youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }
/*---------------------------------------- 　　webフォント（サーバー置き）　 ----------------------------------------*/
@font-face { font-family: 'jp-sttl01';
src: url("../font/.eot");
/* IE9以上用 */
src: url("../font/bokutachi.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.woff") format("woff");
/* iOS, Android用 */
/* 念の為指定しておきます */
font-weight: normal;
/* 念の為指定しておきます */
font-style: normal; vertical-align: top; margin: 0px; padding: 0px; }
.myWebFontClass { font-family: 'jp-sttl01'; }
}


@media screen and (max-width: 1200px) {
html { overflow: auto; }
body { overflow: visible; }
}


@media screen and (min-width:768px) and (max-width:1920px){
header{max-width:100%;position:relative;margin:0 auto;z-index:10;}
header .header-logo{position:absolute;top:10px;left:30px;width: 15vw;}
header .h-menu{display:none;}
} 


@media screen and (min-width:768px) and ( max-width:1300px) {
.side-fix{position: fixed;bottom: 25px;right: 0;left: 0;width: 100%; z-index: 50;margin: 0 auto; display: none;}
.side-fix ul{width: 100%;  margin: 0 auto;}
.side-fix ul li{margin: 0 20px 0 20px;}
.side-fix ul li img{width: 36vw;filter: drop-shadow(3px 3px 10px rgba(0, 0, 0, 0.4));}
}


@media screen and (min-width:768px) and (max-width:1280px){
   footer .footer-inner {
      padding: 0 0 5.21vw;
    }
    footer .footer-inner .footer-logo {
      text-align: center;
    }
    footer .footer-inner .footer-address {
      width: 90vw;
      position: relative;
      padding: 0.73vw 0 0 0;
      margin: 0 auto;
    }
    footer .footer-inner .footer-address .footer-name {
      text-align: center;
      position: relative;
    }
    footer .footer-inner .footer-address .footer-name::after {
      content: "";
      display: block;
      width: 2.08vw;
      height: 0.1vw;
      background-color: #927D25;
      margin: 1.3vw auto 0;
    }
    footer .footer-inner .footer-address .footer-telframe {
      text-align: center;
    }
    footer .footer-inner .footer-address .footer-telframe .subt {
      /* font-size: 0.83vw; */
      font-weight: 500;
      line-height: 4.6;
      letter-spacing: 0.25vw;
    }
    footer .footer-inner .footer-address .footer-telframe .tel {
      margin: 0 0 1.09vw 0;
    }
    footer .footer-inner .footer-address .telxtxt {
      /* font-size: 0.73vw; */
      font-weight: 500;
      line-height: 1.71;
      letter-spacing: 0.13vw;
      text-align: center;
    }
    footer .footer-inner .footer-address .telxtxt .teltxt-frame {
      border: 0.05vw solid #595656;
      text-align: center;
      /* width: 4.06vw; */
      display: inline-block;
      margin-right: 0.73vw;
    }
    footer .copy-frame {
      background-color: #F0F0EE;
      padding: 2.5vw 0 20vw;
   }
    footer .copyright {
      display: block;
      /* font-size: 0.73vw; */
      line-height: 1.86;
      letter-spacing: 0.13vw;
      text-align: center;
    }
    footer .copy-txt {
      display: block;
      /* font-size: 0.52vw; */
      line-height: 2;
      letter-spacing: 0.13vw;
      text-align: center;
      width: 80vw;
      margin: 0 auto;
    }
}





@media screen and (max-width: 767px) {
html{ font-size:62.5%;}
body {background-color: #fff;overflow: hidden;font-size: 3.6vw;font-family: sans-serif;-webkit-text-size-adjust: 100%;line-height: 1.6;}
.pc, .pc2 { display: none !important; }
/*pcのみ表示ブロック*/
.sp { display: block !important; }
/*スマホのみ表示ブロック*/
.sp2 { display: inline-block !important; }
/*スマホのみ表示ブロック*/
.no-br { display: none; }
/*スマホでbrを解除したい場合に使用*/
.sp_display_block { display: block !important; }
/*スマホでflexboxを解除したい場合等に使用*/
.pc-menu{ display: none; }
.side-fix{ display: none; }
.fix-list{ display: none; }
#pc-menu-open{ display: none; }


header{position: relative;}
header .header-logo{
   position: absolute;        
   top: 2vw;
   left: 2.7vw;
}
header .header-logo img{width: 33vw;}
header .h-menu {position: fixed;top: 2vw;right: 1vw;width: 13vw;z-index: 997;}
header .h-menu img {height: 11.5vw;width: auto;}

nav#sp-global-nav .h-logo { background: #fff;}
nav#sp-global-nav .h-logo img { height: 13vw; width: auto;}
nav#sp-global-nav { font-size: 3.8vw; z-index: 999; overflow: scroll; position: fixed; top: 0; width: 100vw; height: 100vh; display: none; background-color: #000; box-sizing: border-box; color: #fff; }
nav#sp-global-nav .open-close-01 { position: fixed; top: 0; right: 0; width: 13vw; z-index: 998;}
nav#sp-global-nav .open-close-01 img { height: 13vw; width: auto;}
nav#sp-global-nav .open-color-Box {padding: 10vw 0}
nav#sp-global-nav .open-link { width: 70vw; margin: 0 auto 4vw;}
nav#sp-global-nav .list { margin: 3vw 0 5vw;}
nav#sp-global-nav .list li a { color: #fff; line-height: 1.4; text-decoration: none; padding: 4vw; display: block; border-bottom: 0.2vw solid #fff; }
nav#sp-global-nav .open-close-02 { background: #222; text-align: center; padding: 5vw 3vw; margin: 10vw 5vw 20vw; letter-spacing: 0.5vw;}

nav#sp-global-nav .list-1 {width: 100%;margin: 0 auto 10vw;}
nav#sp-global-nav .list-1 li {border-bottom: 0.2vw solid #fff; padding: 0vw 5vw 2.5vw; margin-bottom: 5vw;}
nav#sp-global-nav .list-1 li a{ color: #fff; display: block;}
nav#sp-global-nav .list-1 .parent{ font-size: 4vw; color: #fff; }
nav#sp-global-nav .list-1 li.parent { border: none!important; margin-bottom: 2vw;}
nav#sp-global-nav .list-1 .child{ font-size: 4vw;position: relative;}
nav#sp-global-nav .list-1 .child::before{ content: "- "; padding-right: 1vw;position: absolute;top: 0vw;left: 2vw;}

.side-fix{ display: none!important; }
.sp-fix-list { position: fixed; bottom: 0; width: 100%; z-index: 996; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: flex-end;}
.sp-fix-list .tel {  }
.sp-fix-list .icon { }



footer .footer-inner {
   padding: 18vw 0 5.21vw;
 }
 footer .footer-inner .footer-logo {
   text-align: center;
   width: 42vw;
   margin: 0 auto;
 }
 footer .footer-inner .footer-address {
   position: relative;
   margin: 5vw auto;
 }
 footer .footer-inner .footer-address .footer-name {
   text-align: center;
   position: relative;
 }
 footer .footer-inner .footer-address .footer-name::after {
   content: "";
   display: block;
   width: 9vw;
   height: 0.1vw;
   background-color: #927D25;
   margin: 6.3vw auto 0;
 }
 footer .footer-inner .footer-address .footer-telframe {
   text-align: center;
 }
 footer .footer-inner .footer-address .footer-telframe .subt {
   font-size: 4.4vw;
   font-weight: 500;
   line-height: 4.2;
 }
 footer .footer-inner .footer-address .footer-telframe .tel {
   margin: 0 0 4.09vw 0;
 }
 footer .footer-inner .footer-address .telxtxt {
  font-size: 3.4vw;
  font-weight: 500;
  line-height: 1.71;
  letter-spacing: 0.01em;
  text-align: left;
  width: 59vw;
  margin: 0 auto;
 }
 footer .footer-inner .footer-address .telxtxt .line{
   display: none;
 }
 footer .footer-inner .footer-address .telxtxt .teltxt-frame {
   border: 0.05vw solid #595656;
   text-align: center;
   width: 19vw;
   display: inline-block;
   margin-left: 20vw;
   margin-bottom: 2vw;
 }
 footer .copy-frame {
   background-color: #F0F0EE;
   padding: 4vw 7vw 24vw;
 }
 footer .copyright {
   display: block;
   font-size:3.382vw;
   line-height: 1.86;
   letter-spacing: 0.13vw;
   text-align: center;
 }
 footer .copy-txt {
   font-size:2.5vw;
   line-height: 2;
   letter-spacing: 0.13vw;
   text-align: center;
 }
 


.fit img { object-fit: cover; }
.wysiwyg img { width: auto !important; height: auto !important; }
html { -webkit-font-smoothing: subpixel-antialiased; -moz-osx-font-smoothing: none; overflow-x: hidden; }
/* WEB FONTs 游ゴシックかすれ予防*/
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 200; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 300; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 400; }
@font-face { font-family: "Yu Gothic"; src: local("Yu Gothic Bold"); font-weight: bold; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 100; }
@font-face { font-family: "Helvetica Neue"; src: local("Helvetica Neue Regular"); font-weight: 200; }
.f-min { font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; }
.f-min-02 { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3","Sawarabi Mincho","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }
.f-gothic { font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック","Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro",  Verdana, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}

*:focus { outline: none!important;}
a { -webkit-tap-highlight-color:rgba(0,0,0,0); cursor:pointer;}

body { -webkit-text-size-adjust: 100%; }
img {vertical-align: bottom;max-width: 100%;height: auto;}
a { text-decoration: none; color: #090909; }
a:hover { text-decoration: underline; }
.nobd a:hover { text-decoration: none !important; }
.clearfix { zoom: 1; }
.clearfix:after { display: block; clear: both; height: 0; visibility: hidden; line-height: 0; content: "."; }


/* img-block */
/* アンカーリンク調整 */
.hideAnchor { display: block; height: 0; overflow: hidden; text-indent: -9999px; margin-top: -2vw; padding-bottom: 2vw; }
/* スクロール縦 */
.scroll-y { box-sizing: border-box; overflow-y: scroll; transform: translateZ(0); }
/* リンク透明 */
a img:hover { -ms-filter: "alpha( opacity=80 )"; filter: alpha(opacity=80); opacity: 0.8; }
/* リンク透明にしない */
.noop a img:hover { -ms-filter: "alpha( opacity=100 )"; filter: alpha(opacity=100); opacity: 1.0; }
/*---------------------------------------- 　　外部サービス ----------------------------------------*/
/* ggmap */
/* <div class="ggmap">iframeのコピーしたコード</div> */
.sp-ggmap { position: relative; padding-bottom: 56.25%; padding-top: 5vw; height: 0; overflow: hidden; }
.sp-ggmap iframe, .sp-ggmap object, .sp-ggmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* <div class="youtube"><iframe  src="youtubeのURL?rel=0" frameborder="0" allowfullscreen></iframe></div> */
.youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

/*---------------------------------------- 　　webフォント（サーバー置き）　 ----------------------------------------*/
@font-face { font-family: 'jp-sttl01';
/* お好きな名前にしましょう */
src: url("../font/.eot");
/* IE9以上用 */
src: url("../font/bokutachi.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium.woff") format("woff"), url("../font/NotoSansCJKjp-Medium.woff") format("woff");
/* iOS, Android用 */
/* 念の為指定しておきます */
font-weight: normal;
/* 念の為指定しておきます */
font-style: normal; vertical-align: top; margin: 0px; padding: 0px; }
.myWebFontClass { font-family: 'jp-sttl01'; }
}
@media screen and (max-height: 450px) {
   /* 高さ450px以下の場合 andoroidのフォーム対策 ストーカーバナー用　*/
	.sp-fix-list{display: none;}
}