@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; */}


@media screen and (min-width: 768px),print {
/* 画像のスタイルを明確に設定 */
img {
   max-width: 100%;
   height: auto;
}

/* bese */
body { background-color: #FFFFFF; font-size: 16px; overflow-x: hidden; line-height: 1.6; letter-spacing: 0.8px; color: #343434;max-width: 1920px;width: 100%;margin-inline: auto;}
header{position:relative;max-width: 1920px;background: #F0E8D3;}
header .header-logo{
    position: relative;
    z-index: 10;
}

.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: 20px;z-index: 60; width: 100%; display: none; }
.side-fix .btn-frame{width: 750px;margin: 0 auto;}
.open-main-Box{ width: 1200px; margin: 0 auto; text-align: center; }

footer {
   background:#884C32;
   position: relative;
 }
 footer::before {
   content: "";
   position: absolute;
   top: -120px;
   left: 0;
   width: 100%;
   background: url(../images/common/footer-bg.png) no-repeat center center;
   height: 200px;
 }
 footer .footer-inner {
   width: min(95%, 1054px);
   margin-inline: auto;
   padding: 9px 0 55px;
   display: grid;
   grid-template-columns: 47.43% 46.39%;
   gap: 65px;
   position: relative;
 }
 footer .address-box {
   background: #FFFFFF;
   border-radius: 30px;
   padding: 44px 53px 31px;
   margin-top: -48px;
 }
 footer .name {
   font-size: 18px;
   letter-spacing: 0em;
   font-weight: 700;
   color: #4D4D4D;
   margin: 23px 0 0;
   text-align: center;
 }
 footer .address {
   font-size: 16px;
   letter-spacing: 0em;
   font-weight: 700;
   color: #4D4D4D;
   text-align: center;
   margin: 5px 0 0;
 }
 footer .tel-box .open {
   margin-top: 28px;
 }
 footer .tel-box .desc {
   color: #FFFFFF;
   font-size: 16px;
   letter-spacing: 0em;
   font-weight: 500;
   text-align: right;
   margin: 9px 0 0;
 }
.copyright {
   background-color: #FFFFFF;
   text-align: center;
   font-size: 16px;
   line-height: 2.9375;
   letter-spacing: 0.05em;
   font-weight: 500;
   display: block;
   padding: 24px 0 160px;
 }


 .fix-btn{width: 1000px;margin: 0 auto;position: fixed;bottom: 20px;left:0;right: 0;z-index: 10;}
 .fix-btn ul{
  -webkit-box-orient:horizontal;-webkit-box-direction:normal;
  -ms-flex-wrap: wrap;flex-wrap: wrap;
  display:-webkit-box;display:-ms-flexbox;display:flex;
justify-content: center;align-items: center; }
 .fix-btn li{margin:0 5px 0 5px;}

 .fix-btn {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.fix-btn.show {
  opacity: 1;
  visibility: visible;
}


/*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;}


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 (min-width:768px) and (max-width:1000px) {
   footer {
      background:#884C32;
      position: relative;
    }
    footer::before {
      content: "";
      position: absolute;
      top: -10vw;
      left: 0;
      width: 100%;
      background: url(../images/common/footer-bg.png) no-repeat center center/ cover;
      height: 20vw;
    }
    footer .footer-inner {
      width: min(95%, 1054px);
      margin-inline: auto;
      padding: 0.9vw 0 5.5vw;
      display: grid;
      grid-template-columns: 47.43% 46.39%;
      gap: 6.5vw;
      position: relative;
    }
    footer .address-box {
      background: #FFFFFF;
      border-radius: 3vw;
      padding: 4.4vw 5.3vw 3.1vw;
      margin-top: -4.8vw;
    }
    footer .name {
      font-size: 1.8vw;
      letter-spacing: 0em;
      font-weight: 700;
      color: #4D4D4D;
      margin: 2.3vw 0 0;
      text-align: center;
    }
    footer .address {
      font-size: 1.6vw;
      letter-spacing: 0em;
      font-weight: 700;
      color: #4D4D4D;
      text-align: center;
      margin: 0.5vw 0 0;
    }
    footer .tel-box .open {
      margin-top: 2.8vw;
    }
    footer .tel-box .desc {
      color: #FFFFFF;
      font-size: 1.6vw;
      letter-spacing: 0em;
      font-weight: 500;
      text-align: right;
      margin: 0.9vw 0 0;
    }
   .copyright {
      background-color: #FFFFFF;
      text-align: center;
      font-size: 1.6vw;
      line-height: 2.9375;
      letter-spacing: 0.05em;
      font-weight: 500;
      display: block;
      padding: 2.4vw 0 12vw;
    }
}


@media screen and (min-width:768px) and (max-width:1000px) {
  .fix-btn { width: 100vw; margin: 0 auto; position: fixed; bottom: 2vw; left: 0; right: 0; z-index: 10; }
  .fix-btn ul { 
    -webkit-box-orient: horizontal; 
    -webkit-box-direction: normal; 
    -ms-flex-wrap: wrap; 
    flex-wrap: wrap; 
    display: -webkit-box; 
    display: -ms-flexbox; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
  }
  .fix-btn li { margin: 0 0.5vw 0 0.5vw; }
  .fix-btn li img{ width: 40vw;}

  .fix-btn {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
  
  .fix-btn.show {
    opacity: 1;
    visibility: visible;
  }
}


@media screen and (max-width: 767px) {
html{ font-size:62.5%;}
body { background-color: #FFFFFF; overflow-x: hidden; font-size: 3.6vw; -webkit-text-size-adjust: 100%;line-height: 1.6;color: #343434;}
.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{position: fixed;bottom: 5vw;z-index: 60; width: 100%; display: none; }
.side-fix .btn-frame{width: 90vw; margin: 0 auto;}

#pc-menu-open{ display: none; }
#g-nav{ display: none; }

header{position:relative;max-width:100%;z-index: 5;background: #FFFFFF;padding: 4.36vw 0;}
header .header-logo{width: 71.3vw;margin-inline: auto;}
header .header-logo img { width: 100%; }


.side-fix{ }
.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 { }

.fix-list{display: none;}

footer {
   background:#884C32;
   position: relative;
 }
 footer::before {
   content: "";
   position: absolute;
   top: -8vw;
   left: 0;
   width: 100%;
   background: url(../images/common/footer-bg_sp.png) no-repeat center center / cover;
   height: 20vw;
 }
 footer .footer-inner {
   width: min(95%, 89.4vw);
   margin-inline: auto;
   padding: 9vw 0 8.8vw;
   position: relative;
 }
 footer .address-box {
   background: #FFFFFF;
   border-radius: 3vw;
   padding: 8vw 2vw 6vw;
   margin-top: -2vw;
 }
 footer .footer-logo {
   width: 77.4vw;
   margin: 0 auto;
 }
 footer .name {
   font-size:4.348vw;
   letter-spacing: 0em;
   font-weight: 700;
   color: #4D4D4D;
   margin: 4vw 0 0;
   text-align: center;
 }
 footer .address {
   font-size:3.865vw;
   letter-spacing: 0em;
   font-weight: 700;
   color: #4D4D4D;
   text-align: center;
   margin: 1vw 0 0;
 }
 footer .tel-box {
   margin-top: 10vw;
   text-align: center;
 }
 footer .tel-box .open {
   margin-top: 6vw;
 }
 footer .tel-box .desc {
   color: #FFFFFF;
   font-size:3.865vw;
   letter-spacing: 0em;
   font-weight: 500;
   text-align: center;
   margin: 3vw 0 0;
 }
.copyright {
   background-color: #FFFFFF;
   text-align: center;
   font-size:2.898vw;
   line-height: 2.9375;
   letter-spacing: 0.05em;
   font-weight: 500;
   display: block;
   padding: 2vw 0;
 }


 .fix-btn{width: 100%; margin: 0 auto;position: fixed;bottom: 0px;left:0;right: 0;z-index: 100;}
 .fix-btn ul{
  -webkit-box-orient:horizontal;-webkit-box-direction:normal;
  -ms-flex-wrap: wrap;flex-wrap: wrap;
  display:-webkit-box;display:-ms-flexbox;display:flex;
justify-content: center;align-items: center; }
 .fix-btn li{}
 .fix-btn li img{width: 50vw;}

 .fix-btn {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.fix-btn.show {
  opacity: 1;
  visibility: visible;
}


.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;}
}