@charset "UTF-8";
/*position:absoluteは高さを失うので擬似要素:beforeで対処*/
/*animationの設定は@mediaクエリの外*/
@media screen and (min-width: 481px) { /*タブレットより大きいサイズ*/ }
@media screen and (min-width: 769px) { /*PC*/ }
/* line 12, ../sass/style-for-pc.scss */
html { font-family: "Futura", "Meiryo", "Yu Gothic", sans-serif; font-size: 62.5%; /*基本のサイズを10px*/ line-height: 2; margin: 0 !important; padding: 0 !important; }
/* line 18, ../sass/style-for-pc.scss */
html * { box-sizing: border-box; font-size: 1.2rem; line-height: 2; letter-spacing: .1em; color: #000000; }
/* line 25, ../sass/style-for-pc.scss */
html body, html ul, html li, html h1, html h2, html h3, html h4, html h5, html h6, html p { margin: 0; padding: 0; }
/* line 26, ../sass/style-for-pc.scss */
html h4 { font-size: 2.4rem; font-weight: normal; color: #FD6600; margin-bottom: 32px; }
/* line 32, ../sass/style-for-pc.scss */
html a { text-decoration: none; color: #000000; }
/* line 35, ../sass/style-for-pc.scss */
html a:hover { color: #666666; }
/* line 37, ../sass/style-for-pc.scss */
html a:hover img { opacity: .8; filter: alpha(opacity=80); /* ie lt 8 */ -ms-filter: "alpha(opacity=80)"; /* ie 8 */ -moz-opacity: .8; /* FF lt 1.5, Netscape */ -khtml-opacity: .8; /* Safari 1.x */ zoom: 1; }
/* line 47, ../sass/style-for-pc.scss */
html img { width: 100%; height: auto; line-height: 1; vertical-align: bottom; }
/* line 53, ../sass/style-for-pc.scss */
html li { list-style: none; }
/* line 54, ../sass/style-for-pc.scss */
html th, html td { text-align: left; vertical-align: top; padding: 8px; }
/* line 59, ../sass/style-for-pc.scss */
html .fs12 { font-size: 1.2rem !important; }
/* line 60, ../sass/style-for-pc.scss */
html .fs14 { font-size: 1.4rem !important; }
/* line 61, ../sass/style-for-pc.scss */
html .fs16 { font-size: 1.6rem !important; }
/* line 62, ../sass/style-for-pc.scss */
html .fs18 { font-size: 1.8rem !important; }
/* line 63, ../sass/style-for-pc.scss */
html .fw-b { font-weight: bold !important; }
/* line 64, ../sass/style-for-pc.scss */
html .logoArea { max-width: 214px; text-align: center; }
/* line 68, ../sass/style-for-pc.scss */
html .logo40 { max-width: 214px; margin: 2.4rem 0; }
/* line 72, ../sass/style-for-pc.scss */
html .logo40c { max-width: 214px; margin: 2.4rem auto; }
/* line 76, ../sass/style-for-pc.scss */
html .reserveBtn { display: inline-block; max-width: 187px; }
@media screen and (max-width: 768px) { /* line 12, ../sass/style-for-pc.scss */
  html { /*SP*/ }
  /* line 83, ../sass/style-for-pc.scss */
  html .pcv { display: none !important; } }
/* line 85, ../sass/style-for-pc.scss */
html .box-w-50par { width: 50%; }
@media screen and (min-width: 769px) { /* line 12, ../sass/style-for-pc.scss */
  html { /*PC*/ }
  /* line 88, ../sass/style-for-pc.scss */
  html .spv { display: none !important; }
  /* line 89, ../sass/style-for-pc.scss */
  html .adapt-flex { display: flex; justify-content: space-between; align-items: center; } }
/* line 95, ../sass/style-for-pc.scss */
html .container { width: 100%; height: 100vh; }
/* line 98, ../sass/style-for-pc.scss */
html .container header { position: fixed; width: 100%; background-color: #ffffff; z-index: 1; /*opacity: .8;*/ }
/* line 104, ../sass/style-for-pc.scss */
html .container header .hd-inner { display: flex; justify-content: space-between; align-items: center; max-width: 1464px; margin: 0 auto; padding: 24px 24px 8px; }
@media screen and (min-width: 769px) { /* line 104, ../sass/style-for-pc.scss */
  html .container header .hd-inner { /*PC*/ padding-bottom: 24px; } }
/* line 115, ../sass/style-for-pc.scss */
html .container header .hd-inner nav { margin-top: 24px; }
@media screen and (min-width: 769px) { /* line 115, ../sass/style-for-pc.scss */
  html .container header .hd-inner nav { /*PC*/ margin-top: 0; } }
/* line 121, ../sass/style-for-pc.scss */
html .container header .hd-inner nav li { display: inline-block; line-height: 1; font-size: 1.4rem; }
@media screen and (max-width: 768px) { /* line 121, ../sass/style-for-pc.scss */
  html .container header .hd-inner nav li { width: 32%; text-align: center; margin-bottom: 16px; } }
@media screen and (min-width: 769px) { /* line 121, ../sass/style-for-pc.scss */
  html .container header .hd-inner nav li { /*PC*/ margin-left: 40px; } }
/* line 139, ../sass/style-for-pc.scss */
html .container .mainImgArea { padding-top: 190px; }
@media screen and (min-width: 769px) { /* line 139, ../sass/style-for-pc.scss */
  html .container .mainImgArea { padding-top: 110px; } }
/* line 143, ../sass/style-for-pc.scss */
html .container main { display: grid; row-gap: 24px; }
@media screen and (min-width: 769px) { /* line 143, ../sass/style-for-pc.scss */
  html .container main { /*PC*/ row-gap: 80px; padding-top: 80px; } }
/* line 151, ../sass/style-for-pc.scss */
html .container main .description { background-color: #FEB889; opacity: .8; }
/* line 154, ../sass/style-for-pc.scss */
html .container main .description .descri-inner { max-width: 1072px; margin: 0 auto; padding-top: 24px; padding-bottom: 24px; }
/* line 159, ../sass/style-for-pc.scss */
html .container main .description .descri-inner > div { margin: 24px; }
@media screen and (min-width: 769px) { /* line 154, ../sass/style-for-pc.scss */
  html .container main .description .descri-inner { /*PC*/ display: flex; justify-content: center !important; align-items: center; }
  /* line 165, ../sass/style-for-pc.scss */
  html .container main .description .descri-inner > div { margin: 0 40px 0 0; } }
/* line 167, ../sass/style-for-pc.scss */
html .container main .description .descri-inner .descri-img img { max-width: 428px; }
/* line 168, ../sass/style-for-pc.scss */
html .container main .description .descri-inner .descri-inner-md h3 { font-size: 2.4rem; line-height: 1.2; color: #FD6600; padding-top: 8px; padding-bottom: 8px; }
/* line 174, ../sass/style-for-pc.scss */
html .container main .description .descri-inner .descri-inner-md h3 span { vertical-align: middle; color: #FD6600; }
/* line 181, ../sass/style-for-pc.scss */
html .container main article { max-width: 1464px; margin: 0 auto; padding-top: 24px; padding-bottom: 24px; }
/* line 187, ../sass/style-for-pc.scss */
html .container main .itemTxt { margin: 16px 32px 32px; padding: 32px; border-bottom: 1px solid #000000; background-color: rgba(255, 255, 255, 0.4); }
/* line 192, ../sass/style-for-pc.scss */
html .container main .itemTxt .toLink { margin-top: 16px; text-align: right; }
/* line 197, ../sass/style-for-pc.scss */
html .container main .subPageLead { text-align: center; }
/* line 200, ../sass/style-for-pc.scss */
html .container main .aboutImgBox, html .container main .serviceImgBox { display: grid; }
@media screen and (min-width: 769px) { /* line 200, ../sass/style-for-pc.scss */
  html .container main .aboutImgBox, html .container main .serviceImgBox { grid-template-columns: repeat(3, 1fr); } }
/* line 205, ../sass/style-for-pc.scss */
html .container main .aboutImgBox > div, html .container main .serviceImgBox > div { padding: 8px; }
/* line 206, ../sass/style-for-pc.scss */
html .container main .aboutImgBox .aboutImgBoxLv1, html .container main .serviceImgBox .aboutImgBoxLv1 { display: grid; row-gap: 16px; }
/* line 210, ../sass/style-for-pc.scss */
html .container main .aboutImgBox .aboutImgBoxLv2, html .container main .serviceImgBox .aboutImgBoxLv2 { display: grid; column-gap: 16px; row-gap: 16px; }
@media screen and (max-width: 768px) { /* line 210, ../sass/style-for-pc.scss */
  html .container main .aboutImgBox .aboutImgBoxLv2, html .container main .serviceImgBox .aboutImgBoxLv2 { grid-template-columns: 1fr 1fr; } }
/* line 218, ../sass/style-for-pc.scss */
html .container main .aboutImgBox .aboutImgBoxLv3, html .container main .serviceImgBox .aboutImgBoxLv3 { display: grid; grid-template-columns: 2fr 1fr; column-gap: 16px; }
/* line 224, ../sass/style-for-pc.scss */
html .container main .aboutCont { align-items: flex-start; }
/* line 226, ../sass/style-for-pc.scss */
html .container main .aboutCont > div { margin: 24px; }
/* line 227, ../sass/style-for-pc.scss */
html .container main .aboutCont .shopInfo { flex: 1; padding: 24px; border-top: 1px solid #000000; border-bottom: 1px solid #000000; }
@media screen and (max-width: 768px) { /* line 233, ../sass/style-for-pc.scss */
  html .container main .aboutCont .shopInfo th, html .container main .aboutCont .shopInfo td { display: block; width: 100%; }
  /* line 237, ../sass/style-for-pc.scss */
  html .container main .aboutCont .shopInfo th { line-height: 1; padding-bottom: 0; } }
/* line 242, ../sass/style-for-pc.scss */
html .container main .aboutCont .shopInfo .shopInfoBt { margin-top: 16px; }
/* line 244, ../sass/style-for-pc.scss */
html .container main .aboutCont .shopInfo .shopInfoBt .shopInfoPhone a { font-size: 2.4rem; letter-spacing: .05em; color: #FD6600; padding-left: 16px; }
/* line 252, ../sass/style-for-pc.scss */
html .container main .aboutCont .shopMap { flex: 2; position: relative; padding-top: 80%; }
@media screen and (min-width: 769px) { /* line 252, ../sass/style-for-pc.scss */
  html .container main .aboutCont .shopMap { padding-top: 40%; } }
/* line 259, ../sass/style-for-pc.scss */
html .container main .aboutCont .shopMap iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* line 268, ../sass/style-for-pc.scss */
html .container main .serviceMenu { text-align: center; }
/* line 270, ../sass/style-for-pc.scss */
html .container main .serviceMenu table { display: inline-block; }
/* line 271, ../sass/style-for-pc.scss */
html .container main .serviceMenu th, html .container main .serviceMenu td { font-size: 2.4rem; color: #FD6600; }
@media screen and (min-width: 769px) { /* line 143, ../sass/style-for-pc.scss */
  html .container main { /*PC*/ }
  /* line 278, ../sass/style-for-pc.scss */
  html .container main .imgL, html .container main .imgR { display: flex; align-items: flex-end; }
  /* line 280, ../sass/style-for-pc.scss */
  html .container main .imgL .itemImg { order: 1; flex: 3; }
  /* line 284, ../sass/style-for-pc.scss */
  html .container main .imgL .itemTxt { order: 2; flex: 1; }
  /* line 290, ../sass/style-for-pc.scss */
  html .container main .imgR .itemImg { order: 2; flex: 3; }
  /* line 294, ../sass/style-for-pc.scss */
  html .container main .imgR .itemTxt { order: 1; flex: 1; } }
/* line 301, ../sass/style-for-pc.scss */
html .container .topPage { background-image: url(../images/img-bg-top.jpg); background-repeat: no-repeat; background-position: top; }
/* line 306, ../sass/style-for-pc.scss */
html .container .subPageAbout, html .container .subPageService { max-width: 1464px; margin: 0 auto; background-repeat: no-repeat; background-position: top; }
/* line 312, ../sass/style-for-pc.scss */
html .container .subPageAbout { background-image: url(../images/img-bg-sub-about.jpg); }
/* line 315, ../sass/style-for-pc.scss */
html .container .subPageService { background-image: url(../images/img-bg-sub-service.jpg); }
/* line 318, ../sass/style-for-pc.scss */
html .container footer { margin-top: 80px; }
/* line 320, ../sass/style-for-pc.scss */
html .container footer .ft-inner { max-width: 960px; margin: 0 auto; padding: 24px; }
/* line 325, ../sass/style-for-pc.scss */
html .container footer .ft-inner .ft-nav .btMenu { margin-top: 4.8rem; }
/* line 329, ../sass/style-for-pc.scss */
html .container footer .ft-inner .ft-nav li { display: inline-block; margin: 0 2.4rem; }
/* line 335, ../sass/style-for-pc.scss */
html .container footer address { text-align: center; padding-top: 2.4rem; padding-bottom: 2.4rem; border-top: 1px solid #333333; }
