@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;0,800&display=swap');
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");
/*reset*/
*:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg *,symbol *)){all:unset;display:revert}*,*::before,*::after{box-sizing:border-box}a,button{cursor:revert}ol,ul,menu{list-style:none}img{display: block;}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert}::placeholder{color:unset}::marker{content:initial}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable="false"])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable="true"]){-webkit-user-drag:element}:where(dialog:modal){all:revert}h1,h2,h3,h4,h5,ul,ol{margin: 0;padding: 0;}
/*reset end*/
:root {--color-black1: #444;--color-black2: #231d1a;--color-braun1: #664a3c;--color-braun2: #eae5da;--color-braun3: #a48b78;--color-braun4: #604c3f;--color-red1: #b00101;--color-yellow1: #ffe200;}
body,html {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
body {font-size: var(--fontsize-16);line-height: 1.5;overflow-x: hidden;position: relative;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;font-feature-settings: "palt";}
img {width: 100%;height: auto;display: block;}
body,a {color: var(--color-black1);}
a {display: block; text-decoration: none; }
ul {list-style: none; }
h1,h2,h3,h4,div,p,ul,li,a,span,p,th,td {font-weight: normal;box-sizing: border-box;}
input:focus {outline: none;}
iframe {border: none;}
select {outline: none;}
figure {position: relative;}
#toTop {display: block;width: 3.5em;height: 3.5em;border-radius: 50%;background: var(--color-braun1);position: fixed;right: 1.5em;bottom: 1.5em;z-index: 1000;opacity: 0;transition: 0.4s;}
#toTop::after {display: block;content: '';width: 1em;height: 1em;border-right: 1px solid #fff;border-bottom: 1px solid #fff;position: absolute;top: 50%;left: 50%;pointer-events: none;transform:translate(-50%, -25%) rotate(-135deg);}
body.scrolled #toTop {opacity: 1;}
.btn {transition: 0.4s; }
.pc {display: block !important;}
.sp {display: none !important;}
br.sp {line-height: 0;}
.gothic {font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;}
.mincho {font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;}
.inter {font-family: "Inter", sans-serif;}
.garamond {font-family: 'EB Garamond', serif;}
.object-fit {object-fit: cover;font-family: 'object-fit: cover;'}
.mw1700 {width: 90%;max-width: 1700px;margin: auto;}
.mw1600 {width: 90%;max-width: 1600px;margin: auto;}
.mw1500 {width: 90%;max-width: 1500px;margin: auto;}
.mw1400 {width: 90%;max-width: 1400px;margin: auto;}
.mw1300 {width: 90%;max-width: 1300px;margin: auto;}
.mw1200 {width: 90%;max-width: 1200px;margin: auto;}
.mw1100 {width: 90%;max-width: 1100px;margin: auto;}
.mw1000 {width: 90%;max-width: 1000px;margin: auto;}
.mw900 {width: 90%;max-width:  900px;margin: auto;}
.mw800 {width: 90%;max-width:  800px;margin: auto;}
.mw700 {width: 90%;max-width:  700px;margin: auto;}
.mw600 {width: 90%;max-width:  600px;margin: auto;}
.mw500 {width: 90%;max-width:  500px;margin: auto;}
.loader-wrap {position: fixed;display: flex;align-items: center;justify-content: center;width: 100%;height: 100%;background: #fff;z-index: 10001;}
.loader,.loader:after {border-radius: 50%;width: 7em;height: 7em;}
.loader {margin: 60px auto;font-size: var(--fontsize-10);position: relative;text-indent: -9999em;border-top: 0.5em solid rgba(0,121,51, 1);border-right: 0.5em solid rgba(0,121,51, 1);border-bottom: 0.5em solid rgba(0,121,51, 1);border-left: 0.5em solid rgba(0,121,51, 0.2);-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);-webkit-animation: load8 1.1s infinite linear;animation: load8 1.1s infinite linear;}
@-webkit-keyframes load8 {0% {-webkit-transform: rotate(0deg);transform: rotate(0deg);}100% {-webkit-transform: rotate(360deg);transform: rotate(360deg);}}
@keyframes load8 {0% {-webkit-transform: rotate(0deg);transform: rotate(0deg);}100% {-webkit-transform: rotate(360deg);transform: rotate(360deg);}}
.invert {filter: brightness(0) invert(1);}
figure {position: relative;}
figure figcaption {display: block;color: #fff;font-size: 10px;line-height: 1;padding: 0.3em 0.5em 0.28em;background: rgba(0,0,0,0.5);position: absolute;right: 0;bottom: 0;z-index: 100;}
.observe {opacity: 0;}
.observe.staging {opacity: 1;transition-duration: 0.1s;}
.anchor {margin-top: -4.5em;padding-top: 4.5em;}
.btn-style-01 {color: #fff;font-size: 112.5%;text-align: center;letter-spacing: 0.05em;padding: 1em 0;margin: 3em auto 0;max-width: 32em;border-radius: 0.3em;background: var(--color-black2);position: relative;}
.btn-style-01::after {display: block;content: '';width: 0.8em;height: 0.8em;background: url("../img/common/icon_arrow.svg") no-repeat center/contain;position: absolute;top: 50%;right: 0.75em;transform: translateY(-50%);pointer-events: none;}
/* ------------------------------------------------------------------- */
#globalHeader {display: none;padding: 1.75em 2.25em;position: fixed;top: 0;left: 0;right: 0;z-index: 9999;}
#globalHeader > a {width: 6em;}
footer {background: #eee;}
footer .container {display: flex;flex-wrap: wrap;justify-content: space-between;padding: 3em 0;}
footer .container .left {max-width: 40em;}
footer .container .left a {width: 13em;margin-bottom: 2.25em;}
footer .container .left p {color: #000;font-size: 75%;}
footer .container .left p + p {margin-top: 0.3em;}
footer .container .right {display: flex;flex-wrap: wrap;justify-content: space-between;max-width: 40em;}
footer .container .right nav + nav {margin-left: 4em;}
footer .container .right nav ul li + li {margin-top: 1.5em;}
footer .container .right nav ul li a {color: #000;font-size: 81.25%;}
footer .container .right nav:nth-child(1) ul li:nth-child(1) a {padding-left: 3em;position: relative;}
footer .container .right nav:nth-child(1) ul li:nth-child(1) a::before {content: "\e999";color: #007440;font-size: 220%;font-family: 'Material Symbols Outlined';font-variation-settings: "FILL" 1, "wght" 100, "GRAD" 0, "opsz" 24;position: absolute;top: 50%;left: 0;transform: translateY(-50%);}
footer .copy {color: #000;font-size: 75%;text-align: center;padding: 2em 0;border-top: 1px solid #fff;}
@media only screen and (max-width: 1100px) {
}
@media only screen and (min-width: 768px) {
  a[href*="tel:"] {pointer-events: none;cursor: default;text-decoration: none;}
  .btn:hover {opacity: 0.7;transition: 0.4s;}
  footer .container .right nav ul li a:hover {text-decoration: underline;}
}
@media only screen and (max-width: 767px) {
  .pc {display: none !important;}
  .sp {display: block !important;}
  .anchor {margin-top: -3em;padding-top: 3em;}
  .btn-style-01 {margin-top: 1.5em;}
  body {font-size: 3.6vw;}
  #globalHeader {padding: 1em;}
  footer .container {width: 100%;padding-bottom: 0;}
  footer .container .left {width: 100%;max-width: 90%;margin: 0 auto;}
  footer .container .left a {width: 60%;margin-bottom: 2em;}
  footer .container .left p {font-size: 81.25%;}
  footer .container .right {display: block;width: 100%;max-width: 100%;margin-top: 2em;}
  footer .container .right nav {padding: 1.5em 5vw;border-top: 1px solid #fff;}
  footer .container .right nav + nav {margin: 0;}
  footer .container .right nav ul li a {font-size: 100%;}
}
@media (orientation: landscape) and (max-width: 767px){}