@charset "UTF-8";
/* line 10, common.scss */
html, body, #wrapper { width: 100%; max-height: 100%; min-height: 100dvh; max-width: 2560px; margin: auto; }

/* line 11, common.scss */
body { -webkit-text-size-adjust: 100%; margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; line-height: 2; word-break: break-word; font-display: swap; /*font-weight:$base-font-weight; */ color: #231815; font-family: "FOT-筑紫明朝 Pr6N M"; font-size: 16px; }
@media only screen and (max-width: 750px) { /* line 11, common.scss */
  body { font-size: 15px; } }

/* line 13, common.scss */
h1, h2, h3, h4, h5, h6, p, span, em, b, i, dl, dt, dd, ol, ul, li, tr, th, td, div { letter-spacing: 0.05em; font-feature-settings: "palt" 1; /*-webkit-text-stroke-width: 0.25px;*/ }

/* line 14, common.scss */
ul li, ol li { display: inline-block; vertical-align: top; font-size: 16px; font-size: 1rem; line-height: 2rem; }
@media only screen and (max-width: 750px) { /* line 14, common.scss */
  ul li, ol li { font-size: 15px; } }

/* line 15, common.scss */
p, p a, div, ul, ol, li, li a, dl, dt, dt a, dd, dd a, section, span, em, i, strong, b { box-sizing: border-box; }

/* line 16, common.scss */
i { font-style: normal; }

/* line 17, common.scss */
tt { font-family: inherit; }

/* line 21, common.scss */
.flexImg { overflow: hidden; position: relative; }
/* line 22, common.scss */
.flexImg img { width: 100% !important; height: 100% !important; object-fit: cover; }

/* line 25, common.scss */
.mainColor { color: #255a74; }

/* line 26, common.scss */
.bg-mainColor { background-color: #255a74; }

/* line 27, common.scss */
.bd-mainColor { border-color: #255a74; }

/* line 28, common.scss */
.subColor { color: #a5996e; }

/* line 29, common.scss */
.bg-subColor { background-color: #a5996e; }

/* line 30, common.scss */
.bd-subColor { border-color: #a5996e; }

/* line 31, common.scss */
.baseFontColor { color: #231815; }

/* line 35, common.scss */
.jpG { font-family: "FOT-筑紫ゴシック Pr5 M"; }

/* line 36, common.scss */
.jpM { font-family: "FOT-筑紫明朝 Pr6N M"; }

/* line 37, common.scss */
.jpH { font-family: "FOT-筑紫明朝 Pr6N B"; }

/* line 38, common.scss */
.en { font-family: "OptimaNovaLTPro-Light"; letter-spacing: .2em; }

/* line 39, common.scss */
.enG { font-family: "Roboto", sans-serif; }

/* line 40, common.scss */
.enM { font-family: "EB Garamond", serif; }

/* line 47, common.scss */
#wrapper, header, footer { min-width: 1200px; }

/* line 48, common.scss */
#wrapper { text-align: center; background: #fff; overflow: clip; }

/* line 49, common.scss */
main { padding-top: 149px; }

/* line 50, common.scss */
.innerN { max-width: 1100px; margin: auto; }

/* line 51, common.scss */
.inner { max-width: 1200px; margin: auto; }

/* line 53, common.scss */
section { /* text-align:left;*/ }

@media only screen and (max-width: 750px) { /* line 58, common.scss */
  #wrapper, header, footer { min-width: 100%; }
  /* line 59, common.scss */
  #wrapper { overflow-x: hidden; }
  /* line 60, common.scss */
  main { padding-top: 65px; }
  /* line 61, common.scss */
  .inner { max-width: 100%; }
  /* line 62, common.scss */
  .innerM { max-width: 100%; }
  /* line 63, common.scss */
  .innerW { max-width: 100%; } }
/* line 67, common.scss */
a, a:link, a:visited { color: #255a74; text-decoration: none; outline: none; transition: .5s; display: inline-block; }

/* line 68, common.scss */
a:hover { color: rgba(37, 90, 116, 0.5); text-decoration: none; transition: .5s; opacity: .7; }

/* line 69, common.scss */
a img { transition: .5s; }

/*a:hover img{ opacity: 0.6;}*/
/* line 71, common.scss */
*::selection { background: rgba(165, 153, 110, 0.35); color: #fff; }

@media print, screen and (min-width: 751px) { /* line 79, common.scss */
  .sp, .spOnly, .tbOnly { display: none !important; }
  /* line 80, common.scss */
  .pc, .pc-tb { display: inline-block !important; vertical-align: top !important; }
  /* line 81, common.scss */
  .pc-sp { display: inline-block !important; vertical-align: top !important; }
  /* スマホのみtellink有効（init.jsにも要設定） */
  /* line 83, common.scss */
  a[href^="tel:"] { cursor: default; } }
@media only screen and (max-width: 750px) { /* line 90, common.scss */
  .pc, .tbOnly, .pc-tb { display: none !important; margin: 0; padding: 0; width: 0; height: 0; }
  /* line 91, common.scss */
  .sp, .spOnly { display: inline-block !important; vertical-align: top !important; }
  /* line 92, common.scss */
  .pc-sp { display: inline-block !important; vertical-align: top !important; } }
@media screen and (min-width: 601px) and (max-width: 750px) { /* line 99, common.scss */
  .pc, .spOnly { display: none !important; margin: 0; padding: 0; width: 0; height: 0; }
  /* line 100, common.scss */
  .sp, .tbOnly, .pc-tb { display: inline-block !important; vertical-align: top !important; }
  /* line 101, common.scss */
  .pc-sp { display: none !important; margin: 0; padding: 0; width: 0; height: 0; } }
/* Google ICONS Material Symbols: Sharp 用のベース */
/* line 106, common.scss */
.material-symbols-sharp { font-variation-settings: 'FILL' 0, 'wght' 100, 'GRAD' 0, 'opsz' 24; }

/* line 107, common.scss */
.material-symbols-sharp.fill { font-variation-settings: 'FILL' 1, 'wght' 100, 'GRAD' 0, 'opsz' 24; }

/* line 108, common.scss */
.material-icons { font-family: 'Material Icons'; font-weight: normal; font-style: normal; font-size: 24px; /* Preferred icon size */ display: inline-block; line-height: 1; text-transform: none; letter-spacing: normal; word-wrap: normal; white-space: nowrap; direction: ltr; /* Support for all WebKit browsers. */ -webkit-font-smoothing: antialiased; /* Support for Safari and Chrome. */ text-rendering: optimizeLegibility; /* Support for Firefox. */ -moz-osx-font-smoothing: grayscale; /* Support for IE. */ font-feature-settings: 'liga'; }
